NAME HideAway 1.1.4 Ein kleines Utility zum Verstecken von Fenstern unter MultiTOS Copyright (c) 1994 Bermuda Software Publishing Geschrieben von Bruno Essmann BESCHREIBUNG Leider sind die meisten Programmierer den neuen Features von MultiTOS gegenber nicht so aufgeschlossen, wie man es wnschen k”nnte. So wird die Funktion 'Iconify' von den wenigsten Programmierern verwendet (und wenn, dann h„ufig auch noch ohne CONTROL+Iconifier zum Verstecken aller Fenster). Nun denn, es begann alles damit, dass ich mich mit einem Kollegen unterhielt, der das Feature Applikationen verstecken zu k”nnen fr so wichtig hielt, dass er es als einen der Grnde auffhrte, warum er ein alternatives Multitasking System verwende. Da ich jedoch von den Vorzgen von MultiTOS mittlerweile so verw”hnt war (sollte ich nun wegen diesem fehlenden (nebens„chlichen) Feature meine Minix-Partition wieder l”schen?) beschloss ich HideAway zu schreiben. WAS KANN HIDEAWAY HideAway kann Fenster von anderen Applikationen verstecken. Wenn man also mehrere Programme gleichzeitig ge”ffnet hat und die šbersicht ber die Fenster verloren hat, kann man einfach die Fenster der gewnschten Applikationen verstecken und schon blickt man wieder durch. INSTALLATION Kopieren Sie HideAway einfach an die gewnschte Stelle auf Ihrer Festplatte und starten Sie es von dort, oder wenn Sie HideAway als st„ndigen Begleiter bei sich haben m”chten, nennen Sie um in hideaway.acc und kopieren Sie an die stelle, wo Sie Ihre Accessories gespeichert haben. (Beim Kopieren vergessen Sie bitte die Datei hideaway.rsc nicht - sie wird zwar nicht die ganze Zeit ben”tigt, doch wenn Sie z.B. die Einstellungen „ndern wollen wird sie HideAway schrecklich vermissen...) BEDIENUNG Die Bedienung von HideAway ist denkbar einfach. Nach dem Starten oder wenn HideAway als Accessory geladen wurde nach der Auswahl aus der Menleiste ”ffnet sich das HideAway Fenster. Es ist in zwei Teile unterteilt. Am linken Rand findet man eine kleine Toolleiste und den Rest des Fensters nimmt die Applikationsliste in Anspruch. DIE APPLIKATIONSLISTE Die Applikationsliste enth„lt die Namen aller Applikationen, welche ge”ffnete Fenster haben. Die gerade aktive Applikation (die der das oberste Fenster geh”rt) wird invertiert (bzw. mit weissen Hintergrund in einer Farbaufl”sung) dargestellt. Versteckte Applikationen werden grau dargestellt (damit hier keine Missverst„ndnisse auftreten: auch grau dargestellte Applikationen k”nnen ausgew„hlt werden, dass sie grau sind, zeigt lediglich an, dass sie versteckt sind). (Neu in Version [1.1.0]) Die Eintr„ge der Applikationsliste k”nnen mit der Maus ausgew„hlt werden. Abh„ngig von Ihrer Einstellung wird die angegeklickte Applikation versteckt (oder gezeigt, wenn sie schon versteckt war) oder nach oben gebracht. Soll die Applikation nach oben gebracht werden, so k”nnen wahlweise auch alle anderen Applikationen versteckt werden. Die Aktion, welche von HideAway nach einer Applikationsauswahl durchfhrt kann im Einstellungsdialog ge„ndert werden (siehe OPTIONEN). (Neu in Version [1.1.2]) Es kann vorkommen, dass man gerade eine Aktion durchfhren m”chte, die nicht die eingestellte Standardaktion ist (Sie haben z.B. 'Verstecke/Zeige Applikation' eingestellt, m”chten aber lediglich eine Applikation nach oben bringen). Hierzu h„lt man einfach eine bestimmte Sondertaste w„hren dem Klick auf die gewnschte Applikation fest: SHIFT + Auswahl => Verstecke/Zeige Applikation CONTROL + Auswahl => Applikation toppen ALTERNATE + Auswahl => Applikation toppen, andere verstecken In unserem Beispiel also mssten Sie nur die Control-Taste w„hrend dem Klick gedrckt halten und schon wrde die gewnschte Applikation nach oben gebracht. DIE TOOLLEISTE Die Toolleiste enth„lt fnf Icons, welche bei der Auswahl die folgenden Funktionen ausfhren: DAS DREIECK (BERMUDA SOFTWARE PUBLISHING LOGO) Zeigt den Informationsdialog. DAS WERKZEUGSYMBOL Bringt Sie in den Einstellungsdialog (siehe OPTIONEN) DAS FENSTER Versteckt alle Applikationen ausser der aktiven. Dies ist ntzlich, wenn Sie mal schnell 'reinen Tisch' machen wollen, weil Sie gerade nur die aktive Applikation ben”tigen. DAS DURCHKREUZTE FENSTER Versteckt die aktive Applikation. Dies ist ntzlich, wenn Sie die Arbeit mit der aktiven Applikation beendet haben, sie aber dennoch im Speicher halten m”chten, weil Sie sie sp„ter noch ben”tigen. DIE DREI FENSTER Alle versteckten Applikationen werden wieder gezeigt. (Dies ist ntzlich, wenn Sie mit alten Zeiten vergleichen wollen, in denen Sie HideAway noch nicht gekannt haben ;-).) TASTENKšRZEL HideAway erkennt einige Tastenkrzel, die das Leben ab und an etwas vereinfachen: CONTROL+Q HideAway beenden. CONTROL+W, CONTROL+U HideAway-Fenster schliessen (entspricht beenden). Achtung! Es wurde von Atari offiziell dokumentiert, dass CONTROL+W der Tastenkrzel zum Schliessen von Fenstern ist. Einige Programmierer haben dies jedoch immer noch nicht eingesehen und verwenden CONTROL+U (und CONTROL+W zum wechseln der Fenster). Der geplagte ist nun der Anwender, der es mal so und mal so hat (eeck!). Bei HideAway ist es zum Glck egal, weil es nur ein Fenster hat, also funktionieren beide Krzel. CONTROL+E Optionen editieren (dieser Krzel ist zwar an den Haaren herbeigezoen, doch immer noch besser als CONTROL+O, das steht n„mlich normalerweise fr "™ffnen"). CONTROL+S Einstellungen sichern. Sichert die Einstellungen (ist vor allem, wenn man die Position und/oder Gr”sse des Fensters „ndert ntzlich). CONTROL+A Zeigt den 'šber HideAway...' Dialog. CONTROL+I oder HELP Zeigt eine kurze Hilfe. UNDO Zeigt alle Applikationen. DIE DIALOGE Ein Wort zu den Dialogen: Alle Dialoge von HideAway liegen in modalen Fenstern (d.h. wenn ein Dialog offen ist, nimmt HideAway keine Befehle vom Benutzer mehr entgegen, bis der Dialog geschlossen wird), so wie es sich halt (fr jede Applikation) geh”rt. Dinge wie z.B. Tastenkrzel in Dialogen werde ich hier nicht nochmals aufz„hlen, da ich denke, dass dies mittlerweile zum Standard geh”rt und schon tausendmal beschrieben wurde. OPTIONEN HideAway kann soweit sinnvoll frei konfiguriert werden. Der Einstellungsdialog wird ber das Werkzeugsymbol in der Toolleiste erreicht und bietet die folgenden Einstellunsm”glichkeiten: APPLIKATIONSAUSWAHL... (Neu in Version [1.1.0]) Hier wird die Aktion bestimmt, welche HideAway ausfhrt, wenn Sie auf eine der Applikationen aus der Applikationsliste im Fenster klicken: - 'Verstecke/Zeige Applikation' Ist die angeklickte Applikation sichtbar, so wird Sie versteckt - ist sie hingegen versteckt, so werden alle Fenster wieder sichtbar gemacht. - 'Applikation toppen' Das erste gefundene Fenster der angeklickten Applikation wird nach oben gebracht. - 'Applikation toppen, andere verstecken' Das erste gefundene Fenster der angeklickten Applikation wird nach oben gebracht und alle anderen Applikationen, welche ge”ffnete Fenster haben werden versteckt. APPLIKATIONEN VERSTECKEN... - 'Priorit„t herabsetzen auf' (Neu in Version [1.1.0]) Glcklicherweise befinden wir uns in einer brauchbaren Multitasking Umgebung in der man die Priorit„t der verschiedenen Prozesse einstellen kann. Wenn Sie eine Applikation verstecken, so ist das im Normalfall, weil Sie sie im Moment nicht ben”tigen - wieso also soll diese Applikation dann gleichviel Rechenzeit 'fressen' wie zuvor? Wenn Sie also den Knopf 'Priorit„t herabsetzen auf' angew„hlt haben, so k”nnen Sie im Popup rechts daneben die gewnschte, herabgesetzte Priorit„t w„hlen. (Die alte Priorit„t wird natrlich wieder hergestellt, wenn die Applikation wieder sichtbar wird.) Zwei Anmerkungen dazu: 1) Wenn die Priorit„t vorher tiefer war (z.B. -20 und Sie haben 'herabsetzen auf -5' eingestellt), so wird die Priorit„t trotzdem gesetzt (ich war zu faul, dies auch noch zu bercksichtigen). 2) Wenn Sie sich fragen, wieso ihre versteckte Datenbank nun doppelt so lange braucht um die Daten zu sortieren, dann liegt es vielleicht daran, dass die Priorit„t Ihrer Datenbank seit sie versteckt wurde im Keller liegt ;-). - 'HideAway nicht verstecken' Ich finde es von Vorteil, wenn das HideAway-Fenster nicht versteckt wird, wenn einer der 'andere verstecken' Befehle ausgefhrt wird, da ich so jederzeit wieder auf eine der anderen Applikationen umschalten kann. Wenn Sie auch dieser Meinung sind, dann k”nnen Sie diesen Knopf getrost anw„hlen. GLOBALE EINSTELLUNGEN... - 'Beim Start Fenster ”ffnen' Diese Einstellung ist nur fr den Accessory-Betrieb von HideAway wichtig. Dieser Knopf wurde in die Einstellungen aufgenommen, weil ich mich dabei ertappt hatte, dass die erste Aktion nachdem der Rechner gestartet wurde, die Auswahl von HideAway war, damit ich HideAway immer direkt ansprechbar hatte. Ist dieser Knopf gew„hlt, so ”ffnet HideAway sein Fensterchen automatisch. (Bei mir liegt das Fenster immer in der rechten unteren Ecke, wo es praktisch immer zug„nglich ist. Ich wechsle z.B. die Applikationen nicht mehr ber's Men, sondern direkt ber HideAway mit CONTROL+Klick). - 'Setze HideAway-Priorit„t auf' HideAway ist ein Tool, welches zur egtl. Arbeit nicht direkt beitr„gt (wie z.B. der Desktop auch nicht). Es gibt also keinen Grund, wieso HideAway die gleich Priorit„t wie eine Hauptapplikation haben soll. HideAway ist zum Glck klug genug um dies zu wissen (im Gegensatz zu anderen Tools) und setzt seine Priorit„t automatisch herab. (Bei mir l„uft HideAway knallhart immer auf -20). M”chten Sie dennoch, dass HideAway seine Priorit„t nicht „ndert, so geben Sie hier eine 0 ein. - 'Erneuere Applikationsliste alle' Wenn sich das oberste Fenster „ndert, so merkt die HideAway und passt seine Applikationsliste automatisch an. Wenn sich jedoch das oberste Fenster nicht „ndert (weil Sie eine Applikation beendet haben, deren Fenster im Hintergrund lag), so kann auch die Applikationsliste von HideAway nicht auf den neuesten Stand gebracht werden. HideAway ist jedoch hartn„ckig und berprft im angegebenen Intervall, ob noch alle Applikationen vorhanden sind. (Ich weiss nicht wie Sie das halten, doch ich schliesse h„ufig Fenster, welche im Hintergrund liegen, desshalb habe ich HideAway auch angewiesen jede Sekunde zu prfen, ob sich was ge„ndert hat - wenn Sie selten Fenster im Hintergrund schliessen k”nnen Sie diesen Wert natrlich auch etwas h”her ansetzen.) - 'Bercksichtige Fenster bis zu id' Gibt die maximale Anzahl der Fenster an, welche von HideAway berprft werden. Leider hat HideAway keine M”glichkeit zu prfen wieviele Fenster wirklich ge”ffnet sind (siehe hierzu PROGRAMMTECHNISCHES). Desshalb mssen Sie HideAway ein bisschen unter die Arme greifen und ihm mitteilen, wieviele Fenster maximal vorhanden sind (unter MultiTOS k”nnten theoretisch bis 32'767 Fenster ge”ffnet werden und wenn HideAway alle 32'767 Fensterslots berprfen wrde, dann br„uchte es viel zu viel Rechenzeit). Im Normalfall reicht hier ein Wert von 50 (man hat selten soviele Fenster offen), doch wenn Sie sicher gehen wollen, dass HideAway gengend Fensterslots berprft, so k”nnen Sie auch 100 eingeben (dies ist auch der Defaultwert). Anmerkung: Selbst wenn einmal mehr Fenster ge”ffnet sind, als HideAway berprft, so ist das gar nicht tragisch. Diejenigen Applikationen, welche Fenster ge”ffnet haben, welche von HideAway nicht mehr berprft werden k”nnen dann einfach nicht versteckt werden (so einfach ist das ;-)). PROGRAMMTECHNISCHES HideAway ist, man k”nnte es kaum glauben eine 'sauber' geschriebene Applikation. Sie bentzt keine sch„bigen Tricks um die Fenster von Applikationen zu verstecken, sondern h„lt sich genau an die Dokumentation (und desshalb funktioniert es auch). Es gibt zwar keine M”glichkeit an die Fensterliste von MultiTOS heran zu kommen, doch man kann den Besitzer eines Fensterhandles mittels wind_get(handle, WF_OWNER, ...); erfahren. Existiert das Fenster nicht, so liefert wind_get(); einen Fehler, ansonsten weiss HideAway auch gleich wem das entsprechende Handle geh”rt. HideAway macht nun nichts anderes als die Fensterhandles der Reihe nach abzuklappern. Damit HideAway nicht alle 32'767 Handles (soviele Fenster konnte ich zwar noch nie ”ffnen, doch in einem kleinen Test, hab ich es immerhin auf 16'000 gebracht - es hat zwar gedaaauert, doch solche Sp„sschen geh”ren auch zum Programmiererdasein) berprfen muss, kann im Optionsdialog die Anzahl der bercksichtigten Handles angegeben werden. Ich denke ein Wert zwischen 50 und 100 sollte fr die meisten Anwender reichen (wer hat schon gleichzeitig mehr als 100 Fenster offen). Soll nun eine Applikation versteckt werden, so klappert HideAway die Fensterliste ab und schickt der zu versteckenden Applikation fr jedes gefunde Fenster die Message WM_MOVED mit einer y-Koordinate ausserhalb des Bildschirms. Das Fenster ist zwar nicht wirklich verschwunden, aber versteckt (die alternativen Multitasking Systeme, die dieses Feature auch bieten machen es im šbrigen gleich). HAFTUNGSAUSSCHLUSS UND COPYRIGHTNOTIZ Bei der Erstellung dieser Software und der Anleitung wurde mit gr”sster Sorgfalt vorgegangen. Trotzdem k”nnen Fehler nicht ausgeschlossen werden. Weder der Autor, Bruno Essmann, noch Bermuda Software Publishing bernehmen irgendeine Haftung fr eventuell vorhandene Programm- oder Dokumentationsfehler sowie deren Folgen. Copyright (c) 1994, Bermuda Software Publishing. Diese Software darf frei kopiert und weitergegeben werden, unter der Bedingung, dass sowohl dieser Haftungsausschluss als auch die Copyrightnotiz auf allen Kopien erhalten bleibt. Diese Software darf ohne schriftliche Genehmigung des Autoren nicht verkauft oder fr Gewinn vertrieben, oder anderer Software, welche verkauft oder fr Gewinn vertrieben wird beigelegt werden. Dies ist ein freeware Produkt. Die Bentzung ist ohne irgendeine Registrationsgebhr gestattet. Dies ist kein kommerzielles Produkt von Bermuda Software Publishing. Wir k”nnen daher den typischen Servie fr kommerzielle Software unserer Firma, wie z.B. Telefon-Support, Mailings oder Upgrade Service nicht bieten. Anwender, welche keinen Zugang zu elektronischen Quellen von Free- und Shareware Software haben k”nnen eine Kopie dieser Software durch das Zusenden eines frankierten und an sich selbst adressierten Umschlages und einer 720K Diskette an die untenstehende Adresse erhalten. Leute ausserhalb der Schweiz k”nnen einen internationalen Rckantwortschein anstelle von schweizer Briefmarken beilegen (internationale Rckantwortscheine sind bei jeder Poststelle erh„ltlich). Bitte bentzen Sie dicke Umschl„ge, oder besser einen speziellen "disk mailer". KONTAKTADRESSE Bermuda Software Publishing z.H. Bruno Essmann P.O.Box 766 CH-8024 Zrich Wenn Sie Zugang zum Internet haben, dann k”nnen Sie mich auch unter cjsputnik@satan.vmsmail.ethz.ch erreichen. (Ich bin z.Z. auch noch im Fido zu erreichen, doch meine Point-Nummer m”chte ich nicht angeben, da sie sich jederzeit „ndern kann und ich weiss, wie lange ich im Fido noch lesen werde - der Umgangston im Fido ist nicht so mein Geschmack. Wer mich also trotzdem im Fido erreichen m”chte, kann eine ”ffentlich Mail in ATARI.GER absetzen, diese Area werd ich wohl noch ein Weilchen lesen.) ENDE