home *** CD-ROM | disk | FTP | other *** search
- TreeView V1.2i
- (c) 1990 by Stephan Gerle
- =========================
-
- Allgemeine Beschreibung:
- ------------------------
- TreeView ist ein Programm, welches den Verzeichnisbaum von Laufwerken
- grafisch in einem Fenster ausgibt.
- TreeView kann sowohl als ACC als auch als PRG bzw. APP gestartet
- werden. Wenn TreeView als ACC gestartet wird, existiert eine
- Schnittstelle zu GEMINI (ab GEMINI Version 1.2).
-
- Nutzungsbedingungen:
- --------------------
- TreeView ist nicht PD. TreeView darf aber zusammen mit diesem Text beliebig
- oft und für jeden kopiert werden.
- TreeView darf nicht kommerziell verkauft werden. Dieses schließt auch
- sogenannte PD Versender aus, die mehr als den Diskettenpreis für eine Kopie
- verlangen.
-
- Falls TreeView regelmäßig benutzt wird, so bitte ich als kleine Anerkennung
- um eine Postkarte von Deinem Heimatort. Dadurch kann ich sehen, ob TreeView
- überhaupt zur Anwendung kommt und die Karte kann auch gleichzeitig dazu
- genutzt werden, Verbesserungsvorschläge und Fehlermeldungen zu notieren.
-
- Bedienung von TreeView:
- -----------------------
- TreeView kann sowohl als PRG als auch als ACC gestartet werden.
-
- Wenn man TreeView als PRG startet, so kann man in der Kommandozeile den
- anzuzeigenden Pfad angeben.
- Wird kein bzw. ein nicht gültiger Pfad angegeben, so wird der Verzeichnis-
- baum von dem aktuellen Laufwerk ab dem Wurzelverzeichnis dargestellt.
-
- Das gleiche gilt für TreeView im ACC-Modus. Nur das hier die Kommandozeile
- über einen 0x4711-Call übergeben wird.
- Wird TreeView über den Desk-Eintrag aufgerufen, dann wird eine leere
- Kommandozeile angenommen, d.h. es wird das aktuelle Laufwerk ab dem
- Wurzelverzeichnis dargestellt.
-
- Beim Aufbau des Verzeichnisbaums stellt TreeView eine Box auf dem Bildschirm
- dar, aus der man erkennen kann, wie weit TreeView gerade ist.
-
- Danach wird ein Fenster geöffnet, indem der Verzeichnisbaum grafisch
- dargestellt wird.
- In der obersten Zeile ist ganz links ein Drucker-Icon und rechts daneben
- sind Icons für die aktiven Laufwerke (Drvbits() wird ausgewertet).
- Darunter sieht man - abetrennt durch eine Linie - den Verzeichnisbaum.
-
- Die Kreise vor einem Verzeichniseintrag geben an, ob die vorhandenen
- Unterverzeichnisse dargestellt sind (+) oder gerade eingeklappt sind (-).
- Klickt man mit der Maus auf ein (+), so werden die Unterverzeichnisse
- eingeklappt und aus dem (+) wird ein (-). Somit kann man normalerweise
- nicht benutzte Unterverzeichnisse unsichtbar machen und die Übersicht-
- lichtkeit der Darstellung erhöhen.
-
- Mittels Einfachklick auf einen Verzeichniseintrag wird ein Verzeichnis
- selektiert. Dies hat noch kein Auswirkungen. Erst ein Doppelklick
- führt unter GEMINI eine Aktion aus (s.u.).
-
- Klickt man auf das Drucker-Icon, so wird man noch gefragt, ob man auf den
- Drucker (GDOS-Gerät 21) oder in ein Metafile (GDOS-Gerät 31) drucken
- oder die Aktion abbrechen möchte.
-
- Klickt man auf ein Laufwerk's-Icon, so wird der Verzeichnisbaum des
- angeklickten Laufwerk's ab dem Wurzelverzeichnis erst eingeladen und
- dann angezeigt.
-
- Tastaturkommandos:
- ------------------
- BACKSPACE Es wird der Verzeichnisbaum ab einer Ebene höher eingeladen
- und anschließend dargestellt.
- Cursortasten Mit den Cursortasten kann in dem Fenster gescrollt werden.
- Gleichzeitig mit Shift bewirken die Cursortasten ein
- seitenweises Scrolling.
- Ctrl-I Bringt eine Info-Box auf den Bildschirm.
- HELP Bringt eine kleine Hilfsbox zu den Tastenfunktionen.
- Ctrl-L Wechselt die Anzeige von TreeView. Nach dem ersten Mal drücken
- wird zu jedem Verzeichniseintrag noch angegeben, wieviel
- Kilobytes von dem Verzeichnis belegt wird.
- Nach nochmaligem Drücken von Ctrl-L verschwindet diese
- Anzeige wieder.
- Ctrl-S Hiermit kann der geladene Verzeichnisbaum abgespeichert werden.
- Wird TreeView dann nochmal mit diesem Pfad aufgerufen, wird
- der Verzeichnisbaum nur noch erstellt, wenn Control gedrückt
- wird. Ansonsten wird der abgespeicherte Verzeichnisbaum von
- der Platte geladen.
- Dies hat den Vorteil, daß das Einladen sehr schnell geht.
- Der Nachteil ist, das Konsistenzprobleme auftreten können.
- Man man ein Verzeichnis löscht oder ein Neues erstellt, so
- weiss TreeView davon natürlich nichts. In diesem Fall muß
- mittels Gedrückthalten von Control der Verzeichnisbaum neu
- erstellt werden (und nachher abgespeichert werden).
- Der Verzeichnisbaum wird in dem darzustellendem Verzeichnis
- als versteckte Datei unter dem Namen TREEVIEW.INF abgelegt.
- Ctrl-P Ist dasselbe wie Anklicken des Drucker-Icons.
- Ctrl-Q Nur aktiv, wenn TreeView als Programm gestartet wurde.
- Dann wird damit TreeView verlassen. Sonst wird mittels
- AV_SENDKEY dieser Tastendruck an die Hauptapplikation
- gesendet (bewirkt bei GEMINI das Beenden von GEMINI!).
- Ctrl-U
- Ctrl-D Bewirken alle das Schließen des Fensters (im ACC-Mode) bzw.
- das Beenden von TreeView (im PRG-Mode).
- Ctrl-O Sendet den angeklickten Pfad an die Hauptapplikation
- (entspricht Open).
-
- Alle anderen Tastendrücke werden mittels AV-Protokoll an die Haupt-
- applikation weitergereicht.
-
- Besonderheiten in Zusammenhang mit GEMINI (ab V1.2):
- ----------------------------------------------------
- Ab GEMINI V1.2 existiert in GEMINI eine Schnittstelle zu Accessories.
- TreeView macht sich diese Schnittstelle auf mehrere Arten zunutze.
-
- 1. Man kann Accessories in GEMINI starten (auch schon ab V1.1). Die
- Accessories werden dabei natürlich nicht richtig gestartet, sondern die
- Acc's kriegen eine Message 0x4711, in der dem Acc eine Kommandozeile
- übergeben wird.
- Legt man nun z.B. das TreeView-Icon auf den Desktop von GEMINI, so kann man
- TreeView einfach durch Doppelklick auf das Icon starten. Man kann auch - wie
- bei normalen Programmen - Icons auf dieses TreeView-Icon ziehen.
- TreeView darf aber nur mit einer Pfadangabe gestartet werden, deshalb sollte
- man auch nur ein Icon auf das TreeView-Icon ziehen. TreeView extrahiert dann
- die Pfadangabe aus der Kommandozeile (schneidet den eventuellen Dateinamen ab)
- und stellt den zu dem Icon gehörenden Verzeichnisbaum dar.
- Man kann so ziemlich alles, was auf dem Desktop von GEMINI liegt, auf das
- TreeView-Icon ziehen. Der Shredder repräsentiert keinen Pfad und bildet
- damit die einzige Ausnahme.
-
- 2. Macht man einen Doppelklick auf einen Verzeichniseintrag in TreeView,
- so wird in GEMINI ein Fenster mit dem dazugehörigen Pfad geöffnet. Dies
- kann dazu genutzt werden, um schnell tief verschachtelte Ordner zu öffnen.
-
- 3. Da ich in TreeView keinen Fontselektor einbauen wollte (Speicher sparen),
- fragt TreeView bei jedem Start bei GEMINI nach, welcher Font für die
- Dateifenster in GEMINI eingestellt ist. Dieser Font in dieser Höhe wird
- dann auch von TreeView verwendet.
-
- 4. Falls das Fenster von TreeView offen ist, kann man in GEMINI auch noch
- Icons in dieses Fenster legen. TreeView interpretiert dies dann als Wunsch,
- den Verzeichnisbaum von diesem Icon anzeigen zu lassen.
-
- 5. GEMINI merkt sich den Status von TreeView. Dieser Status kann mit
- Status sichern in GEMINI abgespeichert werden. Damit kann man z.B.
- die Lage des TreeView-Fensters und den dargestellten Pfad abspeichern.
-
- Andere Programme:
- -----------------
- In TreeView ist das sogenannte AV-Protokoll eingebaut. Dies ist ein
- Satz von Mitteilungen, die ein Accessorie und ein Hauptprogramm
- austauschen können.
- Jedes Programm, welches dieses Protokoll unterstützt, wird damit auch
- von TreeView unterstützt. Bisher gibt es allerdings nur GEMINI V1.2
- bzw. das dazugehörige Venus, welches dieses Protokoll unterstützt.
- Für das Protokoll wird bei GEMINI V1.2 eine Headerdatei mit Defines für
- die Protokollnummern mitgeliefert.
- Für Accessories gibt es von mir eine kleine Library, die für die Unter-
- stützung des AV-Protokoll's in eigenen Accessories genutzt werden kann.
-
- Drucken:
- --------
- TreeView druckt grundsätzlich auf GDOS-Gerät 21. Dies impliziert damit auch
- schon, das GDOS eingeladen sein muß, um mit TreeView drucken zu können.
-
- Bei der Druckerausgabe kann es zu Problemen kommen, wenn man einen Font
- gewählt, der nur in einer berechneten Größe vorliegt (z.B. doppelte Größe).
- Hat man in GEMINI für die Dateifenster einen Font eingestellt, der für den
- Druckertreiber nicht vorhanden ist, so wird die Wahl des Fonts dem Treiber
- überlassen (meistens der erste Font im ASSIGN.SYS unter dem Treibereintrag).
-
- Metafile-Ausgabe:
- -----------------
- Die Metafile-Ausgabe ist mehr als kleines Bonbon gedacht, da diese erweiterte
- Ausgabemöglichkeit mich genau 6 Befehle kostet.
- Leider gibt es damit auch am meisten Probleme. Ist unter META.SYS im
- ASSIGN.SYS kein Font eingetragen, so liefert mir der Treiber die Fonthöhe 0
- zurück und damit würde alles auf eine Zeile zusammengequetscht. Deshalb gehe
- ich bei Metafiles und nicht existierenden Fonts von einer Fonthöhe und -breite
- von 16 Pixeln aus.
- Es gibt auch mindestens zwei verschiedene META.SYS. Das META.SYS mit der
- Dateilänge 9325 Bytes funktioniert. Bei einem anderen META.SYS gab es
- auch schon mal Bomben.
-
- Das Metafile wird im Clipboard abgelegt, wenn der Clipboardpfad gesetzt
- worden ist. Wenn der Clipboardpfad nicht gesetzt worden ist, so wird das
- Metafile in dem Verzeichnis des dargestellten Verzeichnisbaums abgelegt.
-
- Probleme mit anderen Programmen:
- --------------------------------
- 1. Bei der Version V3.0q (oder auch andere Versionen) von Autoswitch-
- Overscan wird der Bildschirm weiß, wenn man mit TreeView ausdrucken
- will. Das liegt daran, daß TreeView einen v_clrwk()-Aufruf auf die
- Druckerworkstation ausführt und Autoswitch-Overscan daraufhin den
- Bildschirm löscht.
- Dies hat ansonsten keine weiteren Nebeneffekte. Nach Starten eines
- Programmes ist der Bildschirm wieder normal.
- 2. Eine Version von Metafont von Stefan Lindner gibt eine Fehlermeldung
- aus, wenn es eine Meldung kriegt, die Metafont nicht versteht. Leider
- gehören dazu auch Meldungen von TreeView an Metafont.
- Auch dieser Fehler hat ansonsten keine Nebenwirkungen.
-
-
- Epilog:
- -------
- Für Anregungen, Erfahrungsberichte und Fehlermeldungen bin ich immer
- dankbar.
-
- Ich bin unter folgender Adresse zu erreichen:
-
- Stephan Gerle
- Ruthstr. 8
- 4600 Dortmund 1
- Tel.: 0231/65 25 35
- E-Mail: Stephan Gerle @ DO im Maus-Net
-
- PS. : Viel Spaß mit dem Programm.
- PPS.: Erst mit GEMINI V1.2 können alle Möglichkeiten von TreeView voll
- genutzt werden.
-
- Neu in Version:
- ---------------
- V1.2i: + Wird ein Dateibaum neu eingelesen und es existiert in dem
- angezeigtem Verzeichnis bereits ein abgespeicherter Dateibaum,
- so wird der neu eingelesene Dateibaum automatisch abgespeichert.
- + Help wurde erweitert.
- + Der einmal eingestellte Font wird nur noch verstellt,
- wenn er von GEMINI erfragt werden konnte. Wurde TreeView
- innerhalb von GEMINI einmal aufgerufen, dann hat man den
- dort eingestellten Font auch, wenn man ein anderes Programm
- startet.
- + Dateibäume werden sortiert
- + Gemini/Venus merkt sich den Status von TreeView, wenn man
- Status sichern aufruft. Dieser Status wird dann bei jedem
- Start von Gemini/Venus eingestellt.
- + Läuft jetzt auch mit Chameleon korrekt.
-