GUI toolkit supports Linux
Apr 10, 2009 — by Eric Brown — from the LinuxDevices Archive — 8 viewsTES Electronics is shipping a version of its graphical user interface (GUI) toolkit for embedded Linux developers. The Guiliani HMI (human machine interface) framework for Linux supports OpenGL ES on both hardware- and software-accelerated GPUs (graphical processing units), and includes a Linux software development… kit (SDK).
(Click for larger view of a Guiliani phone menu UI running on an OMAP3x-based phone)
Designed for distributed development environments that include artists, interaction designers, and programmers, Guiliani (no relation to the former New York City mayor) is a C++ software framework enabling creation of platform independent GUI's for embedded systems. Supporting Linux, uClinux, Windows, Windows CE, QNX, NIOS II, and uCos operating systems, the toolkit is used in a variety of automotive, medical, industrial, and PND (personal navigation device) applications, says the company.
The Guiliani HMI framework supports processor platforms including Texas Instruments (TI) OMAP3x, Freescale i.MX31, ARM9, ARM11, MIPS, SH4, Intel Atom, TI C64x DSP, and Altera FPGA with NIOS, says the company. Designed to support the Model View Controller approach to design, in which business logic is separated from UI, the framework is said to support creation of GUIs on rendering back-ends including OpenGL, OpenGL ES, SDL, DirectFB, GDI, and framebuffer devices.
More Guiliani UIs from OMAP3x phone demo
(Click on either to enlarge)
The central component of the Guiliani HMI framework is the Guiliani Stream Editor (GSE), a WYSIWYG tool developed with the Guiliani SDK. The editor provides features including Unicode fonts, XML streaming, animation, and widgets editing. Other features are said to include an attribute editor, guides, image/resource manager, and “Photoshop-like” distributed workspace windows. Guiliani also supports features including sub-pixel rendering, alpha blending, and anti-aliasing, says the company.
The GSE runtime is said to offer a virtual machine for simulating GUI and interactions. A similar runtime simulates targets on various hardware platforms. GSE outputs resource files, including XML files, header files for C++ integration, PNG files for assets, and text and language files, says TES.
A typical workflow using Guiliani
(Click to enlarge)
According to TES, a typical workflow using Guiliani, as illustrated above, involves the following:
- An artist imports resources from PhotoBridge
- An interaction designer stitches together event based application flow
- The GSE resource generator creates XML and Resources files
- Programmer visualizes GUI interaction using these resources, plus Guiliani runtime
- Resources are imported to embedded target and visualized using runtime port
- Developer programs application logic and binds data to the GUI
- Resulting GUI displayed on the target
The SDK includes a free “PhotoBridge” tool used to export resources and specification of GUI objects in XML. PhotoBridge can export text as “real” text or as bitmaps, and lets developers visualize object hierarchy, as well as edit properties and associations, says the company.
A demonstration of the Guiliani HMI editor
Source: TES Electronics
Availability
The Guiliani suite for Linux is available now, with “flexible pricing options," says TES Electronics. The SDK and Photobridge tool are available here, and more information on Guiliani may be found here.
This article was originally published on LinuxDevices.com and has been donated to the open source community by QuinStreet Inc. Please visit LinuxToday.com for up-to-date news and articles about Linux and open source.