Entwicklertool ACS: GEM für alle!

In Zukunft gibt es keine Ausrede mehr: Ataris graphische Benutzeroberfläche GEM ist sicherlich nicht einfach zu programmieren — mit ACS allerdings, dem »Application Construction System«, kriegen selbst Einsteiger komplexe Oberflächen spielend in den Griff.

Ein Wermutstropfen vorweg: Momentan läuft ACS nur in Verbindung mit einem »Pure-(bzw. Turbo) C «-Compiler. Laut Maxon sind Pascal-Versionen zwar in Vorbereitung, konkrete Termine waren allerdings nicht zu erfahren.

Mit ACS ist der Programmierer in der Lage, unwahrscheinlich schnell und rationell hochmoderne Anwendungen zu produzieren. Der objektorientierte Programming-Constructor übernimmt die zeitaufwendige Organisation der gesamten GEM-Oberfläche und einiges dazu.

Lange Zeit programmierten Atari-Entwickler reihenweise an GEM vorbei. Da nutzten einige nur Dialoge, andere verzichteten gar vollständig auf den grafischen Environment-Manager und wieder andere programmierten zum großen Teil gleich ganz im Alpha-Mode; jeder kochte sein eigenes Window-Süppchen.

Viele Atari-Fans stellen sich die Frage: »Was ist denn eigentlich das große Geheimnis von Apple-Macintosh? Warum klappt dort all das hervorragend, was am Atari so schwer scheint? Sind Atari-Entwickler etwa weniger diszipliniert?« Sicher, Apple hat seine Systemroutinen sorgfältig dokumentiert und veröffentlicht; zudem schreibt Apple auch die Betreuung seiner Programmierer ganz groß. Außerdem ist das gesamte Betriebssystem »MacOS« von Grund auf bereits objektorientiert konzipiert — alles Gründe, weshalb schon sehr früh komfortable Entwicklerpakete auf dem Mac-Markt zu finden waren.

GEM dagegen ist zugegebenermaßen nicht ganz so elegant gelöst. Ein wichtiger Teil des Betriebssystems — nämlich GDOS, u.a. verantwortlich für die Organisation verschiedener Fonts — wurde aus Platzgründen kurzerhand ausgelagert und deshalb wohl vom Großteil der Anwender bis heute nicht so recht akzeptiert. Doch damit nicht genug: Programmieren in GEM gerät mitunter zur wahren Sisyphus-Arbeit. Da ist der Programmierer beispielsweise für den Fensterinhalt selbst verantwortlich und muß für ständige Aktualisierung sorgen.

Genau hier setzt ACS an: Das Application Construction System betrachtet Programm und Fenster als gleichwertig. Fenster sind kleine Applikationen, die gewisse Leistungen anbieten. Dabei können praktisch beliebig viele Fenster gleichzeitig geöffnet sein. Ein Window kann das andere erzeugen oder von Dritten Daten abfragen. Im Gegensatz zum GEM-Fenster können ACS-Windows auch im Hintergrund arbeiten und müssen nicht immer sichtbar sein. Mit einem Editor lassen sich in Windeseile Menüs samt Tastenkürzel definieren. Der Anwender verknüpft lediglich einen Menü-Eintrag mit dem Namen der passenden Anwenderroutine. Genauso kann man jedem beliebigen Objekt Tastaturkürzel und Routinen zuordnen.

Cursor-Repertoire aus einer Calamus-RCS-Datei
ACS-Editor mit seinen Subeditoren
Bestimmt Werte und Verhalten der Startphase
Editor für Boxen und Texte

Objekte unterteilt ACS in »ziehbare« und »annehmende« Varianten. Die ziehbaren beinhalten weitere Informationen. Dabei wird das Objekt näher spezifiziert. Ein Bonbon für Anwender: Wird die Maus über ein gezogenes Element geführt, verwandelt sich der normale Pfeil in ein beliebig definierbares Symbol. Das erleichtert dem Benutzer die optische Statuskontrolle. Hinter annehmbaren Objekten stehen Routinen, die die übergebenen Daten oder Objekte weiter bearbeiten.

Fenster sind Applikationen gleichgestellt

Über ein spezielles Nachrichtensystem verschicken Fenster und Objekte »Messages« und kommunizieren so miteinander. Da gibt es vordefinierte Nachrichten für Standardaufgaben, z.B. zum Aufräumen nach dem Schließen eines Windows oder Aktualisieren des Fensterinhalts nach Ziehen eines Objekts. In eigenen Programmen definiert der Entwickler die entsprechenden Messages nach Bedarf selbst.

Im Mittelpunkt jeder Applikation steht das Root-Fenster. Es ist das erste Fenster, das automatisch beim Starten Ihrer Applikation erzeugt wird. Für das System hat dies eine besondere Bedeutung. Es bietet ein generisches Desktop, das bei jedem Programm identisch ist und seine gesamten Fähigkeiten, wie bei OOPS (objektorientierten Programmiersprachen) üblich, an seine Nachkommen vererbt. Standardoperationen wie Löschen, Fenster wechseln, Beenden, Scrollen, Fensterinhalte auffrischen, beherrschen ACS-Windows somit automatisch. Wer schon immer neidisch ins Macintosh-Fenster geschielt hat, darf sich freuen: Hierarchische Popup-Menüs, Check- und Radiobuttons, in jedem Fenster eine eigene Menüleiste, das alles können auch Sie mit Ihrem Atari jetzt mühelos realisieren.

Zu jedem Objekttyp erscheint ein passender Editor

Gearbeitet wird hauptsächlich im graphischen ACS-Editor. Er präsentiert sich nach kurzer Ladezeit mit einer knappen Menüleiste und drei Icons. Rechts unten ein Papierkorb, knapp darüber sein Gegenpart mit der Bezeichnung »Neu«. Dahinter verbirgt sich eine Doppelfunktion: Sie erstellt entweder neue Applikationen oder lädt bereits existierende. Auf einen Doppelklick erscheint eine Detailauswahlbox. Wird keine Dateiendung eingegeben, schreibt bzw. liest der Editor ACS-Format. Außerdem sind »RCS«-Dateien möglich.

RCS-Datei möglich

Geben Sie einen neuen Dateinamen ein, öffnet der Editor seine Mainpage »Generelles«. 14 Subeditoren, jeweils symbolisiert durch ein aussagekräftiges Icon, übernehmen die Detailarbeiten. Wollen Sie für Ihre Applikation z.B. ein neues Fenster kreieren, so öffnet der Fenster-Editor auf einen Doppelklick seine Teileliste: Hier definieren Sie Positionen, Rasterung und andere grundsätzliche Eigenschaften wie Fenstertext oder etwa die Erscheinungsform der Rollbalken. Bereits vorbereitet sind sämtliche Standardroutinen wie Öffnen, Schließen, Neu etc.. Soll die entsprechende Funktion spezielle Aufgaben ausführen, so tragen Sie einfach den Namen der eigenen Prozedur ein.

Ähnlich arbeitet auch der Editor für Menüs, Popups, Alert-Boxen und User-definierte Objekte. Graphischorientiert sind die Editoren für Bilder, Mauszeiger und Icons. Vorbereitete Grafiken im »IMG«-Format, wie sie z.B. STAD erzeugt, lassen sich dabei einlesen. Der Text-Editor für frei positionierbare Nachrichten faßt sechs Zeilen 48 Zeichen. Ist genügend Platz vorhanden, wird der Text nach ganzen Wörtern umbrochen. Ihre neu definierte Oberfläche testet der Editor gleich direkt aus. Ist das Ergebnis zufriedenstellend, erzeugt ACS eine entsprechende Pure C-Datei, die schließlich zusammen mit der eigentlichen Applikation übersetzt und gekoppelt wird. Eigene RCS-Dateien sind damit nicht nötig. Sämtliche ACS-Programme sind automatisch auch als Accessory lauffähig — dazu genügt es, lediglich die Extension in ACC umzubenennen.

Bleibt zu hoffen, daß der Autor Stefan Bachert oder das Maxon-Team künftig auch noch andere Sprachen ins ACS-Konzept einbinden.

(mn)

WERTUNG

ACS

Hersteller: Stefan Bachert
Genre: Entwicklerpaket
Preis: 198 Mark
Stärken: produziert schnell und einfach GEM-Programme, objektorientiert, komfortable Editoren
Einschränkungen: läuft nur mit Turbo (Pure) C

Vertrieb: Maxon Computer, Schwalbacher Str. 52, W-6236 Eschborn


Ingrid Sitte-Nadler
Aus: ST-Magazin 04 / 1992, Seite 28

Links

Copyright-Bestimmungen: siehe Über diese Seite