Quelle: DOS-Trend, Ausgabe 33, Seiten 62/63

Graphics Vision

Windows ohne Windows

Bei vielen ProgrammiererInnen, die die Produkte von MKM-Software schon kennen, wird die einfache Ankündigung von Graphics Vision 2.10 schon Begeisterungsstürme hervorrufen. Für alle anderen muß das wohl näher erläutert werden.

Graphics Vision (GV) ist eine Objekthierarchie zur Erstellung von Programmen mit grafischer Benutzeroberfläche. Das klingt zunächst nicht besonders spannend. Für Programme, die unabhängig von einem grafischen Betriebssystem (-aufsatz) laufen, gibt es aber kaum etwas Besseres als GV.

Die meisten Toolboxen für Grafikprogrammierung glänzen vor allen Dingen durch ihre Kompliziertheit. MKM-Software versucht mit GV den Einstieg gleich an mehreren Stellen zu erleichtern. Der erste und wichtigste Punkt: GV ist vollständig und konsequent objektorientiert und benutzt die gleiche Objekthierarchie wie Turbo Vision 2.0 (TV). Damit fühlt sich jeder, der schon einmal ein TV-Programm geschrieben hat, in GV sofort zuhause. Bestehende TV-Programme können sehr leicht nach GV portiert werden. Das geht auch schrittweise, da GV eine Turbo-Vision-Emulation beinhaltet. Als Demonstration dafür wurde der Turbo-Vision-File-Manager, eines der komplexeren Beispielprogramme von Borland, teilweise nach GV portiert.

GV kommt (leider nur) in der Vollversion mit einer in der IDE zulinkbaren Hilfe (.TPH), so daß beim Programmieren jederzeit Informationen zu allen GV-Objekten, Routinen und Konstanten verfügbar ist. In der Shareware-Version muß man sich mit der Dokumentation in einzelnen Textdateien behelfen, aber wer GV wirklich nutzen möchte, wird sowieso die Vollversion kaufen. Die enthält dann auch sämtliche Units im Quelltext, auch die Assembler-Includes und noch ein paar Bonbons, wie z.B. das "Windows Clipboard für DOS"-Paket. Intern sind zu den bekannten TV-Objekten noch eine ganze Reihe neuer, sinnvoller Erweiterungen hinzugekommen. Tabellendarstellung und Karteikasten, Listen mit grafischem Inhalt, Buttons mit Bildchen, Meldungsfenster mit Icon und frei wählbarem Titel und vieles mehr. Die mit GV erzeugten Programme zeichnen sich durch gewohnte und leichte Bedienbarkeit aus. Die jeweils besseren Eigenschaften der unterschiedlichen Vorbilder wurden implementiert. Fenster können z.B. anders als in TV an allen vier Ecken und Seiten in der Größe verändert werden, der Mauszeiger wechselt jeweils seine Form, um anzuzeigen in welche Richtung. Die aus den besseren Windows-Programmen bekannten "Flying Hints", kurze Hinweistexte, die am Mauscursor erscheinen, wenn man diesen auf einem Menüpunkt oder Dialogelement eine bestimmte Zeit nicht bewegt, sind genauso möglich, wie die aus TV bekannte, bedienbare Statuszeile. Dazu kommen noch einige Besonderheiten, die bei keinem der Vorbilder zu finden sind, wie z.B. teilweise durchsichtige "Fenster" (die Augen sind so eins).

Ein weiterer großer Vorteil bei GV-Programmen ist die schnelle Grafikausgabe. GV arbeitet normalerweise mit eigenen, hochoptimierten Grafikroutinen, nicht mit Borlands BGI-Paket. Trotzdem kann man darauf zurückgreifen und BGI-Treiber und Funktionen benutzen, falls das nötig werden sollte. GV selbst unterstützt neben Standard-VGA auch die VESA-Modi mit 16 und 256 Farben. Eine ausgefeilte Pufferung, das "Metafile"- und Sichtbarkeits-Konzept, sorgen dafür, daß sogar auf einem 486er (66MHz) Fenster ganz passabel mitsamt Inhalt verschoben werden können, auch vor einem Hintergrundbild. Das ist sonst erst in OS/2 mit dem NPS-Enhancer oder in Windows NT möglich. Was aber GV so einzigartig macht, ist die Integration von Windows-Ressourcen. Nicht nur die im letzten Artikel vorgestellte Einbindung von Windows- und Truetype- Fonts ist enthalten, sondern auch die Verwendung von Windows- Dialogfenstern, Paletten, Icons, Bitmaps, Stringtables etc. Diese Ressourcen können im Resource Workshop entworfen werden, auch mit den hübscheren, bunten "Borland Windows Custom Controls" (BWCC). GV lädt sie, z.B. auch aus einer DLL- oder EXE-Datei, und kapselt sie so, daß sie im gewohnten GV- (oder TV-) Stil benutzt werden können. Daneben wird das TV-Ressource- Format ebenso unterstütz, wie auch der TV-Hilfecompiler. Die Verwendung von Windows-Ressourcen beseitigt gleich drei Probleme: Der Programmcode wird vom Ballast der Fenstergestaltung befreit und damit kleiner und übersichtlicher. Das nervtötende Entwerfen von Dialogboxen auf Millimeterpapier entfällt komplett, stattdessen können die Fenster oft sogar nachträglich geändert werden, ohne das Programm neu kompilieren zu müssen. Und dank dem Resource Workshop kann das alles mit einem sehr komfortablen Werkzeug erledigt werden, das zusammen mit dem ohnehin erforderlichen BP7 eh schon vorhanden ist.

Das alles wird in einem sehr schönen und witzigen Demoprogramm vorgeführt, das wahlweise mit deutscher oder englischer Benutzeroberfläche gestartet werden kann und so auch die verbesserte Sprachunterstützung zeigt. Dort können nicht nur die Dialogelemente von GV bewundert werden, sondern auch ein paar Spezialitäten und nette Spielereien. Das Gespenst z.B. kann mehrfach gestartet und, mit einem Mausklick darauf, auch wieder eingefangen werden. Begegnen sich zwei Gespenster, zeugen sie neue, so daß man ihnen bald nicht mehr Herr wird. Die Augen beobachten die Maus, und die Uhr kann in ihrer Digitalversion auch mit Windows-Schriften betrieben werden (lokales Menü mit rechter Maustaste), die zudem noch dreh- und kippbar sind.

Der Desktop kann nicht nur mit einem beliebigen Bitmap gekachelt, sondern auch als virtueller Desktop auf mehrfache Bildschirmgröße gebracht werden. Ein kleines Fenster, das sich (fast) immer mit der rechten Maustaste aktivieren läßt, hilft beim Navigieren auf der vergrößerten Fläche.

DOS-Trend Kurzinfo

Programm: Graphics Vision 2.10
Referenznummer: SW3761D
Autor: MKM-Software, Magdeburg
Kurzbeschreibung: Turbo-Vision-kompatible Objekthierarchie zur Entwicklung grafischer Benutzeroberflächen, sehr schnelle Grafik, Benutzung von Windows-Ressourcen und -Fonts.
Konfiguration: Beliebiger PC, Festplatte, Windows (für den Resource Workshop und die Fonts), Borland Pascal 7
Preis der Vollversion: Real Mode: 90,-DM, Real Mode + DPMI: 120,-DM
Unterschiede Shareware/Vollversion: Vollversion mit TPH- Hypertext-Hilfe, vollständigem Quelltext und einigen Extras.


Autor des Artikels: Erik Krause (ekrause@ruf.uni-freiburg.de)