
Extended File Dialogs Version 2.1
=================================


Der erweiterte FileDialog wurde fr ENFIN 4.1 entwickelt. Er bietet eine
OS/2-konforme Anordnung der Felder fr die Auswahl der Dateien. Weiterhin wurde
eine Liste fr die Ablage hufig benutzter Verzeichnisse bereitgestellt. So
kann besonders bei der Arbeit im Netz und an groen Projekten schnell auf
Dateien zugegriffen werden.
ber eine Preview-Funktion knnen vor dem Laden der Inhalt einer Datei und deren
Attribute angezeigt werden.
Die Save-Dialoge bieten die Mglichkeit, neue Verzeichnisse anzulegen.




Installation
============

OS/2 Bildschirmauflsung 1024x768

   1.Kopieren Sie die Dateien
         DATE_S.CLS
         ICFont.cls
         FDLG_SET.CLS
         SET_1024.CLS
         SET_S.CLS
         WPENF_S.CLS
         FDLG1024.CLS
         FDLG_S.CLS
         LOAD1024.CLS
         LOAD_S.CLS
         OPENDLG.CLS
         MSLO1024.CLS
         MSLO_S.CLS
         TXT_EDIT.CLS
         SAS1024.CLS
         SAS_S.CLS
         SASN1024.CLS
         SASN_S.CLS
         SQL1024.CLS
         SQL_S.CLS
         OAXOpen.CLS
         OAXSave.CLS
     in ein Verzeichnis auf Ihrer Festplatte.

   2.Laden Sie die Dateien in der obengenannten Reihenfolge.
     Sie knnen auch ein entsprechende LoadableApplikation erstellen.
     Dafr steht die Datei FDLG1024.TXT zur Verfgung.
     Wenn Sie Synchronicity verwenden, mssen zustzlich
     die Dateien
         OAXOpen.CLS
         OAXSave.CLS
     NACH Synchronicity geladen werden.

OS/2 Bildschirmauflsung 640x480

   1.Kopieren Sie die Dateien
         DATE_S.CLS
         ICFont.cls
         FDLG_SET.CLS
         SET_640.CLS
         SET_S.CLS
         WPENF_S.CLS
         FDLG640.CLS
         FDLG_S.CLS
         LOAD640.CLS
         LOAD_S.CLS
         OPENDLG.CLS
         MSLO640.CLS
         MSLO_S.CLS
         TXT_EDIT.CLS
         SAS640.CLS
         SAS_S.CLS
         SASN640.CLS
         SASN_S.CLS
         SQL640.CLS
         SQL_S.CLS
         OAXOpen.CLS
         OAXSave.CLS
     in ein Verzeichnis auf Ihrer Festplatte.

   2.Laden Sie die Dateien in der obengenannten Reihenfolge.
     Sie knnen auch ein entsprechende LoadableApplikation erstellen.
     Dafr steht die Datei FDLG640.TXT zur Verfgung.
     Wenn Sie Synchronicity verwenden, mssen zustzlich
     die Dateien
         OAXOpen.CLS
         OAXSave.CLS
     NACH Synchronicity geladen werden.


Windows - Alle Bildschirmauflsungen

   1.Kopieren Sie die Dateien
         DATE_S.CLS
         ICFont.cls
         FDLG_SET.CLS
         SET_WIN.CLS
         SET_S.CLS
         WPENF_S.CLS
         FDLG_WIN.CLS
         FDLG_S.CLS
         LOAD_WIN.CLS
         LOAD_S.CLS
         OPENDLG.CLS
         MSLO_WIN.CLS
         MSLO_S.CLS
         TXT_EDIT.CLS
         SAS_WIN.CLS
         SAS_S.CLS
         SASN_WIN.CLS
         SASN_S.CLS
         SQL_WIN.CLS
         SQL_S.CLS
         OAXOpen.CLS
         OAXSave.CLS
     in ein Verzeichnis auf Ihrer Festplatte.

   2.Laden Sie die Dateien in der obengenannten Reihenfolge.
     Sie knnen auch ein entsprechende LoadableApplikation erstellen.
     Dafr steht die Datei FDLG_WIN.TXT zur Verfgung.
     Wenn Sie Synchronicity verwenden, mssen zustzlich
     die Dateien
         OAXOpen.CLS
         OAXSave.CLS
     NACH Synchronicity geladen werden.




Speicherung der Daten
=====================

Alle Daten werden in einer Datei gespeichert. Diese Datei ist eine
Instance der Klasse Setup. Setup bietet Dateien, die analog zu den
INI-Dateien des Betriebssystems die strukturierte Speicherung von
Daten erlaubt.
ENFIN selbst speichert verschiedenen Einstellungen in der Datei
ENFIN.INI.
Die ExtendeFileDialog's speichern ihre Einstellungen in der Datei
ENF_LOC.INI.
Um bei der Arbeit im Netz jedem Benutzer ein eigenes Setup zu bieten,
kann der Suchpfad fr die Datei durch Umgebungsvariablen beeinflut
werden. Relevant dabei ist die Variablen HOME. Nach der Datei wird
in dem durch HOME bezeichneten Verzeichnis gesucht. Wird die Datei dort
nicht gefunden wird beim ersten Schreibversuch die Datei in Verzeichnis
von ENFIN.EXE neu angelegt.

Damit ergeben sich fr den Einsatz im Netz 2 Mglichkeiten:

1. Alle Anwender nutzen eine ini-Datei.

2. Alle Anwender setzen in der Config.sys die Umgebungsvariable
   HOME. (z.B. SET HOME=C:\enf_ini)
   Dann mssen Sie im HOME-Verzeichnis noch die Datei ENF_LOC.INI erzeugen.
   Dazu sollten Sie die Datei aus dem ENFIN-Verzeichnis kopieren.
   Analog knnen Sie auch die Datei ENFIN.INI verteilen.


Fazit:
   Ist es ein Feature, ein Bug oder ein Sony?
   Oder ist es alles Lge und jemand hat das Handling der Umgebungsvariablen
   besser verstanden und die Auflsung parat. Ich wrde mein Haupt mit Asche
   bestreuen ....
   Also wenn jemand eine Tip hat, dann bitte schreiben.




Versionen  nderungen/Erweiterungen
===================================

1.0 
---
 o Erste Version


1.1 
---
 o Hinzufgen einer Preview, um Dateien vor dem Laden einsehen zu knnen


1.2
---
 o Erstellen von getrennten Versionen fr die Auflsungen 1024x768 & 640x480
   Die Datei FILEDLG.CLS wurde in FDLG1024.CLS bzw. FDLG640.CLS umbenannt.
   Die Datei LOADCLS.CLS wurde in LOAD1024.CLS bzw. LOAD640.CLS umbenannt.


1.3
---
 o Fehlerbehebung: fehlender Aktualisierung der Preview

 o Erweiterung der Preview um die Anzeige der Dateiattribute
   Die Funktionen zur Ermittlung der Zeiten sind fehlerhaft.
   Die Sekunden werden von ENFIN falsch angezeigt.


1.4
---
 o Fehlerbehebung: nach dem Umschalten in die Preview arbeitete
   der Cancel-Button wie der OK-Button mit der letzten in der
   Preview angezeigten Datei (sorry!)
 o Fehlerbehebung: Der Hotkey Altd fr den Delete-Button in der
   Remember-Liste wurde in Altl gendert.
   (Altd ist springen auf Directory-Liste)

 o Integration des SaveAs und SaveAsNameDialoges
 o Erweiterung der Save-Dialoge um die Mglichkeit zum Anlegen von
   Verzeichnissen
 o Erweiterung der Save-Dialoge um die Mglichkeit zum Auswhlen
   einer Datei aus der Dateiliste
 o nderung der Gre der Buttons fr alle File-Dialoge
   (um die Check-Boxen vom SaveAsName Dialog unterzubringen)
 o nderung der Anordung und der Gre verschiedener Items
   (um den Klassennamen fr den SaveAsName unterzubringen)
 o Die berschrift Directorys wurde entfernt um den Platz
   sinnvoller zu verwenden. Altd fr das Spingen zur
   Directory-Liste bleibt erhalten.
 o das Laden einer Datei erzeugt eine Ausgabe in Transcript
 o eine Datei kann auch durch den Doppelclick mit der rechten Maustaste
   geladen werden. Dann wird der Dialog nicht geschlossen, und es
   knnen weitere Dateien geladen werden. (Idee von FCO)
   ACHTUNG:  Es wird die in der Liste selektierte Datei geladen.
 o Erstellung einer Windows-Version (fr die Unverbesserlichen)
   Diese Version ist identisch mit der OS/2 Version fr die
   Auflsung 640x480; nur aus '~' wurde '&'.
   Diese Version wurde NICHT ausreichend getestet.
   Aber wer mit Windows arbeitet, den sollte das eh kaum stren ....


1.5
---
 o Fehlerbehebung: in der Windows-Version arbeitet jetzt der
   2xClick mit der rechten Maustaste korrekt.
 o Fehlerbehebung: die Enter-Taste fr das Eingabefeld fr den
   Dateinamen funktioniert wieder korrekt

 o Integration der Multi-Selection Dialoge fr den TextEditor (fr ELO,
   und alle anderen, die mit ihm arbeiten mssen)
 o Entfernen der Buttons fr die Remember-Liste; alle Funktionen knnen
   ber ein Popup-Men erreicht werden
   Das bringt Platz und mehr Speed (da weniger Items)
 o Beseitigung einiger kleinser Unterschiede zwischen den Versionen
 o Umbenennung der Text_Files fr das Laden:
    LOAD1024.TXT --> FDLG1024.TXT
    LOAD640.TXT  --> FDLG640.TXT
    LOAD_WIN.TXT --> FDLG_WIN.TXT


1.6
---
 o Fehlerbehebung: Der 2xClick mit der rechten Maustaste arbeitet jetzt
   sowohl unter OS/2 als auch unter Windows korrekt
 o Fehlerbehebung: Der Titel des SaveAsNameDialoges stimmt jetzt auch....

 o ber das Popup-Men der Form kann ein Setup-Dialog aufgerufen werden.
   Hier kann der Font fr die Preview dauerhaft eingestellt werden.


1.7
---
 o Fehlerbehebung: Kein Fehler mehr beim 2xClick auf der Remember-Liste
   wenn keine Selektion vorliegt.
 o Fehlerbehebung: Die Dateien LIESMICH.TXT und READ.ME wurden bezglich
   der Dateieangaben auf den aktuellen Stand gebracht.

 o Das Setup wird jetzt ber eine eigene Klasse/Instanz verwaltet.
   So konnten die Dateizugriffe veringert werden, und die Performance
   ist besser. Auerdem kommt ein bichen OOrdnung in das Ganze....
 o Ein Pfad aus der Remember-Liste kann als Default markiert werden.
   Dieses Verzeichnis wird direkt nach dem Starten von ENFIN genutzt.
 o Fr das Krzen der Dateinamen wird nun ein verbesserter Algorithmus
   eingesetzt. Er arbeitet auf der Basis der Lnge des Textes und nicht
   wie bisher anhand der Anzahl Zeichen. So wird die Breite der Liste
   besser ausgenutzt.
 o Das ENFIN-Desktop-Men wurde um die Eintrge 'Load' und 'Reload'
   erweitert. Dort stehen die letzten 11 geladenen Dateien zur Verfgung.
   Sie knnen ber diese Menpunkte direkt geladen werden.
   Die Liste wird beim Beenden von ENFIN nicht gesichert!
   T'schuldigung, aber ich hebe keine bessere Mglichkeit gefunden, als
   die postOpeninitialization von WPENFIN zu berladen.
   Wenn Ihr diese Funktion nicht nutzen wollt, dann brauch man einfach
   die Datei 'WPENF_S.CLS nicht zu laden.
 o Die Dateien wurden aufgeteilt, um gemeinsamen Source fr die verschiedenen
   Auflsungen nur einmal zu haben.
 o Ein kurzer Abschnitt ber die Verwaltung von Setup-Files im ENFIN
   beschreibt nun die Speicherung der Settings. Mit Hilfe dieses Textes
   sollte es auch beim Einsatz im Netz keine Schwierigkeiten geben.
   Auerdem wird beim Laden nun der exakte Pfad und der Dateiname der
   Setup-Datei als Hilfe angezeigt.


1.8
---
 o Fehlerbehebung: Die Remember-Liste wurde nicht gespeichert, wenn noch
   kein Eintrag vorlag. (T'schuldigung; aber ich bin auch nur ein Mensch..)
 o Fehlerbehebung: Kein Fehler mehr beim Aufruf von "Delete selected directory"
   wenn in der Remember-Liste keine Selektion vorliegt.
 o Das Ganze ist auch unter ENFIN 4.10.1 ablauffhig


2.0
---
 o Die Kraft fr diese Version gab mir Andreas Heidrich mit seinem Mail.
 o Fehlerbehebung: Mal eben die Reihenfolge der Dateien im txt-File gendert.
   (Danke an Joyce Mara from VMark)
 o Fr die Auswahl des Fonts wurde eine Interface-Komponente entwickelt. Da das
   Bereitstellen eines Icons wieder einmal recht obskur gelst wurde, habe ich
   darauf verzichtet. Ich hoffe die Komponente wird auch von anderen benutzt.
   Wer ernsthaft InterfaceKomponenten entwickeln mchte, sollte mir doch bitte
   schreiben. Man knnte einige Erfahrungen austauschen. Ich knnte auch einige
   ntzliche Erweiterungen vom ENFIN zur Verfgung stellen. (z.B. um IC's vernderbar
   zu gestalten)
 o Der SQLSaveAsDialog wurde nun auch umgestellt. Ich hatte ihn bisher vergessen.
   Da bisher erst 1 Nachricht ber einen Fehler eingetroffen ist, scheint es keinen
   so recht zu stren (Benutzt Ihr die Dialoge berhaupt?).
 o Ein kleiner ENFIN-Fehler wurde gefixt (Drckt doch mal im Orginal SQLSave...
   auf dem 'FileName'-EntryField die Tab-Taste.
 o Der Dialog fr das Setup wurde in eine eigene Klasse verlagert. Das spart
   Speicher, da nicht 6 Instanzen rumligen, sondern nur bei Bedarf eine 
   erzeugt wird.
 o Das Setup wurde erweitert. Nun knnen auch die zur Verfgung stehenden
   FileTypes manipuliert werden. Zum Erzeugen benutzt bitte die Return- und
   die Entf-Taste. Ich wollte nicht noch mehr Platz mit Buttons verschwenden.
   In der unteren DropDown-Box knnt Ihr noch ein Mapping definieren. Das
   bedeutet, immer wenn der Dialog mit der Wildcard *.cls aufgerufen wird,
   wir die (der/das) Wildcard auf den von Euch definierten Wert gendert. Damit
   sind jetzt auch Dateinamen wie array.cl2 handhabbar.
 o ber eine Option im Setup ist es nun mglich, die Reihenfolge der Auflistung
   der Dateien in den Submenus 'Load File' und 'Reload File' zu beeinflussen.
   Ist die Option eingeschaltet (Standard), bleibt alles wie bisher.
   Schaltet Ihr die Option aus, wird die Reihenfolge nicht mehr gendert. Das 
   heit, das das zuletzt geladenen File auch ganz unten in der Liste steht und
   auch da bleibt. Werden mehr als 11 Dateien geladen fliegt die zuerst geladene
   raus.


2.1
---
 o Fehlerbehebung: Der Titel des SQLSaveAsDialog's wurde korrigiert.

 o Implementierung des Synchronicity-Supports
   Vielen Dank an Andreas Heidrich, der die notwendigen Tests 
   bernommen hat.



    Ronald Brill
    Schlagbaumweg 21
    51467 Berg. Gladbach


    Fr Hinweise und Nrgler
       Internet: RBRi@CompuNet.DE

