@DATABASE Felix.api
@WORDWRAP
@SMARTWRAP
@INDEX "Index"
@$VER: Felix.api-Anleitung 1.4 (1998.11.24)
/*S*/ Main
@NODE "Main" "Felix V39.5"
@{CODE}@{jcenter}Ulm-Einsingen, den 1998.11.23
****************************************************************************
@{FG HIGHLIGHT}@{b}@{bg fill} Felix.api Version 39.7 @{bg background}@{ub}@{FG TEXT}

Geschrieben von
@{i}Christian Taulien@{ui}

von Strange Intelligence / Softwareentwicklung
****************************************************************************

@{" Kurzbeschreibung  " LINK Kurzbeschreibung}
@{"   Installation    " LINK Installation}

@{"  Voraussetzungen  " LINK Voraussetzungen}
@{"   Beschreibung    " LINK Beschreibung}
@{"  Bekannte Fehler  " LINK BekannteFehler}
@{"    Geschichte     " LINK History}
@{"   Danksagungen    " LINK Danksagungen}
@{"    Rechtliches    " LINK Rechtliches}
@{"  Unsere Adresse   " LINK Adresse}

@ENDNODE
/*E*/
/*S*/ Kurzbeschreibung
@NODE "Kurzbeschreibung" "Felix-Anleitung / Kurzbeschreibung"
@{bpen 4}@{FG HIGHLIGHT}@{b}1. Kurz-Beschreibung @{ub}@{FG TEXT}@{bpen 0}

@{par}@{FG FILL}@{apen 11}@{b}Felix.api ist ein PlugIn für den Editor "GoldED".@{ub}@{apen 1}@{FG TEXT}

@{par}@{u}Eigenschaften@{uu}:
@{par}· Freeware
@{par}· Kontrolliert, ob Dateien im Hintergrund verändert wurden, und lädt diese
auf Wunsch neu ein.
@{par}· Bietet einen ARexx-Befehl, der eine Liste der vorhandenen Fenster anzeigt.
@{par}· Unterstützt die locale.library
@{par}· Fontsensitiv
@{par}
@{par}Der komplette Source-Code (für StormC 3.0) wird mitgeliefert.
@{par}
@{par}Der Name Felix ist ein Wortspiel aus "Fensterliste".
@ENDNODE
/*E*/
/*S*/ Installation
@node "Installation" "Felix-Anleitung / Installation"
@{bpen 4}@{FG HIGHLIGHT}@{b}2. Installation@{ub}@{FG TEXT}@{bpen 0}

@{par}Die Installation des PlugIns ist so simpel, daß kein Skript dafür
geschrieben wurde. Klicken sie einfach


für GoldED 5 hier auf @{" Install für GED 5 " SYSTEM "execute /install/install_for_GED5.german.bat"} oder

für GoldED 4 hier auf @{" Install für GED 4 " SYSTEM "execute /install/install_for_GED4.german.bat"}.

@endnode
/*E*/
/*S*/ Requirements
@NODE "Voraussetzungen" "Felix-Anleitung / Voraussetzungen"
@{bpen 4}@{FG HIGHLIGHT}@{b}3. Voraussetzungen für Benutzung des Felix.api.@{ub}@{FG TEXT}@{bpen 0}

@{par}Um das Felix.api nutzen zu können, wird natürlich GoldED vorausgesetzt.
@{par}Desweiteren ist mindestens OS 3.0 erforderlich.

@{par}Die mitgelieferten Quelltexte lassen sich nur mit dem StormC-Compiler
übersetzen.

@{par}@{b}Wichtige Bemerkung zu den Quelltexten:@{ub}
@{par}In einigen Quelltextdateien wird die Datei "GOLDED:developer/api/include/api.h"
(@{b}Release 7@{ub}) includiert. Diese Include-Datei includiert wiederum einige Dateien, darunter auch
unnötiger Weise zweimal "exec/lists.h". Ich nehme an, daß eins von den beiden
eigentlich "exec/libraries.h" heißen sollte, denn beim Übersetzen meckert
der Compiler an verschiedenen Stellen rum, daß er "struct Library" nicht kennt.
Beheben sie diesen Fehler bitte, in dem sie die api.h editieren - natürlich mit
GoldED :-) und dort eben "exec/library.h" eintragen. Danach müßte alles übersetzbar
sein.

@ENDNODE
/*E*/
/*S*/ Beschreibung
@NODE "Beschreibung" "Felix-Anleitung / Beschreibung"
@{bpen 4}@{FG HIGHLIGHT}@{b}4. Beschreibung@{ub}@{FG TEXT}@{bpen 0}

@{par}Nachdem das Felix.api installiert wurde, kann man es im GoldED-Einsteller für
die APIs (Stecker-Symbol) aktivieren.

@{par}Danach kennt GoldED die folgenden ARexx-Befehle:
@{par}  @{" CHECKACCESSES " LINK "CHECKACCESSES"}
@{par}  @{" FELIX         " LINK "FELIX"}
@{par}  @{" GETUSERNAME   " LINK "GETUSERNAME"}
@{par}  @{" WINDOWLIST    " LINK "WINDOWLIST"}

@ENDNODE

/*S*/ CHECKACCESSES
@NODE "CHECKACCESSES" "Befehl CHECKACCESSES"

@{par}  Befehl: @{fg shine}CHECKACCESSES@{fg text}
@{par}  -------------------------------------

@{par}  @{b}Funktion:@{ub}
@{par}    Nach dem aktivieren des FelixAPI hat sich äußerlich erstmal nichts
@{par}    geändert. Wenn aber nun eine Datei, die in GoldED geöffnet ist, im
@{par}    Hintergrund überschrieben wird und man im entsprechenden Textfenster
@{par}    eine Taste drückt, so wird ein Requester geöffnet, in dem man auf
@{par}    diesen Umstand hingewiesen wird. Das Überprüfen der Zugriffe, muß
@{par}    nicht unbedingt durch das Drücken einer Taste erzwungen werden,
@{par}    man kann auch den ARexx-Befehl "@{u}CHECKACCESSES@{uu}" verwenden.

@{par}  @{b}Parameter:@{ub}
@{par}    Keine

@{par}  @{b}Rückgabe:@{ub}
@{par}    Keine

@{par}  @{b}Beispiel:@{ub}
@{par}    Ein ARexx-Skript, das alle 5 Sekunden die Zugriffe auswertet, könnte in etwa so aussehen:
@{par}      @{FG HIGHLIGHT}/* felixdemo.rexx - Überprüft Dateizugriffe alle 5 Sekunden */
@{par}      do forever
@{par}          address "GOLDED.1"
@{par}          CHECKACCESSES
@{par}          address COMMAND
@{par}          WAIT 5
@{par}      end@{FG TEXT}

@ENDNODE
/*E*/
/*S*/ FELIX
@NODE "FELIX" "Befehl FELIX"

@{par}  Befehl: @{fg shine}FELIX@{fg text}
@{par}  -------------------------------------

@{par}  @{b}Funktion:@{ub}
@{par}    Der ARexx-Befehl "@{u}FELIX@{uu}" stellt lediglich eine "About"-Funktion
@{par}    dar, mit der ein Requester geöffnet wird, und eine Erklärung abgibt,
@{par}    was Felix.api ist.

@{par}  @{b}Parameter:@{ub}
@{par}    Keine

@{par}  @{b}Rückgabe:@{ub}
@{par}    Keine

@ENDNODE
/*E*/
/*S*/ GETUSERNAME
@NODE "GETUSERNAME" "Befehl GETUSERNAME"

@{par}  Befehl: @{fg shine}GETUSERNAME@{fg text}
@{par}  -------------------------------------

@{par}  @{b}Funktion:@{ub}
@{par}    Mit dem ARexx-Befehl "@{u}GETUSERNAME@{uu}" kann man den Namen des
@{par}    aktuell eingestellten Benutzers ermitteln. Dazu wird lediglich die
@{par}    Environment-Variable USER ausgelesen und zurückgegeben.

@{par}  @{b}Parameter:@{ub}
@{par}    Keine

@{par}  @{b}Rückgabe:@{ub}
@{par}    Die Variable RESULT hat nach Ausführung des Befehls den Namen
@{par}    des aktuellen GoldED-Benutzers

@ENDNODE
/*E*/
/*S*/ WINDOWLIST
@NODE "WINDOWLIST" "Befehl WINDOWLIST"

@{par}  Befehl: @{fg shine}WINDOWLIST@{fg text}
@{par}  -------------------------------------

@{par}  @{b}Funktion:@{ub}
@{par}    Damit wird ein Fenster mit einer Liste der vorhandenen GoldED-Fenster
@{par}    angezeigt.

@{par}  @{b}Parameter:@{ub}
@{par}    @{fg fill}X/N@{fg text}
@{par}    @{fg fill}Y/N@{fg text}
@{par}      Die beiden Parameter X und Y sind, wie Sie sicher bereits vermuten die
@{par}      Position des Fensters. Gibt man -1 an, so wird die Position in der
@{par}      entspechenden Richtung zentriert.
@{par}    @{fg fill}ENTRIES/N@{fg text}
@{par}      Gibt die Anzahl der Einträge an, die in der Liste auf einmal angezeigt
@{par}      werden können. Sind mehr Fenster vorhanden, kann ja gescrollt werden.
@{par}      Mit diesem Parameter kann man also ein wenig die Höhe des Fensters bestimmen.
@{par}    @{fg fill}KEEPPOSITION/S@{fg text}
@{par}      Gibt man an, damit Felix.api sich die Fensterposition vor dem Schließen
@{par}      des Fensters merkt, um diese dann beim nächsten Öffnen zu verwenden.
@{par}    @{fg fill}OFF/S@{fg text}
@{par}      OFF ist für das Schließen des Fensters über ARexx da.

@{par}  @{b}Rückgabe:@{ub}
@{par}    Keine

@{par}  @{b}Bedienung des Fensters:@{ub}
@{par}    Das Fenster beinhaltet die Fensterliste selbst und die drei Gadgets "Weiter",
@{par}    "Schließen" und "Abbrechen". Die Liste enthält die Namen der GoldED-Text-Fenster
@{par}    (der darin geöffneten Dateien) und das aktuelle Fenster ist selektiert.

@{par}    Mit dem "@{u}Weiter@{uu}"-Gadget wird das Fenster nach vorn geholt, daß in der Liste
@{par}    angewählt ist. Das Felix-Fenster wird geschlossen

@{par}    Durch das "@{u}Schließen@{uu}"-Gadget wird das in der Liste angewählte Fenster
@{par}    geschlossen, als ob sie das Schließ-Symbol im entsprechenden Text-Fenster gedrückt
@{par}    hätten.

@{par}    Und das "@{u}Abbrechen@{uu}"-Gadget schließt einfach das Felix-Fenster.

@{par}    Ein Doppelklick auf einen Eintrag in der Liste läßt das entsprechende Fenster
@{par}    nach vorn kommen, die Fensterliste bleibt aber offen.

@{par}    Die @{u}Return-Taste@{uu} wirkt wie das "Weiter"-Gadget
@{par}    Die @{u}ESC-Taste@{uu} hat die gleiche Wirkung wie das "Abbrechen"-Gadget.
@{par}    Die @{u}Leertaste@{uu} wirkt wie ein Doppelklick auf den angewählten Listeneintrag..

@ENDNODE
/*E*/
/*E*/
/*S*/ Bekannte Fehler
@NODE "BekannteFehler" "Felix-Anleitung / Bekannte Fehler"
@{bpen 4}@{FG HIGHLIGHT}@{b}4. Bekannte Fehler@{ub}@{FG TEXT}@{bpen 0}

@{par}@{b}Wenn die Aktualitätskontrolle versagt:@{ub}
@{par}Während des Testens haben wir auf einem Amiga 1200 festgestellt, daß das
automatische Akualisieren des Textes nicht funktioniert. Der Rechner stürzt
nicht ab, aber es wird einfach nicht die Änderung im Hintergrund erkannt.
Da der Quelltext mitgeliefert ist, kann ja jemand sich die Mühe machen und
mal nachsehen. Wäre nett, wenn ich benachrichtigt werden würde, an was es
gelegen hat.

@{par}@{b}Wenn die Aktualitätskontrolle übereifrig ist:@{ub}
@{par}Ein weiterer Fehler tritt bei folgendem Verhalten auf:
Laden Sie eine Datei. Speichern Sie diese unter einem anderen Namen ab.
Nun laden Sie die alte Datei in ein neues Fenster. Speichern Sie die Datei
einfach (ganz normal, nicht "Speichern als"). Ergebnis: Die automatische
Nachladekontrolle fragt Sie, ob die Datei nochmal geladen werden soll, weil
sie im Hintergrund angeblich verändert wurde. Der Grund hierfür liegt darin,
daß der Name der Datei zwar geändert wurde, aber das PlugIn das nicht mitgeteilt
bekommt (in einer Struktur namens APIInstance wird der Name nicht aktualisiert).
Ich schiebe diesen Fehler einfach mal Herrn Eilert in die Schuhe (nicht böse sein!).
Workaround: Schließen Sie das Fenster mit dem neuen Namen und öffnen Sie es erneut.

@ENDNODE
/*E*/
/*S*/ History
@NODE "History" "Felix-Anleitung / History"
@{bpen 4}@{FG HIGHLIGHT}@{b}3. Geschichtliche Entwicklung des Felix.api.@{ub}@{FG TEXT}@{bpen 0}

@{par}@{b}@{u}History@{uu}@{ub}
@{par}@{b}1998.11.22@{ub} (V1.3)
@{par}· Die "Text-verändert"-Markierung ist verbessert worden.
@{par}· Die Fensterlisteneinträge sind jetzt um 2 Pixel höher.
@{par}· Überflüssiger Befehl GETINTERDATE wieder entfernt.
@{par}· Fehler beseitigt: Wenn das letzte GoldED-Fenster geschlossen wird,
@{par}  wurde manchmal eine noch offene Fensterliste nicht geschlossen.
@{par}· Aussehen des selektierten Eintrag der Fensterliste geändert.
@{par}  Die Selektion ist jetzt nur noch so breit wie der selektierte Text.
@{par}· Diese Anleitung überarbeitet.

@{par}@{b}1998.11.21@{ub} (V1.2)
@{par}· Das Fenster ist jetzt ein SimpleRefresh-Fenster
@{par}· Textfenster die verändert wurden, werden in der Liste markiert.
@{par}· Der selektierte Eintrag hat jetzt eine deutlichere Textfarbe.
@{par}· Interner Bug beseitigt. (Hatte zum Glück keine Auswirkung)
@{par}· Version für GoldED 5.0

@{par}@{b}1998.11.16@{ub} (V1.1)
@{par}· Fehler beseitigt, der einige ShortCuts nicht funktionieren ließ
(gemeldet von Andre' Taulien)

@{par}@{b}1998.07.30@{ub} (V1.0)
@{par}· Veröffentlichung im Aminet.
@{par}· Verbesserungen des Startup-Codes durch Matthias Henze.

@ENDNODE
/*E*/
/*S*/ Thanks
@NODE "Danksagungen" "Felix-Anleitung / Danksagungen"
@{bpen 4}@{FG HIGHLIGHT}@{b}5. Danksagungen@{ub}@{FG TEXT}@{bpen 0}

@{apen 11}@{par}@{i}An dieser Stelle möchte ich allen danken, die mich bei der Entwicklung
@{par}der Software unterstützt haben.@{ui}@{apen 1}

@{par}· @{b}Jens Gelhar@{ub}
@{par}  Für die Idee, für's Betatesting und ganz besonders für seinen Compiler.

@{par}· @{b}Andre' Taulien@{ub}
@{par}  Für seine Anregungen und Betatesting auf seinen Amigas.

@{par}· @{b}Matthias Henze@{ub}
@{par}  Für seine Fehlerberichtigungen und Ratschläge zum Startupcode.

@ENDNODE
/*E*/
/*S*/ Lawful
@NODE "Rechtliches" "Felix-Anleitung / Rechtliches"
@{bpen 4}@{FG HIGHLIGHT}@{b}6. Rechtlicher Status dieses Paketes@{ub}@{FG TEXT}@{bpen 0}

@{par}@{apen 11}Dieses Paket ist Freeware. Das heißt, es kann frei kopiert werden,
@{par}wenn die folgenden Bedingungen eingehalten werden:@{apen 1}

@{par}1. Das Paket darf nur als Original-Paket  weitergegeben  werden.
@{par}   daß  heißt:  keine  Datei  darf geändert werden  bzw. fehlen.

@{par}   Privat  (also auf dem eigenem Rechner) kann jeder Anpassungen
@{par}   an den Dateien nach eigenem Geschmack vornehmen.

@{par}2. Das Paket  darf auf  allen  Massenmedien  vertrieben  werden,
@{par}   wobei der Preis  für diese  Medien  nur geringfügig (bis 20%)
@{par}   die für den  Herausgeber anfallenden Selbstkosten übersteigen
@{par}   darf.

3. Disclaimer
@{fg shine}@{par}     Für Schäden jeglicher Art die sich aus der Benutzung dieses
@{par}     Softwarepaktes ergeben, übernehme ich keinerlei Haftung.@{fg text}

@{par}GoldED is ©1995-1998 by Dietmar Eilert
@{CODE}@{par}AMIGA is a registered trademark of Gateway 2000 (naja 1998 jedenfalls)
@ENDNODE
/*E*/
/*S*/ Anschrift
@NODE "Adresse" "Felix-Anleitung / Adresse"
@{bpen 4}@{FG HIGHLIGHT}@{b}7. Unsere Anschrift@{ub}@{FG TEXT}@{bpen 0}

@{par}       Verbesserungsvorschläge und Bugreports, Geld oder am besten
@{par}       Angebote von netten Mädchen, mit ihr mal auszugehen, können
@{par}       an folgende Adressen geschickt werden:

@{par}       Christian Taulien                       Andre' Taulien
@{par}       Distelweg 11                   oder     Mühlesteigstraße 40\\1
@{par}       89079 Ulm                               72458 Albstadt
@{par}       Bundesrepublik Deutschland              Bundesrepublik Deutschland

@{par}       Tel: 0177-3124886                       Tel: 07431/2745
@{par}                                               EMail: antx@gmx.de
@{par}@{fg shine}                            ________     ___
@{par}                           /  _____/\\   /  /\\
@{par}                          /  /\\____\\/  /  / /
@{par}                         /   \\/_      /  / /
@{par}                         \\____  \\    /  / /
@{par}                          \\__/  /\\  /  / /
@{par}                      ______/  / / /  / /
@{par}                     /________/ / /__/ /
@{par}                     \\________\\/  \\__\\/  © 1998@{fg text}

@{par}           ------------------------------------------------
@{par}           @{fg fill}http://www.geocities.com/SiliconValley/Way/1942/@{fg text}
@ENDNODE
/*E*/
/*S*/ Index
@NODE "index" "Felix.api-Anleitung / Index"
@{bg fill}@{fg shine}@{b} Felix.api - Anleitungsindex @{ub}@{fg text}@{bg background}
@{par}
@{par}@{bpen 3}@{apen 2} A @{apen 1}@{bpen 0}
@{par}@{" Anschrift " LINK "Adresse"}

@{par}@{bpen 3}@{apen 2} B @{apen 1}@{bpen 0}
@{par}@{" Bekannte Fehler " LINK "BekannteFehler"}
@{par}@{" Beschreibung " LINK "Beschreibung"}

@{par}@{bpen 3}@{apen 2} C @{apen 1}@{bpen 0}
@{par}@{" CHECKACCESSES " LINK "checkaccesses"}

@{par}@{bpen 3}@{apen 2} D @{apen 1}@{bpen 0}
@{par}@{" Danksagungen " LINK "Danksagungen"}

@{par}@{bpen 3}@{apen 2} F @{apen 1}@{bpen 0}
@{par}@{" FELIX " LINK "felix"}

@{par}@{bpen 3}@{apen 2} G @{apen 1}@{bpen 0}
@{par}@{" Geschichte " LINK "History"}
@{par}@{" GETUSERNAME " LINK "GETUSERNAME"}

@{par}@{bpen 3}@{apen 2} I @{apen 1}@{bpen 0}
@{par}@{" Installation " LINK "Installation"}

@{par}@{bpen 3}@{apen 2} K @{apen 1}@{bpen 0}
@{par}@{" Kurzbeschreibung " LINK "Kurzbeschreibung"}

@{par}@{bpen 3}@{apen 2} M @{apen 1}@{bpen 0}
@{par}@{" Hauptseite " LINK "Main"}

@{par}@{bpen 3}@{apen 2} R @{apen 1}@{bpen 0}
@{par}@{" Rechtliches " LINK "Rechtliches"}

@{par}@{bpen 3}@{apen 2} V @{apen 1}@{bpen 0}
@{par}@{" Voraussetzungen " LINK "Voraussetzungen"}

@{par}@{bpen 3}@{apen 2} W @{apen 1}@{bpen 0}
@{par}@{" WINDOWLIST " LINK "windowlist"}

@ENDNODE
/*E*/

