>>>>>> ALMA - the alertboxmaker >>>>>> >>>>>> Version 1.20 >>>>>> Handbuch vom 30.05.1991 >>>>>> >>>>>> >>>>>> Entwickelt von Marco Strehler >>>>>> >>>>>> Copyright (c) 1990/91 >>>>>> >>>>>> M. Strehler - Im Dreispitz 21 - CH-8152 Glattbrugg >>>>>> Telefon: 01 / 860 27 03 A.Inhaltsverzeichnis ==================== B.Einfhrung Die ALMA-Dateien Sinn und Funktion des Programmes Handhabung des Handbuches Erkl„rung einiger Begriffe und Ausdrcke Weiterentwicklung, Updates Technische Daten C.Men Fuji-Symbol ber ALMA die Accessorys D.Men Datei Neuladen Hinzuladen Sichern Sichern unter... Code-Ausgabe ASCII-Import ASCII-Export Beenden E.Men Bearbeiten Alertbox erzeugen Alertbox ver„ndern Alertbox suchen Alertbox l”schen Grundeinstellung F.Men Optionen Dateiinformationen Alerbox zeigen Alertbox drucken Z„hler neusetzten Ausgabeart Textersatz G.Men Parameter Einstellen SET-Datei neuladen SET-Datei speichern SET-Datei drucken H.N„heres zum Textersatz Wieso ein globaler Textersatz? Handhabung Synthax I.ASCII-Import und Export Sinn und Zweck einer I/E-Option Handhabung einer EXP-Datei Immer ntzlich: ein Beispiel J.die Vorbelegung des Schlsselbezeichners K.fr die pers”nliche Einstellung: die Programmparameter Sinn und Zweck der Parameterdateien Die einzelnen Programmparameter die SET-Dateien L.Beispiele fr die Verwendung von ALMA Beispiele in C Beispiele fr Pascal M.Der Finger am Drcker: die Tastenbefehle B.Einfhrung ============ Die ALMA-Dateien ---------------- Zum Programm ALMA geh”ren folgende Dateien: ALMA.PRG Das eigentliche Programm. Aus dem Atari-Desktop wird es durch Doppelklick auf das Programmsymbol gestartet. Das Programm besitzt, trotz Programmierung unter GEM, keine externe Resource- Datei (*.RSC). ALMA.SET Datei, die die Programm-Parameter fr ALMA enth„lt. Um beim Programmstart geladen zu werden, sollte sich diese Datei im gleichen Ordner wie das Programm befinden. BEISPIEL.ALM Eine Daten-Datei fr ALMA (erkennbar an der Extension *.ALM). ALM-Dateien haben ein eigenes Datenformat und k”nnen nur sinnvoll mit dem ALMA- Programm verwendet werden. Diese Datei dient als Beispiel. BEISPIEL.EXP Eine Export/Import-Datei von ALMA. Diese Datei kann mit einem Texteditor geladen und weiterverwendet werden. Weitere Hinweise entnehmen Sie diesem Handbuch. HANDBUCH.TXT Eine ASCII-Textdatei zur Erl„uterung des Programmes. LIES.DAS Eine kleine Textdatei mit Angaben ber kurzfristige Žnderungen des Programmes, die noch nicht im Handbuch vermerkt wurden. Bitte vor dem ersten Programmstart lesen! SET_FILE Ein Ordner mit weiteren SET-Dateien fr verschiedene Ausgabeformate. Sinn und Funktion des Programmes -------------------------------- Das Programm ALMA (von ALertbox-MAker) ist ein Programmierer-Tool um die -wie es der Name schon sagt- Herstellung von sogenannten Alertboxen bei der Programmierung einer GEM-Umgebung auf einem ATARI ST oder TT zu vereinfachen. Wie Sie wissen, ist die Handhabung von Alertboxen in einem Programm prinzipiell kein Problem. Man bergibt einer GEM-Routine ganz einfach eine Zeichenkette, die einer gewissen Syntax gehorchen muss, und behandelt dann den Rckgabewert. Die Probleme tauchen erst auf, wenn diese Zeichenketten sehr lang werden oder man die Alertbox-Texte global „ndern will, um sie in eine andere Sprache zu bersetzten. Das erste Problem kann angegangen werden, indem man a) ungeniert die m”gliche Zeilenl„nge eines Quelltextes ausntzt und die Unsch”nheiten beim Editieren und Ausdrucken in Kauf nimmt, b) die Zeilen mittels Programm-Funktionen zusammenfgt (strcat in C oder CONCAT bei Pascal) oder c) ALMA verwendet und der Alertbox-Routine nur noch einen kurzen Schlsselbezeichner bergibt. Im Falle der Portierung sind zwei L”sungen denkbar: a) man durchforstet alle seine Quelldateien (die besonders bei Modula und C sehr zahlreich sein k”nnen) und nimmt die jeweiligen Žnderungen von Hand vor oder b), man „ndert mit ALMA die betreffenden Boxen in einem Sitz und l„sst sich eine neue, fertige Quelldatei ausgeben. Handhabung des Handbuches ------------------------- Entweder lesen Sie gerade die Datei HANDBUCH.TXT, die dem Programm ALMA beiliegt, oder Sie sind der stolze Besitzer des gedruckten Manuals, das Sie fr sFr/DM 20.- neben der neusten Programmversion beim Autor beziehen k”nnen. Der Inhalt entspricht sich etwa, beim gedruckten Manual haben Sie aber einige bibliografische Annehmlichkeiten wie Index, Seitenzahlen und einen bebilderten Anhang. Der Aufbau ist aber identisch: die ersten Kapitel nach der Einfhrung behandeln die einzelnen Programmbefehle, nach ihrem Eintrag im Men gegliedert. Das ist deshalb sinnvoll, weil selbiges ja schon m”glichst zweckorientiert gegliedert wurden. Es war aber notwendig, einige umfangreichere Funktionen von ALMA noch bergreifend zu erl„utern. Aus diesem Grund finden Sie anschliessend an die Menbeschreibung noch weiterfhrende Kapitel. Der Abschluss des Manuals bildet eine Zusammenstellung der Tastenbefehle, ein Index nebst einem illustrierten Anhang (letztere beiden nur beim gedruckten Handbuch). Erkl„rung einiger Begriffe und Ausdrcke ---------------------------------------- Hier sollen einige sprachliche Gepflogenheiten, die in diesem Handbuch vorkommen erkl„rt werden, um m”gliche Missverst„ndnisse im Voraus auszuschliessen. Streng genommen ist ALMA eine kleines Datenbank-Programm. Eine Datenbank behandelt eine Datei in Form einzelner Datens„tze. Der Witz von ALMA ist nun, dass es die Informationen, die es braucht um eine GEM-Alertbox zu basteln genau wie Datens„tze behandelt. Ich verwende in diesem Handbuch aus diesem Grund die beiden Begriffe Datensatz und Alertbox synonym. Die Alertbox wird im deutschsprachigen Bedienungshandbuch als Warnfeld bezeichnet. Bitte seien Sie mir nicht b”se, wenn ich weiterhin den englischen Ausdruck benutze. Des Weiteren verwende ich anstelle des Begriffes Ausgangsfeld bei den Dialogfeldern auch das Wort Button. Dafr habe ich mich erfrecht gerade anstelle des Begriffs Dialogfeld auch manchmal den Ausdruch Formular zu nehmen. Wenn Sie bei Begriffen wie Dialogfeld, Men, Ausgangsfeld usw. jetzt nur noch Sackbahnhof verstehen, dann empfehle ich Ihnen, doch bitte noch schnell ins Bedienungshandbuch ihres ST oder TT zu schauen! Weiterentwicklung, Updates -------------------------- Es gibt kein Programm ber 3 Programmzeilen, das nicht einen Fehler enth„lt, soll ein weiser Programmierer einmal gesagt haben. Auch ALMA ist natrlich weit von der Vollendung oder der angestrebten Ausgereiftheit entfernt. Bei einem Echo von Seiten der Bentzer bin ich sehr motiviert, dass Programm laufend zu entlausen und weiterzuentwickeln. Ich bin auch bereit, das Programm an Farbmonitoren anzupassen, wenn dieses Bedrfnis vorhanden ist. Problem: Ich habe aber leider keinen solchen. Wenn jemand im Raume Zrich den seinen fr ein/zwei Wochen entbehren k”nnte, w„re es aber zu machen. Also: Kritik, Anregungen, Hinweise auf Fehler oder sonst ein Echo bitte an: Marco Strehler, Im Dreispitz 21, 8152 Glattbrugg (Schweiz) Tel: 01 / 810 28 03 (abends) Technische Daten ---------------- aktuelle Version: 1.200 Entwicklungssystem: Laser-C von Megamax Entwicklungszeit: November 1990 - Juni 1991 (nebenamtlich) Quellcode: ca. 185'000 Bytes verteilt auf 16 Quell- Dateien Testmaschine: ATARI 1040STf mit „lterem TOS und SM 124 (monochrom) C.Men Fuji-Symbol ================== šber ALMA --------- Hier finden Sie einige Informationen ber das Programm, so wie die aktuelle Versionsnummer, das Datum der letzten Ver„nderung und die momentane Anschrift des Autors. Die Accessorys -------------- Ein Accessory ist ein Programm, dessen Name auf ".ACC" endet und das beim Booten des Systems von der Diskette automatisch mitgeladen wird. Unter dem linken Menpunkt in der Menzeile findet man die Accessorys wieder. Wenn sie keine Accessorys geladen haben, dann finden Sie hier auch keinen Eintrag. D.Men Datei ============ Unter dem Men Datei sind alle Dateioperationen (speichern, laden, usw.) zusammengefasst. Neuladen (Control N) -------------------- Eine Alma-Datei (d.h. eine Datei mit der Extension *.ALM) wird geladen. Es kann sich nur immer eine Datei aufs Mal im Arbeitsspeicher des Programmes befinden. Sie werden feststellen, dass nach dem Laden (”ffenen) einer Datei dieser Meneintrag in schwacher Schrift dargestellt ist, und somit nicht anw„hlbar. Hinzuladen (Control H) ---------------------- Eine Alma-Datei wird hinzugeladen. Die neuen Datens„tze werden in die bestehende Liste eingefgt. Die beiden Textersatzfelder werden miteinander vermischt. Falls das Textersatzfeld berl„uft, werden die berschssigen Zeilen der hinzugeladenen Datei ignoriert und eine Mitteilung macht Sie auf diesen Fall aufmerksam. Beim Hinzuladen einer Datei werden die Datens„tze, die einen schon vorhandenen Schlsselbezeichner tragen, ignoriert. Das macht Sinn, denn ein doppelter Schlsselbezeichner bringt nur Kummer und Sorgen. Sichern (Control S) ------------------- Die Datei wird unter dem selben Namen, mit dem sie geladen wurde abgespeichert. Dabei wird die alte Version berschrieben. Es erfolgt keine Sicherheitsabfrage. Wenn sie die alte Version behalten wollen mssen sie den Befehl Sichern als... benutzen. Ebenfalls mit der ALMA-Datei wird der Textersatz abgespeichert. Fr das Thema "Textersatz" siehe unter diesem speziellen Kapitel. Sichern unter... (Control A) ---------------------------- Hiermit kann die Datei unter einem anderen, beliebigen Namen abgespeichert werden. Es ist aber von Vorteil, wenn die Extension *.ALM nicht ver„ndert wird. Schon der Ordnung zuliebe und weil das Programm beim Laden einer Datei immer zuerst nach allen ALM- Dateien sucht. Code-Ausgabe (Control C) ------------------------ Hier das Herzstck des ganzen Programmes. Hier wird die Alertbox- Zeichenkette in Code-Form auf die Diskette gespeichert. Das Ausgabeformat kann fr jeden Verwendungszweck individuell eingestellt werden. Fr alle Einstellungen der Ausgabe schlagen Sie bitte bei der Erl„uterung des Befehles Ausgabeart im Men Optionen nach. Es erfolgt keine Sicherheitsabfrage, wenn schon eine gleichlautende Datei vorhanden ist. ASCII-Import (Control I) ------------------------ Hier k”nnen Alertboxen als normaler String geladen werden. Sie ziehen es vielleicht vor, ihre Alertboxen in ihrem Texteditor der Wahl vorzufabrizieren. Sie mssen nur folgendes beachten: -> Keine leere Zeile. -> Keine Zeilen, die einen Kommentar oder sonst etwas enthalten. Nur Zeilen die entweder einen Schlsselbezeichner oder einen Alertboxtext enthalten sind zugelassen. -> Die Reihenfolge: 1.Zeile Alertboxtext A, 2.Zeile dazugeh”riger Schlsselbezeichner A, 3.Zeile Alertboxtext B, 4.Zeile dazugeh”riger Schlsselbezeichner B, 5.Zeile Alertboxtext C... -> Der Schlsselbezeichner darf h”chstens 12 Zeichen enthalten, die entweder Buchstaben oder Ziffern sind. Sonderzeichen sind zwar zugelassen, sollten aber vorsichtig gebraucht werden. Gross und Kleinschreibung ist natrlich erlaubt. -> Der Alertboxtext muss der GEM-Syntax entsprechen. Also z.B. [1][Hallo! Das ist eine Alertbox!][ OK ]. -> Anfhrungs- und Schlusszeichen (z.B."") sind nicht zugelassen. -> Die letzte Zeile muss mit einem Carriage-Return abgeschlossen werden. Wenn Sie die Datei mit der Extension "EXP" versehen, f„llt es ALMA leichter das File zu erkennen. ASCII-Export (Control E) ------------------------ Dieser Befehl gibt eine Textdatei aus, die der Syntax entspricht, die im Abschnitt ASCII-Import beschrieben wurde. Die Dateiendung ist "EXP". Beenden (Control Q, Esc) ------------------------ Beenden des laufenden Programmes und Rckkehr zum Desktop. Es erfolgen zwei Sicherheitsabfragen. Die erste will wissen, ob Sie tats„chlich aus dem Programm aussteigen wollen, und die zweite stellt sicher, ob sie eine ge”ffnete Datei nicht noch abspeichern wollen. Klicken Sie hier auf "Sichern", dann wird die ge”ffnete Datei abgespeicher und geschlossen, bei "Exit" wird ALMA direkt verlassen. Eventuelle Aenderungen gehen dabei verloren, und sie finden auf ihrer Diskette noch die zuletzt gespeicherte Version der ALMA-Datei. Wenn keine Datei ge”ffnet ist oder die ge”ffnete Datei nicht ver„ndert wurde, entf„llt die zweite Sicherheits- Abfrage. E.Men Bearbeiten ================= Hier, auf der eigentlichen "Werkbank" des Programmes, werden die Alertboxen zurechtgeschmiedet und warmgehalten. Alertbox erzeugen (F1) ---------------------- Beim Anw„hlen dieses Meneintrages erscheint eine grosse Dialogbox, mit der Sie einen neuen Datensatz erstellen k”nnen. Sie mssen/k”nnen folgende Dinge einstellen/eingeben: -> Schlsselbezeichner: eine Zeichenkette von 12 Zeichen. Hier geben Sie einen Namen fr die Alertbox an. Es macht Sinn, wenn sie einen Bezeichner w„hlen, den sie in Ihre Programm als Variable oder Konstante gebrauchen k”nnen. Es muss aber irgendein Schlsselbezeichner eingestellt werden. -> Links sehen Sie vier Felder mit einem Ausrufe-, einem Frage-, ein Stopzeichen, und eines, das leer ist. Da wird das Zeichen bestimmt, das mit der Alertbox erscheinen soll. -> Rechts davon sehen Sie fnf Zeilen. Das ist der Platz fr den Text der Alertbox. Es sind in einer Alertbox ja maximal 5 Linien zul„ssig. Hier k”nnen Sie bequem ihren Text editieren. Beachten Sie bitte: eine leere Zeile wird ignoriert. Wenn Sie in Ihrer fertigen Alertbox eine Leerzeile wollen, so mssen Sie auf die entsprechende Zeile mindestens einen Leerschlag (Space) einfgen. Zu beachten ist noch: es muss sich mindestens EIN Zeichen auf EINER Linie (ist wurscht welche) befinden, damit ALMA ihre Kreation als gltige Alertbox akzeptiert und nicht meckert! Es sind nur die Zeichen verboten, die in einer GEM-Alertbox- Zeichenkette als Strukturzeichen verwendet werden: Eckige Klammern und senkrechter Trennungsstrich. -> Unterhalb der fnf Linien sehen Sie drei kleine Boxen mit Platz fr je 10 Zeichen. Hier wird der Text der Auswahlkn”pfe eingefgt. Auch hier muss in mindestens EINER Box mindestens EIN Zeichen stehen. Wollen Sie ihre Alertbox in die Liste einfgen, so drcken Sie auf den OK-Knopf. War alles in Ordnung, wird die Box eingefgt, und es erscheint gleich eine neu, vorbelegte Dialogbox. Haben Sie gengend Warnboxen eingegeben, dann drcken sie auf Abbruch. Damit kehren Sie zum Men zurck. Alertbox ver„ndern (F2) ----------------------- Es erscheint eine „hnliche Dialogbox wie beim Menpunkt Alertbox erzeugen. Was anders ist, sind die beiden Buttons mit den Aufw„rts- rsp. Abw„rts-Pfeilen. Mit diesen k”nnen Sie in der Datenliste vor- und rckw„rtsbl„ttern. Wenn Sie den Inhalt ver„ndern, so gelten fr sie die gleichen Bedingungen im Bezug auf die "Qualit„tskontrolle" wie oben. Wenn Sie eine ge„nderte Box ber den Button Abbruch verlassen, so wird die Žnderung nicht abgespeichert. Alertbox suchen (F4) -------------------- Eine Alertbox wird ber ihren Schlsselbezeichner gesucht. Wenn Sie den Meneintrag Alertbox suchen anw„hlen, erscheint ein Dialog, bei dem Sie den betreffenden Schlsselbezeichner angeben k”nnen. Sie k”nnen dann auf folgende Weise weiterfahren: Suchen und „ndern: Der entsprechende Datensatz wird gesucht und - falls gefunden- zum Editier-Dialog verzweigt. Wurde der gefundene Eintrag ge„ndert rsp. den Dialog durch den Abbruchknopf verlassen, dann kehrt man zurck zum Such-Dialog. Suchen und zeigen: Der Datensatz wird gesucht und -wenn vorhanden- als Alertbox angezeigt. Durch Drcken der Return-Taste gelangt man zurck zum Such-Dialog. Suchen und l”schen: Der Datensatz wird gesucht und -wenn gefunden- zum L”sch-Dialog verzweigt. Wird ein Eintrag gel”scht, oder der Dialog durch Anklicken von Abbruch verlassen, dann kehrt man zurck zum Such-Dialog. Abbruch: Man kehrt zurck zum Men. Alertbox l”schen (F3) --------------------- Der Befehl fr die L”schoperation ist ein wenig abgesetzt, dass man nicht zuf„llig in der Hektik einen unbedachten Schritt tut. Es erscheint die bekannte Dialogbox. Mit den Auf- und Abw„rts- Buttons l„sst sich die Liste durchbl„ttern. Wenn Sie den Eintrag gefunden haben, den Sie l”schen wollen, dann klicken Sie auf das OK-Feld (oder drcken Return). Bei eingestellter Option L”schabfrage mssen Sie noch eine Sicherheitsabfrage quittieren, um den Datensatz entgltig zu l”schen. Sie kehren automatisch zum Hauptmenu zurck. Wollen Sie keinen Alertbox-Eintrag l”schen klicken Sie auf Abbruch um zum Men zurckzukehren. Grundeinstellung (Alternate G) ------------------------------ Es erscheint eine „hnliche Dialogbox wie unter dem Punkt Alertbox erzeugen. Mit dieser Box stellen sie die Grundeinstellung fr das Erzeugen von neuen Dialogboxen zusammen. Die Eintr„ge, die Sie hier vornehmen erscheinen als Voreinstellung beim Neuerstellen von Eintr„gen in die Liste. Beachten Sie, dass an den Schlsselbezeichner -je nach der Parametereinstellung- eventuell eine r”mische oder arabische Ziffer oder ein Buchstabe angeh„ngt wird. F.Men Optionen =============== Dateiinformationen (Alternate I) -------------------------------- Es werden die Informationen ber die geladene Datei geliefert: Dateinamen: der komplette Dateiname. OPEN-Status: die Datei ist ge”ffnet. Gibt momentan keinen tieferen Sinn, ist aber fr sp„ter vielleicht interessant. DIRTY-Status: die Datei ist seit der letzten Sicherheits- Speicherung im Arbeits-Speicher (ROM) ver„ndert worden. PROTECT-Status: die Struktur der Datei ist geschtzt. D.h. alle Aktionen, die zwingend eine Neuberarbeitung des Quelltextes des betreffenden Programmes erfordern wrden, sind gesperrt. Der Effekt ist, dass Sie bei den Formularen, mit denen Sie normalerweise die Datens„tze ver„ndern oder l”schen kein OK-Feld finden. Eine Alertbox neu erzeugen k”nnen Sie aber ohne Probleme. Diesen Status schalten Sie direkt an dieser Stelle ein oder aus, indem Sie das kleine Rechteck mit dem Mauszeiger anklicken. Alertbox zeigen (Control Z) --------------------------- Hier bl„ttern Sie die Alertboxen durch. Und zwar werden diese als "Original-Warnboxen" angezeigt, so wie sie sp„ter in Ihrem Programm erscheinen. Wenn Sie die Programm-Option "zeige mit ersetztem Text" gew„hlt haben, ist der Textersatz schon eingefgt. Fr weitere Informationen zum Thema "Textersatz" schlagen Sie bitte im betreffenden Kapitel in diesem Handbuch nach. Alertbox drucken (Control P) ---------------------------- Diese Option ist in der aktuellen Programmversion noch nicht implementiert, steht aber auf der Entwicklungswarteliste. Es gibt jedoch zwei einfache M”glichkeit, wie sie eine Liste der erstellten Alertboxen auf Papier zaubern k”nnen. -> Definieren Sie eine Ausgabe, die ihren Wnschen als Druckliste entspricht. Dann lassen Sie sie als Code ausgeben und drucken Sie sie mit einem normalen Texteditor aus. -> Noch einfacher: Geben Sie die Datei als Export-Datei aus! Das erhaltene EXP-File ist als Textdatei absolut brauchbar. Z„hler neusetzen (Control R) ---------------------------- Der Schlsselbezeichner kann optional mit einem fortlaufenden Wert (r”mische oder arabische Zahl, Buchstabe) erg„nzt werden. Mit diesem Befehl setzt man diesen Z„hler auf einen Wert zwischen 0 und 999. Ausgabeart (Alternate A) ------------------------ Um eine m”glichst grosse Flexibilit„t als Programmierertool zu gew„hrleisten, kann die Ausgabe der Code-Datei hier zusammengestellt werden. Man kann folgende Parameter einstellen: Dateikopf: Diese Zeichenkette wird zu Beginn der Ausgabe der Liste auf das Speichermedium geschrieben. Dateifuss: Die Zeile, die an den Schluss der Ausgabedatei kommt. Eintrags-Start: Zeichenkette, die vor dem einzelnen Datensatz geschrieben wird. Der Bezeichner %K als Platzhalter fr den Schlsselbezeichner ist zul„ssig. Eintrags-Ende: Zeichenkette, die nach dem einzelnen Datensatz geschrieben wird. Der Bezeichner %K als Platzhalter fr den Schlsselbezeichner ist ebenfalls zul„ssig. Datei-Extension: Hier wird die Dateiextension fr die Code- Ausgabe-Datei bestimmt. Der Rest des Namens ist mit dem Namen der ALMA-Datei identisch. Kommentar-Start, -Ende: Die Zeilen, die als Dateiheader optional der Code-Datei vorgelagert sind, werden in diese Zeichen eingefasst. Kommentar schreiben: Ist diese Option aktiviert, dann wird vor die Code-Datei einen Header gesetzt. Als Begrenzungs- Zeichen werden die angegebenen Zeichenketten bei Kommentar-Beginn und Kommentar-Ende verwendet. Textersatz (Alternate T) ------------------------ Dieser Befehl zaubert eine Dialogbox fr zeilenweises Eingeben von Bezeichner und Textersatz auf den Bildschirm. Zum Thema "Textersatz", dessen Handhabung und entsprechende Beispiele sehen Sie bitte im speziellen Kapitel nach. Folgend finden Sie nur die Steuerung der Eingabe. Die Zeilen sind in drei Spalten aufgeteilt. Die erste Spalte enth„lt die Feldnummer des Textersatzes. Ihr Wert ist als Orientierungshilfe beim Bl„ttern in der Liste gedacht und hat keinen weitergehenden, tieferen Sinn. Die Zahl ver„ndert sich ja auch beim Sortieren der Zeilen. Die zweite Spalte enth„lt den Code-Bezeichner (Platzhalter, Variable) fr den Textersatz. Er wird global in den Datens„tzen verwendet, und dann bei der Code- Datei-Ausgabe mit dem jeweils aktuellen Inhalt der dritten Spalte ersetzt. Dazu muss der Code-Bezeichner im Datensatz ein vorausgehendes #-Zeichen tragen. Die einzelnen Zeilen k”nnen beliebig direkt beschrieben, ver„ndert oder gel”scht werden. Die einzelnen Buttons haben folgende Funktionen: -> Abbruch:Die Dialogbox wird verlassen. Alle Žnderungen in der Textersatzdatei werden rckg„ngig gemacht. -> l”schen:Die ganze Liste wird gel”scht. Wenn sie die Option "L”schmeldung" bei den Programmparameter eingestellt haben, werden sie vorg„ngig noch gewarnt, und k”nnen notfalls den Vorgang noch abbrechen. Eine weiteres "Undo" ist, wenn Sie nach dem L”schvorgang auf Abbruch drcken (sieh oben). -> sortieren:Das ganze Feld wird anhand des Code-Bezeichners in alphabetischer Folge aufw„rts oder abw„rts sortiert. Leerzeilen werden automatisch nach unten verschoben. -> OK:Die ver„nderte Liste wird bernommen und man kehrt zum Men zurck. Man wird auf eventuelle Falscheingaben (doppelter Code-Bezeichner...) aufmerksam gemacht. -> Aufw„rtspfeil:Die angezeigten Zeilen werden um eine Seite nach oben gebl„ttert. Ist schon der Anfang der Liste erreicht, passiert nichts. -> Abw„rtspfeil:Die angezeigten Zeilen werden um eine Seite nach unten gebl„ttert. Ist schon das Ende der Liste erreicht, passiert nichts. G.Men Parameter ================ Unter dem Titel Parameter sind alle Befehle versammelt, die zur Handhabung der Programmparameter dienen. Die Parameter sind unter einem beliebigen Namen in einer Datei mit der Extension *.SET untergebracht und k”nnen individuell abgespeichert oder dazugeladen werden. So z.B. Parameterdateien fr eine druckbare Code-Ausgabe. Weitere Informationen finden Sie im Kapitel ber die Programmparameter. Einstellen (Alternate P) ------------------------ Es erscheint eine Dialogbox, ber die ein Teil der Programmparameter eingestellt werden kann. Selektion der einzelnen Punkte erfolgt durch Anklicken der kleinen, vorangestellten Boxen. Sinn und Funktion der einzelnen Bezeichnungen bitte dem Kapitel ber die Programmparameter entnehmen. SET-Datei neuladen (Alternate L) -------------------------------- Neuladen einer Parameterdatei. Nach Programmstart wird automatisch die Datei ALMA.SET, die sich im gleichen Ordner wie das Programm befinden muss, hinzugeladen. Man kann aber weitere, spezielle Parameterdateien erstellen und unter einem beliebigen Name mit der Extension *.SET abspeichern. Beim Neuladen werden die aktuellen Parameter ohne Warnung berschrieben. šbrigens finden Sie im Ordner SET_FILE eine ganze Reihe von Beispiel-Dateien. SET-Datei speichern (Alternate S) --------------------------------- Mit dieser Option k”nnen die eingestellten Programmparameter abgespeichert werden. Achtung! Es ist sinnvoll, wenn die Extension *.SET jeweils fr diese Art von Datei verwendet wird. SET-Datei drucken (Alternate D) ------------------------------- Um sich eine šbersicht ber die Programmparameter zu beschaffen, k”nnen Sie duch diesen Befehl ausgedruckt werden. Der Ausdruck sollte keine Probleme bereiten, da der Standart-Drucker- Ausgabekanal verwendet und auf alle Sonderzeichen verzichtet wurde. Falls Sie ihren Drucker nicht ein- oder auf OFFLINE geschaltet haben, werden Sie darauf aufmerksam gemacht, und der ganze Vorgang wird abgebrochen. H.N„heres zum Textersatz ======================== Wieso ein globaler Textersatz? ------------------------------ Ich bin nicht sehr gut im Suchen von Beispielen, trotzdem soll hier ein Versuch gewagt werden. Nehmen wir einmal an, Sie arbeiten an Ihrem neusten Programm-Projekt, und sie bringen irgendwo in ihren Alertboxen Informationen ber das Programm unter. Etwa die Versionsnummer, das Erstellungsdatum oder das Datum des letzten Updates. Nun k”nnen Sie es sich sparen, das nun in ihrer ALM-Datei fortw„hrend aufzusuchen und von Hand zu „ndern. Meistens vergisst man auch, wieviel mal und wo man diese sich wechselnden Angaben angebracht hat. Nun k”nnen Sie aber in der Datei Textervariablen (sogennanter Textersatz) definieren, und ihn nur noch im entsprechenden Fomular (Men Optionen, Befehl Textersatz) zu „ndern. Bei der n„chsten Code-Ausgabe wird ihre Textvariable durch die angebebene Zeichenkette ersetzt (desshalb der Name). Handhabung ---------- Den Textersatz wird „hnlich wie eine Variable in einem Programmcode behandelt. Hier wie dort bestimmt man einen "Platzhalter", der dann mit entsprechendem Wert "gefllt", rsp. ersetzt wird. -> Definition: Aufruf des entsprechenden Dialoges ber den Befehl Textersatz unter dem Mentitel Optionen. Sie geben im erscheinenden Formular Textersatz in die erste Spalte die Variable (Code, Platzhalter, Konstante) und in die zweite Spalte den Ersatztext ein. -> Einfgung: An einem beliebigen Ort in einem Alertbox-Satz kann die Variable entsprechend unten beschriebenem Synthax eingebeben werden. -> Ausgabe: Bei jeder Code-Ausgabe werden die Variablen durch ihren entsprechenden Text ersetzt. Beim Befehl zeigen als Box im Optionen-Men k”nnen die Boxen mit oder ohne ersetztem Text angesehen werden, n„mlich entsprechend dem Programmparameter 'Textersatz einfgen'. Ist dieser gesetzt, dann sehen Sie die Alertboxen jeweils so, wie sie schliesslich in Ihrem Programm erscheinen, sonst mit dem Doppelkreuz-Code. Syntax ------ Es besteht keine Einschr„nkung bei der Verwendung von speziellen Zeichen weder in der Konstanten noch im Ersatztext. Einzig: bei der Einfgung des Codes in einen Alertboxsatz muss das Zeichen # (Doppelkreuz) vorangestellt werden. Beispiel: Definition im Formular: VERSION 2.001 Text in der Alertbox: Das ist die Programmversion #VERSION Codeausgabe: Das ist die Programmversion 2.001 Sie mssen nicht Grossbuchstaben verwenden, allerdings wird beim Textersatz zwischen Gross- und Kleinschreibung unterschieden. "VERSION" und "Version" gelten also als zwei verschiedene Platzhalter. Wenn Sie einen Code verwenden, den Sie im Formular nicht definiert haben, dann erscheint bei der Codeausgabe oder beim Anschauen der Boxen der Code ohne das Doppelkreuz. I.Datentransfer mit ASCII-Import und Export =========================================== Sinn und Zweck einer I/E-Option ------------------------------- Der Unterschied zwischen einer ALM-Datei (ALMA-Datendatei) und einer EXP-Datei (Export-Datei) ist das unterschiedliche Format. W„hrend die ALM-Datei ein spezielles Datenformat besitzt, besteht eine EXP-Datei aus reinstem ASCII (american standard code for information interchange). Das wichtige Stichwort heisst 'interchange'. Sie k”nnen also eine EXP-Datei mit einem x- beliebigen Textverarbeitungssystem laden und weiterverarbeiten. ALMA bietet ihnen zwar alles, was Sie fr die Ver„nderung einer Alertboxdatei brauchen, aber vielleicht wollen Sie gewisse, grossfl„chige Arbeiten mit ihrem Lieblingseditor erledigen. Handhabung einer EXP-Datei -------------------------- Wie oben erw„hnt, k”nnen sie eine EXP-Datei sowohl als eine ALMA- Datei wie auch als reine Textdatei (wie ein Programm-Quellcode) betrachten. Theoretisch w„re es also m”glich, gar nie eine ALM- Datei anzulegen und nur mit einer EXP-Datei zu arbeiten, denn die Befehle 'laden' und 'speichern' funktionieren fr beide Arten von Files. Die einzige Einschr„nkung ist, dass bei einer EXP-Datei der Textersatz nicht integriert ist. Beim Speichern einer Datei wird deshalb ein vorhandener Textersatz also nicht mitabgespeichert und geht beim Beenden des Programmes verloren. Ob Sie ihre Export-Datei nun mit dem ersetzten Text oder mit dem Code wollen, das mssen Sie bei den Programm-Parametern einstellen. Immer ntzlich: ein Beispiel ---------------------------- Im folgenden sehen Sie eine komplette EXP-Datei fr vier Alertboxen: Je zwei Linien geh”ren zu einem Datensatz: jeweils die erste enth„lt den Text der Alertbox und die zweite den Schlsselbezeichner. Der Inhalt des Textersatz-Formulares selbst geht beim Abspeichern als EXP-Datei wie erw„hnt verloren. Beachten Sie bitte, dass Sie mit dem Programm-Parameter Text ersetzen die Wahl haben, ob ihre Export-Datei mit dem Textersatzcode oder mit ersetztem Text ausgegeben wird. [3][Es ist ein Fehler|beim Laden aufgetreten!][Stop!] FILE_ERROR [1][Ihr Drucker ist ausge-|schaltet oder OFFLINE!][Zurck!] PRINTEROFF [1][Wollen sie das Programm|tats„chlich verlassen?][Nein|Ja] PROGIEXIT [3][Dieses Programm|l„uft nur in monochrom!][Stop!] RES_ERROR J.Die Vorbelegung des Schlsselbezeichners ========================================== Wenn Sie eine neue Alertbox erstellen, dann fllen Sie das editierbare Feld rechts oben mit einem Bezeichner fr Ihre Alertbox. Dieses Feld kann nun optional vorbelegt werden. Einerseits mit einer konstanten Zeichenkette, die Sie ber die Grundeinstellung angeben, anderseits ber eine fortlaufende Nummerierung. Jedesmal, wenn Sie eine neue Alertbox erzeugen wird dieser Z„hlwert um eins erh”ht und an ihre Bezeichner- Zeichenkette angeh„ngt. Hier sind nun zusammenfassend die M”glichkeiten dieser Vorbelegung dargestellt. -> Keine Vorbelegung: W„hlen Sie unter dem Mentitel Parameter den Befehl Einstellen (Tastenbefehl Control-P). Und desaktivieren Sie die Option Vorbelegung Schlssel. -> Vorbelegungsart: Verfahren Sie wie unter Punkt 1, aktivieren Sie aber Vorbelegung Schlssel und w„hlen Sie eine Darstellungsart: < 1 2 3 > Darstellung in arabischen Ziffern. < I II III > Darstellung in grossen r”mischen Ziffern. < i ii iii > Darstellung in kleinen r”mischen Ziffern. < A B C > Darstellung als fortlaufendes Alphabet in Grossbuchstaben. Funktioniert nur bis zum Buchstaben Z. < a b c > Darstellung als fortlaufendes Alphabet in Kleinbuchstaben Funktioniert nur bis zum Buchstaben z. -> Z„hler neusetzen: W„hlen Sie unter dem Men Optionen den Befehl Z„hler neusetzen und geben Sie eine Zahl zwischen 0 und 999 ein. Der Z„hler wird dann von dieser Zahl an fortlaufend weiternummerieren. -> Zeichenkette vor dem Z„hler: Definieren Sie mit dem Befehl Grundeinstellung beim Schlsselbezeichner eine x-beliebige Voreinstellung. Der Z„hlerstring wird einfach angeh„ngt. Achtung! reservieren Sie unbedingt gengend Platz fr die Z„hlerkette! šberschssige Zeichen werden erbarmungslos abgeschnitten und verschwinden im schwarzen Loch ihres Arbeits-Speicher! K.Fr die pers”nliche Einstellung: die Programmparameter ======================================================== Sinn und Zweck der Parameterdateien ----------------------------------- Die Programmparameter sind sehr umfangreich, und dienen nicht nur dazu die unmittelbare Arbeitsumgebung ein wenig einzurichten, sondern vielmehr, der konkreten Ausrichtung auf ein bestimmtes Programm-Projekt. Nehmen wir an, Sie arbeiten gleichzeitig an einem Pascalprogramm WIRTH.PAS und einem C-Programm K_AND_R.C. Sie legen nun in den ALMA-Programmordner zwei SET-Dateien (z.B. WIRTH.SET und K_AND_R.SET) und haben immer beide zur Hand. Da ber die Parameter auch der Projektordner festgelegt werden kann, ist auch ein Arbeiten mit wild ber die Festplatte verstreuten Ordnern kein Problem. Die einzelnen Programmparameter ------------------------------- In diesem Abschnitt werden die Parameter und ihre Verwendung erkl„rt. Die Einstellung aller Parameter k”nnen in drei Gruppen aufgeteilt werden: Die Alertbox-Grundeinstellung (Punkt 1), die Ausgabeart (Punkt 2-9) und die eigentlichen Programmparameter (Punkt 10-18). Hier werden alle drei miteinander aufgefhrt. Beachten Sie aber, dass zur Einstellung jeweils ein eigenes Dialogfenster aufgerufen wird. Jeweils -in Klammern angegeben- steht die Default-Einstellung. Diese wird automatisch eingestellt falls beim Programmstart keine ALMA.SET-Datei gefunden wurde, oder der Benutzer die Standard-Einstellung w„hlt. -> Alertbox-Grundeinstellung: Die Vorbelegung, die man fr das Erstellen der Alertboxen w„hlen kann, ist wie erw„hnt ebenfalls ein Programmparameter. Er wird ber das Formular 'Grundeinstellung' bestimmt. -> Dateikopf (leer): Beim Formular 'Ausgabeart' wird das Format der Codeausgabe eingestellt. Die Zeile des Dateikopfes wird als erste Zeile nach dem (optionalen) Header geschrieben. -> Dateifuss (leer): Im Gegensatz zum Dateikopf ist diese Zeile die letzte, die in die Ausgabedatei geschrieben wird. -> Eintrag-Start (#define %K "): Text, der vor jedem Datensatz eingefgt wird. Der Bezeichner '%K' gibt die Stelle an, wo der Schlsselbezeichner eingefgt wird. -> Eintragende ("): Text, der nach jedem Datensatz eingefgt wird. '%K' k”nnte natrlich auch hier irgendwo stehen, wenn eine Ausgabeart gewnscht ist, die den Schlsselbezeichner nach dem Alertboxtext haben will. -> Dateiextension (H): Hier geben Sie die Extension an, mit der Sie ihre Ausgabedatei kenntlich machen wollen. Ansonsten tr„gt sie den gleichen Namen wie ihre ALM-Datei. In diesem Fall wrde aus der Datei "BEISPIEL.ALM" eine Datei mit dem Namen "BEISPIEL.H". -> Kommentar-Beginn (/*): Beginn eines Kommentares in ihrer Code-Datei. Diese Angabe wird gebraucht, wenn Sie die Info-Zeilen am Anfang ihrer Datei wollen. -> Kommentar-Ende (*/): Das Gegenstck zum Kommentarbeginn. Die angegebene Zeichenfolge wird immer am Ende einer Kommentarzeile geschrieben. -> Kommentarzeilen zu Beginn der Code-Ausgabe (ein): Wenn Sie diesen Parameter eingeschaltet haben (vorangestelltes Rechteck ist schwarz ausgefllt), dann werden Ihnen einige Kommentarzeilen als Dateiheader vor ihre Codedatei gesetzt. -> Shrinkboxen (ein): Wenn Sie auf dem Computerbildschirm ein Fenster oder ein Formular ”ffnen, dann wird vorg„ngig meist der Umriss eines schnell wachsenden Rechteckes gezeigt. Beim Schliessen eines grafischen Objektes, geht es andersrum: da verschwindet der Umriss eines schrumpfenden Rechteckes. Dieses grafische Schmankerl ist ja nett, und manchmal zur Orientierung auf einem Bildschirm sogar ntzlich, kostet aber Zeit. Was liegt da n„her, als das einfach abstellen zu k”nnen? -> Automatisches Sichern (ein): Wenn sie diese Option eingeschaltet haben, wird ihre Arbeitsdatei alle 15 Minuten zwischengespeichert. Dieses automatische Sichern entf„llt, wenn Sie in der Zwischenzeit nichts ver„ndert haben oder die Datei selber abgesichert haben. Beachten Sie bitte: das Intervall zwischen zwei Speicherzeiten betr„gt nur genau 15 Minuten, wenn Sie sich zur dieser Zeit auf der Menoberfl„che befinden, und nicht in einem speziellen Programm-Modus (wie Neuerzeugen, Žndern oder im Textersatzformular). Auch ist die Zeit vom Programmstart bis zum ersten Sichern unter 15 Minuten. -> L”schwarnung (ein): Wagemutige Gemter k”nnen die wenigen vorhandenen L”schabfragen gleich ausschalten. -> Projektordner benutzen (aus): Soll der Dateipfad, der nachfolgend angegeben werden kann, beim Anzeigen einer Fileselectorbox benutzt werden, oder soll es der aktuelle Programmordner sein? -> Projektpfad (leer): Hier k”nnen Sie einen Dateiordner angeben, der als Default-Pfad benutzt wird. -> Hilfsoption (aus): Wenn aktiviert, dann wird vor dem Ausfhren jedes Programmpunktes eine Informationsbox angezeigt, die Ihnen ganz kurz den Inhalt dieser Operation schildert. Sie k”nnen dann zwischen Ausfhren und Abbrechen dieses Befehles w„hlen. -> Zeige mit ersetztem Text (ein): Wenn aktiv, dann wird beim Zeigen der Liste, und beim Ausgeben als Export-Datei (*.EXP) der Textersatz eingefgt, d.h. aller mit Doppelkreuz bestimmter Textersatz wird durch sein im Formular Textersatz definiertes Aequivalent vertauscht. -> Vorbelegung Schlssel (ein): Wenn aktiv, wird beim Erzeugen einer Alertbox automatisch, entsprechend des eingestellten Typs, vorgez„hlt. -> Typ der Schlsselnummerierung (arabisch): Sie haben fnf Ausgabetypen der Schlsselvorbelegung zur Auswahl: arabische Ziffern, grosse r”mische Ziffern, kleine r”mische Ziffern, Grossbuchstaben und Kleinbuchstaben. die SET-Dateien --------------- Bei Programmstart wird automatisch die SET-Datei ALMA.SET, die sich im gleichen Ordner wie das Programm befindet, geladen. Sie k”nnen also eine beliebige SET-Datei in ALMA.SET umbenennen, wenn sie diese Parametereinstellung zum Programmstart wnschen! Im Ordner SETS finden sie schon fertige Parameterdateien fr die Codeausgabe in verschiedenen Variationen und Programmiersprachen. L.Beispiele fr die Verwendung von ALMA ======================================= Um die Verwendung von ALMA zu demonstrieren habe ich versucht einige Beispiele aufzufhren. Alle dargestellten Formate lassen sich problemlos ber das Formular Ausgabe-Format festlegen und ausgeben. Es bestehen natrlich prinzipiell zwei M”glichkeiten fr die Verwendung von ALMA als Tool. Zum einen k”nnen Sie ihre Alertboxen fr ihr Programm (oder fr einen Programmteil) in einem Rutsch schreiben, als Code ausgeben und fest in Ihren Programmcode einbinden. Anderseits, und das wird bei gr”sseren Programmen eher der Fall sein, k”nnen Sie die von ALMA erzeugte Code-Datei extern pflegen und automatisch einbinden lassen. Damit haben Sie die Chance, die Alertboxtexte laufend ihren Bedrfnissen anzupassen. Beispiele in C -------------- Header mit Textersatz: In C besteht die M”glichkeit, Zeichenketten als Textersatz zu definieren. ALMA erzeugt z.B. eine Headerdatei alert.h die auschnittweise so aussehen k”nnte: ..... #define PROGEXIT "[1][Das Programm verlassen?][ OK  Abbruch]" #define ERROR "[1][...." In der Programmdatei wird alert.h eingebunden. .... #include "alert.h" /* Einbinden der Header-Datei */ main() /* GEM-Programm! */ { ..... do { /* Hier sind Programmroutinen */ ..... ..... }while (form_alert(1,PROGEXIT) == 2) ..... } static-String-Variable: In C k”nnen auch globale Variablen gleich initialisert werden: static short box1[] = {"[1][..."}; static short box2[] = {"[1][..."}; 3.Mit einer switch-Routine: Hier ein switch-Struktur, die z.B. Fehlermeldungen ausgibt: switch(nr) { case 1 : form_alert("[1][...."); break; case 2 : form_alert("[1][...."); break; case 3 : form_alert("[1][...."); break; } Wie Sie sehen, kann direkt eine kompletter Programmteil ausgegeben werden. Auch die Nummerierung kann natrlich als Schlsselbezeichner definiert werden. Dazu mssen sie die Zahlen beim Erzeugen der Alertboxen nicht einmal selber eintippen, sondern gleich bei der Vorbelegung automatisch nummerieren lassen. Beispiele fr Pascal -------------------- Hier fr die Freunde des Wirth'schen Klassiker! Es besteht die M”glicheit den Code als INC-Datei auszugeben und dann mit dem Befehl {$I A:\MESSAGE.INC} einzubinden! Definition als Konstanten: CONST FILE_ERROR = '[3][Fehler beim|Laden der Datei][Pfui!]'; PRINTEROFF = '[1][Ihr Drucker ist ausgeschaltet!][Zurck!]'; PROGIEXIT = '[1][Wollen sie ALMA verlassen?][N””...|Jep!]'; RES_ERROR = '[3][Diese Applikation|l„uft nur in s/w!][Pfui!]'; Formulierung als case-Struktur: CASE nr OF FILE_ERROR : DO_ALERT('[3][Fehler Dateiladen ][Pfui!]',1); PRINTEROFF : DO_ALERT('[1][Ihr Drucker ist OFFLINE!][Stop]',1); PROGIEXIT : DO_ALERT('[1][Tats„chlich hinaus?][Nein|Ja]',1); RES_ERROR : DO_ALERT('[3][Progi l„uft nur in s/w!][Pfui!]',1); END; {CASE} (Der Aufruf der Alertbox entspricht dem des ST-PASCAL plus Compilers.) Der Finger am Drcker: die Tastenbefehle ======================================== Alertbox drucken Control P Alertbox zeigen Control Z ASCII-Export Control E ASCII-Import Control I Ausgabeart Alternate A Beenden Esc, Control Q Box erzeugen F1 Box l”schen F3 Box suchen F4 Box ver„ndern F2 Code-Ausgabe Control C Dateiinfos anzeigen Alternate I Datei hinzuladen Control H Datei neuladen Control N Datei sichern Control S Datei sichern unter Control A Grundeinstellung Alternate G Parameter einstellen Alternate P SET-Datei drucken Alternate D SET-Datei neuladen Alternate L SET-Datei speichern Alternate S Textersatz Alternate T Z„hler neusetzen Control R >>>>>> ENDE