Vor gut einem Jahr hatten wir Ihnen die Version 2.12 des Resource Masters (RSM) vorgestellt, der noch den Shareware-Status hatte.
Nun ist aus dem damals schon sehr leistungsfähigen ResourceEditor ein kommerzielles Produkt geworden, das mit innovativen Funktionen auf den Markt kommt.
Die wichtigste Neuerung ist mit Sicherheit die Unterstützung von MultilayerResourcen, einem neuartigen Verfahren, mit dem es möglich ist, in einer Resource-Datei verschiedene Sprachebenen (engl. Layer) abzuspeichem. Doch was kann man damit anfangen?
Stellen Sie sich folgende Situation vor: Sie haben ein GEM-Programm geschrieben und dafür eine Resource-Datei erstellt, die alle möglichen Daten des Erscheinungsbilds Ihres Programms beinhaltet wie Dialoge, Icons, Meldungen usw. Die Text-Objekte haben Sie in einer bestimmten Sprache verfaßt, z.B. auf Deutsch. Nun möchten Sie oder ein ausländischer Softwarevertrieb Ihr Programm in anderen Sprachen anbieten. Dafür mussten Sie bisher eine Kopie der Original-Resource erstellen und diese nachher übersetzen (lassen). Diesen Schritt musste man dann bei jeder neuen Version Ihres Programms wiederholen, da die Resource-Datei zwischen zwei Programmversionen selten gleich bleibt, es kommen neue Dialoge hinzu, die Anordnung oder die Reihenfolge der Objekte wird verändert.
Eine andere Möglichkeit war, alle Resourcen quasi gleichzeitig zu verändern, wobei bei dieser Technik schnell Fehler passieren konnten. Und genau bei dieser Problematik setzt das Multilayer-Verfahren des ResourceMasters an. Beim Erstellen einer Resource können Sie nun verschiedene Layer anlegen (siehe Bild 2). Sobald eine Resource mehr als ein Layer beinhaltet, bekommen alle Objekt-Editier-Dialoge ein neues Popup (siehe Bild 3), womit sich die verschiedenen Layer auswählen lassen. Die Resource-Texte von neuen Layern sind zunächst mit denjenigen des Haupt-Layers identisch, bis man sie explizit verändert. Sie können nun Objekte verschieben und umsortieren; die Änderungen sind dann für alle Layer gültig, allein die Texte und die Position der Shortcut Unterstriche von MagiC-Objekten (ob_state-Bits 8-11) werden für jeden Layer separat abgespeichert. Wenn Sie nun die Resource erweitert oder verändert haben, muss der Übersetzer nur die neu hinzugekommenen Objekte übersetzen, der Arbeitsaufwand ist somit minimal.
Erstaunlicherweise werden alle Layer in der eigentlichen Resource-Datei gespeichert, nicht in einer separaten Datei. Wird eine Multilayer-Resource-Datei von einem Anwenderprogramm geladen, so erkennt das AES nur den ersten Layer, die restlichen werden ignoriert. In RSM lässt sich dann über den Menüpunkt (Sichern unter...) das Layer auswählen, das exportiert werden soll. Bei Resourcen mit vielen Sprachen ist der Export von allen Layern ziemlich mühsam, die nächste RSM-Version wird aber ein automatisches Abspeichern aller Layer in separaten Resource-Dateien ermöglichen.
Wenn von einer Resource bereits verschiedene Sprachversionen existieren, können mit Hilfe des mitgelieferten Programms Resource Text Replacer (RTR) die verschiedenen Recourcen zu einer Multilayer-Resource zusammengefügt werden. Dabei werden alle Texte einer Resource in eine ASCII-Datei exportiert, die erstellten RTR-Dateien können dann Layer für Layer in eine Multilayer-Resource importiert werden.
RSM 3.0 erscheint jetzt im gewohnten MagiC-Look und kommt nun auch endlich mit proportionalen Systemfonts zurecht, die hauseigenen Objekte werden nur noch unter TOS oder N.AES eingesetzt. Die Edit-Felder beherrschen Copy/Paste über das GEM-Klemmbrett, auch unter SingleTOS!
Eine weitere Neuerung ist die Unterstützung von Unterprogrammen (Overlays) für die Darstellung von benutzerdefinierten Objekten. Benutzt ein Programm solche Objekte, sogenannte Userdefs, so kann RSM mit Hilfe des Overlays die Objekte genauso darstellen, wie sie später im Programm erscheinen werden, und zwar im Editiermodus, nicht in einem Prcviewmodus. Es ist ausführlich beschrieben, wie solche Overlays programmiert werden müssen.
Ferner kann RSM eine externe Resource als Toolbox benutzen (schon ab der Version 2.2). Das bedeutet, dass Sie häufig benutzte Objekte, wie z.B. MagiC-Gruppenrahmen oder Titelobjekte, selbst in die Toolbox einpflanzen können. Beim Einfügen von neuen Objekten in einen Objektbaum kann man direkt auf solche Objekte zugreifen, ohne jedesmal die Status-Bits editieren zu müssen.
Weitere angenehme Features sind die automatische Shortcut-Positionierung in den Menüs und die Option "MagiC Buttons". Letztere bietet die Möglichkeit, die Tastatur-Shortcutposition bequem mit vorangestellter eckiger Klammer zu setzen. RSM aktiviert dann die entsprechenden ob state-Bits automatisch. Wenn Sie Näheres über MagiC-Objekte erfahren wollen, dann sollten Sie unseren Artikel "Atari-Insider: Magische Knöpfe" der Ausgabe 12/98 nachlesen.
Der Icon-Editor ist nur wenig überarbeitet worden, er war in der Version 2.12 schon ziemlich ausgereift. Neu ist die nützliche Blockfunktion. Dagegen wird beim Import von Farbbildern die Palette von XIMG-Bildern immer noch nicht ausgewertet. Das bedeutet, dass Farbbilder zunächst an die aktuelle Farbpalette angcpaßt werden müssen (Graftool macht das sehr gut), bevor sie in RSM importiert werden. Die nächste RSM-Version wird jedoch die Palette auswerten und die Farben an die aktuelle Palette anpassen können.
Die Möglichkeit, Resourcen als C-, Pascal- oder Assembler-Sourcen exportieren zu können, wurde in RSM 3.0 noch nicht eingebaut. Ein solcher Export ist aber unverzichtbar, wenn Resource-Daten direkt in die Programmdatei eingebaut werden müssen. Für CPX-Module ist diese Vorgehensweise obligatorisch, externe Resource-Dateien dürfen hier nicht geladen werden.
Auch fehlt eine Preview-Funktion für Dialoge und Menüs. Es wäre manchmal durchaus praktisch, wenn Menü- und Objektbäume testweise vom System angezeigt werden könnten, um die Funktionalität (teilweise) testen zu können.
Eine manchmal ganz nützliche Funktion, die andere Resource-Editoren bieten, ist die Möglichkeit, G_STRING- in G_TEXT-Objekte oder auch G_IMAGE in G_ICON-Objekte oder umgekehrt umzuwandeln. Das geht mit RSM noch nicht.
Der Resource Master 3.0 ist ein sehr gelungenes Produkt, das mit dem Einzug der Multilayer-Technologie die Verwaltung von Programmen in mehreren Sprachen gewaltig erleichtert. Zudem ist das Programm intuitiv bedienbar, sehr stabil, perfekt in GEM eingebunden und läuft auf allen TOS-Systemen problemlos. Einzig den fehlenden Export von Resourcen im C- oder Pascal-Format könnten einige Programmierer vermissen, doch auch dieses Manko wird mit Sicherheit in späteren Versionen behoben sein, da RSM kontinuierlich weiterentwickelt wird. RSM 3.0 ist allen Programmierern und anderen Resource-Designern sehr zu empfehlen.
Bezugsquelle: Application Systems Heidelberg Postfach 102646 D-69016 Heidelberg
Programmautor: Armin Diedering - http://www.diedering.de/
Literaturhinweis: ST-Computer 4/98, Seite 24 Thomas Göttsch "Resource Master 2.12"