@database CLICKCLOSE
@node MAIN
@title "ClickClose 2.1 * Walter Weber-Groß, 1996/7"

   Inhalt
   ¯¯¯¯¯¯
   @{" Einführung      " link ZWECK} Sinn & Zweck
   @{" Status          " link STATUS} FREE WARE
   @{" Voraussetzungen " link START} Startumgebung
   @{" Beschreibung    " link BESCHREIBUNG} Funktionsweise
   @{" Autor           " link AUTOR} Anschrift
   @{" Anmerkungen     " link ANMERKUNGEN} Wichtig!

@endnode

@node ZWECK "Sinn & Zweck"
@next STATUS

   ClickClose dient in erster Linie dazu, die normalerweise
   unvermeidliche Ansammlung von nicht mehr benötigten
   Workbench-Schubladenfenstern beim Durchklicken zu einem
   bestimmten Piktogramm erst gar nicht entstehen zu lassen
   und trotzdem einen Rückweg zum Ausgangsfenster zu ermöglichen.
   
   ClickClose unterstützt in erster Linie die mittlere Maustaste,
   ist aber in Verbindung mit einem @{" Qualifier " link START} auch
   mit der linken Maustaste zu benutzen.
   
   ClickClose "patcht" keine System-Routine.
   
   Wichtig im Zusammenhang mit der Funktionsfähigkeit dieses
   Programms sind ein paar @{" Anmerkungen " link ANMERKUNGEN}.

@endnode

@node STATUS "Urheberrechtliches"
@prev ZWECK
@next START

   ClickClose ist FREEWARE, eine Garantie für schadfreies
   Funktionieren kann ich allerdings nur für den Betrieb auf
   den Rechnern geben, auf denen ClickClose getestet wurde.

   Getestet wurde es auf einem A1200 mit GVP-EC030 sowie
   einem A2000 mit OS2.1.

@endnode

@node START "Startumgebung"
@prev STATUS
@next BESCHREIBUNG

   Der Start dieses Commoditys erfolgt von der Workbench
   oder der Shell.

   Mögliche Piktogramm-Merkmale/Shell-Argumente:

   @{b}CX_PRIORITY@{ub}=<priorität>

      Für <priorität> kann ein Wert im Bereich von -128 bis
      127 angegeben werden, voreingestellt ist 0.

   @{b}CX_POPKEY@{ub}=<tastenkombination>

      Die gewählte <tastenkombination> bewirkt ein
      (De)Aktivieren der ClickClose-Funktionen, @{b}nicht@{ub}
      jedoch ein (De)Aktivieren von ClickClose selbst. Dies
      geschieht nur über das Commodity "Exchange" o.ä.

   @{b}QUALIFIER@{ub}=<qualifizierer>

      Für <qualifizierer> kann z.B. control angegeben
      werden; in diesem Fall reagiert ClickClose sobald
      die linke Maustaste bei gedrückter Ctrl-Taste
      losgelassen wird. Dies ist nützlich, falls eine Zwei-
      Tasten-Maus benutzt wird, denn voreingestellt ist
      dieses Merkmal deaktiviert, d.h. ClickClose reagiert
      nur auf einen Druck der mittleren Maustaste einer
      Drei-Tasten-Maus.

@endnode

@node BESCHREIBUNG "Funktionsweise"
@prev START
@next AUTOR

   Da ClickClose voreingestellt die mittlere Maustaste verwendet,
   sind alle Funktionen als Folge eines Tastendruckes der mittleren
   Maustaste einer Drei-Tastenmaus erklärt (-> @{" QUALIFIER " link START});
   Dieser Tastendruck wird im Folgenden der Einfachheit halber
   als MMB bezeichnet.

   Grundsätzlich werden zwei Arten von Fenstern unterschieden:

   ·  Schubladenfenster und
   ·  alle sonstigen Fenster

   Zwei Aktionen gelten für beide Fensterarten:

   @{b}*@{ub}  Ein MMB @{b}aktiviert@{ub} das unter dem Mauszeiger liegende Fenster
      und bringt es in den Vordergrund, sofern es nicht im Hintergrund
      bleiben soll (WFLG_BACKDROP).

   @{b}*@{ub}  Erfolgt ein MMB über einem vorhandenen @{b}Zoom@{ub}-Symbol, dann wird
      dieses Fenster zentriert.

   Folgende Aktionen gelten nur für @{b}Schubladenfenster@{ub}:

   -  Erfolgt ein MMB über einem @{b}Piktogramm@{ub}, so wird das Piktogramm
      geöffnet und das Fenster geschlossen.

   -  Erfolgt der MMB über dem @{b}Schließsymbol@{ub} des Fensters, so wird
      das übergeordnete Schubladenfenster geöffnet, und das bisher
      aktive Fenster wird geschlossen.

      Eine Ausnahme bildet hierbei das @{i}Workbenchfenster@{ui}, da es
      für dieses Fenster kein übergeordnetes Fenster gibt:
      Ein MMB auf sein Schließsymbol wechselt zwischen gerahmter
      und ungerahmter Darstellung.

   -  Erfolgt der MMB über dem @{b}Tiefensymbol@{ub} des Fensters, so wird
      der Inhalt des Schubladenfensters neu arrangiert.

   -  Erfolgt der MMB über dem @{b}Titeltext@{ub} des Fensters, so wird
      der Inhalt des Schubladenfensters aktualisiert.

      Eine Ausnahme bildet auch hier das @{i}Workbenchfenster@{ui},
      in diesem Fall geschieht jedoch nichts.

   -  Ein @{b}Doppel-MMB@{ub} über einem Schubladenfenster und nicht über
      einem Piktogramm schließt alle Schubladenfenster. Hierbei bleibt das
      aktive Schubladenfenster ebenso wie das Workbenchfenster geöffnet.

      Erfolgt der Doppel-MMB über keinem Schubladenfenster und auch nicht
      über der Titelleiste oder dem Tiefensymbol des Schirms (s.u.), so werden
      daraufhin alle Schubladenfenster geschlossen (Ausnahme: WB).

      @{b}Hinweis@{ub}: Erfolgt dieser Doppel-MMB auch nicht im Bereich der
      Titelleiste oder des Tiefensymbols des Workbench-Schirms (s.u.), und
      wird für den Betrieb von ClickClose die mittlere Maustaste verwendet,
      dann @{i}und nur dann@{ui} wird ein Klick mit der linken Maustaste
      simuliert (in den Eingabestrom eingefügt), was zur Folge hat, daß ein
      aktives Fenster deaktiviert wird.

      Der Grund für diese Maßnahme besteht darin, daß z.B. aktive ASL-
      Dateirequester einen Druck mit der mittleren Maustaste registrieren und
      auswerten (Wechsel zwischen dem gewählten Verzeichnis und Zuweisungen).

      Ein unbeabsichigtes Wechsel der Anzeige eines Requesters wird damit
      verhindert.

   Folgende Aktionen beziehen sich auf @{b}Schirme@{ub}:

   -  Ein MMB auf die @{b}Titelleiste@{ub} markiert diesen Schirm, und man kann
      dann von einem anderen Schirm aus mit einem MMB auf das @{b}Tiefensymbol@{ub}
      eines Schirmes zwischen jenem und dem markiertem Schirm wechseln.

   -  Ein Klick in die linke obere Ecke eines Schirmes (Koordinaten 0/0)
      markiert den aktuellen Schirm und wechselt zum Workbench-Schirm.

   In allen anderen Fällen wird der MMB ohne weitere Aktion weitergeleitet.

@endnode

@node AUTOR "Anschrift"
@prev BESCHREIBUNG
@next ANMERKUNGEN

   Walter Weber-Groß
   Arcostr. 5
   D-10587 Berlin
   Germany

   EMail: wwg@arco.met.fu-berlin.de

@endnode

@node ANMERKUNGEN "Wichtig!"
@prev AUTOR
@next START

·  ClickClose setzt für die Schubladenfenster-Aktionen die Existenz
   des unter OS2.1 bis OS3.1 standardmäßig vorhandenen "@{b}Workbench@{ub}"-
   Menüs voraus.

   Ist dieses Menü (bei existierendem Workbench-Schirm) nicht vorhanden,
   so geschieht einfach nichts.

   Ist dieses Menü zwar unter dem Namen "Workbench" vorhanden, aber
   verändert worden, so geschieht im besten Falle nichts, in einem
   schlimmeren Fall kommt es zu unerwarteten Funktionen und falls es
   sehr ernst ist, geht es ab zur Mediation nach Indien ·X

·  Desweiteren werden für die Schließ- und Zoom-Aktionen die
   entsprechenden Gadgets an den erwarteten Plätzen als auch die
   damit verbundenen Fenster-Flags vorausgesetzt, was normalerweise
   auch gegeben ist.

·  In absolut seltenen Fällen verweigert ClickClose aus bisher nicht
   geklärten Gründen seinen Dienst solange, bis eine Taste gedrückt
   wurde :(z.B. beim Ausstieg aus MuchMore 3.3 mit numericpad 5).

@endnode
