Entwicklung grafischer Benutzeroberflächen Große GUI-Vielfalt bei kleinem Footprint

GUIX erzeugt ressourcenschonende Bedienoberflächen
GUIX erzeugt ressourcenschonende Bedienoberflächen

Das neue Grafik-Framework GUIX von Express Logic erzeugt Smartphone-ähnliche Benutzeroberflächen. Der Entwickler kann die Oberfläche in einem grafischen Editor entwerfen – den Code erzeugt das Tool.

Express Logic – bekannt für sein schlankes Echtzeit-Betriebssysteme »ThreadX« – bringt ein neues Produkt auf den Markt: GUIX, ein Framework für die Entwicklung grafischer Benutzeroberflächen (Graphical User Interface – GUI). GUIX ist eine wenig Platz und Verarbeitungsaufwand beanspruchende Laufzeit-Engine und ein Entwicklungs-Tool und generiert automatisch Code für eingebettete Systeme mit grafikfähigem Display. GUIX vereinfacht die GUI-Entwicklung und ist für die 32-Bit Mikrocontroller- und Mikroprozessor-Architekturen von ARM (Cortex-M3, -M4, -A8 und -A9) in medizinischen Geräten, Konsumgüter-Elektronik und industriellen Steuerungen ausgelegt.

Bestandteil von GUIX ist eine komplett ausgestattete Grafikbibliothek mit vollständiger Integration in ThreadX – ein Echtzeit-Betriebssystem, das mittlerweile in mehr als 1,5 Milliarden Geräten läuft. Ebenso wie ThreadX erzielt auch GUIX ein hohes Performance-Niveau in eingebetteten Applikationen mit kleinem Footprint. GUIX ist dafür konzipiert, die wachsende Nachfrage nach dynamischen Benutzeroberflächen mit überschaubaren Hardware-Ressourcen zu erfüllen. GUIX wird mit dem kompletten ANSI-C-Quellcode ausgeliefert und kann ohne Laufzeitgebühren genutzt werden.

Dank der explosionsartig gewachsenen Möglichkeiten, die mit den Smartphones Einzug hielten, haben sich GUIs auch in Medizintechnik-, Konsumgüter- und Industrie-Anwendungen durchgesetzt. Als Konsequenz hieraus werden fortschrittliche Tools gebraucht, mit denen sich solche Benutzeroberflächen einfacher entwickeln lassen. Die meisten Embedded-System-Programmierer sind keine Display-Experten und deshalb wenig geneigt, diese Displays im Detail zu programmieren, was das Konstruieren individueller Grafiken und Objekte (Widgets) einschließt. Um schneller auf den Markt zu kommen, greifen die meisten Entwickler deshalb auf eine Bibliothek mit Routinen zurück, die die Details der GUI verwalten. Diese Bibliotheken beschreiben die Widgets in abstrakter Form und helfen den Entwicklern damit, die Programmier-Produktivität zu steigern. GUIX gibt Entwicklern ein fortschrittliches UI-Framework und eine reichhaltige Bibliothek von grafischen Grundbausteinen in die Hand. Programmierer können die GUIX-Funktionen aus ihren C-Applikationsprogrammen heraus aufrufen. GUIX führt daraufhin alle erforderlichen Zeichenfunktionen aus, um auf LCDs mit den verschiedensten Größen und Auflösungen eine übersichtliche, interaktive Oberfläche zu produzieren.

Oberflächen entwerfen mit GUIX Studio

Designer können bei der Realisierung von GUIs mit GUIX Studio arbeiten. Diese zu GUIX gehörende PC-Applikation ermöglicht ein zügiges Prototyping von GUI-Designs nach dem WYSIWYG-Prinzip. GUIX Studio gibt Designern die Möglichkeit, Bilder, Hintergründe, Widgets und andere Elemente einer leistungsfähigen GUI auszuwählen, in das Design zu ziehen und in der Größe anzupassen. Hierfür muss keine einzige Codezeile geschrieben werden. Stattdessen generiert GUIX Studio den Code, der zur Implementierung des auf dem PC konstruierten GUI-Designs benötigt wird. Der so erzeugte Code kann anschließend in die Applikation eingefügt und vom Zielsystem verarbeitet werden.

Eine komplette GUIX-UI-Applikation wiederum lässt sich innerhalb der GUIX Studio-Umgebung auf einem PC-Desktop ausführen, was Entwicklern und Designern die Möglichkeit gibt, UI-Konzepte schnell und einfach zu generieren und zu demonstrieren, Abläufe auf dem Bildschirm zu testen und Bildwechsel und Animationen zu beobachten. Einmal fertiggestellt, kann das Design an für das Zielsystem geeignete C-Datenstrukturen exportiert werden, die sich anschließend als Bestandteil des Projekts kompilieren und mit den GUIX- und ThreadX-Bibliotheken linken lassen.

Die integrierte Font-Generation-Funktion von GUIX Studio erlaubt es den Entwicklern, fertig gerenderte Schriftarten für ihre Applikationen zu produzieren. Die Schriften können pixelweise in 1-bit- oder geglätteten Formaten erzeugt werden, die außerdem komprimiert werden, um Platz im Zielsystem zu sparen. Die Schriften können beliebige Zeichensätze enthalten, darunter auch Unicode-Zeichen für mehrsprachige Anwendungen. Das Importieren von Grafiken aus Dateien im PNG-, JPG- oder BMP-Format und deren Umwandlung in komprimierte GUIX-Pixelmaps für das Zielsystem ist ein weiteres Feature von GUIX Studio. Viele der GUIX-Widgettypen sind überdies für die Integration selbst entwickelter Grafiken der Entwickler konzipiert, um ein individuelles ‚Look and Feel‘ zu erzielen. Zusätzlich ist es den Entwicklern möglich, Anpassungen an den vorgegebenen Farben und Zeichenformaten der vorgefertigten GUIX-Widgets vorzunehmen, sodass das Erscheinungsbild von GUIX einfach individualisiert werden kann. Nicht zuletzt generiert und pflegt GUIX Studio auch Strings für beliebig viele Zielsprachen.

Preis und Verfügbarkeit

GUIX unterstützt eine ganze Reihe von Displays für ARM Cortex-A- und Cortex-M-Prozessoren sowie Plattformen anderer Hersteller von 32-bit-Prozessoren. GUIX Studio ist für PCs mit Windows 7 und Windows 8 verfügbar. GUIX und GUIX Studio werden gemeinsam zu Preisen ab 12.500 US-Dollar lizenziert.