History und Bugfix
Version 0.9.7 (6.7.2003)
-
Umstieg auf JDK 1.4.2
-
Umstieg auf GLUE 4.1.2 (GLUE.jar wurde etwas verkleinert: Console und uddi
gelöscht).
-
Anbindung der Oberfläche an generisches Transfermodell mit
JDataSet.
-
Unterstützung des FormLayout (Dank an
Karsten Lentzsch!).
-
colSpec und rowSpec auf für Definition der Zwischenräume bei Flow-
und Grid-Layout.
-
Das Attribut
gif=
wurde durch img=
ersetzt; ersteres
wird z.Z. aber noch (heimlich) unterstützt.
Statt Items=
geht jetzt auch items=
und statt
typ=
jetzt auch type=
-
<Form controler="MyScript.bsh" > wurde in der Vorversion vergessen.
Version 0.9.6 (12.10.2002)
-
OptionGroup für RadioButtons
-
gdl.xsd ermöglicht Validierung gegen XML-Schema
-
Happy Scripting jetzt auch mit BeanShell.
-
Pnuts oder BeanShell müssen gesondert installiert werden.
-
Keine ClassNotFoundException mehr wenn Pnuts fehlt.
Version 0.9.5.10
-
Umstieg auf JDK 1.4.1
-
GuiDoc hatte das Attribut
case=
nicht berücksichtigt.
-
GuiTreeNode hat zwei neue Methoden:
getValue()
und setValue()
@see JavaDoc
Version 0.9.5.9 (8.9.2002)
-
In der Vorversion wurde ein Fehler mit den RadioButton raus-, dafür
ein anderer reingebaut :-(
-
MenuItemCheckBox kann jetzt auch ein
map="trueValue|falseValue"
-
Falsches Verhalten bei Kombination von
map=
mit
invert="true"
bei der CheckBox korrigiert.
Version 0.9.5.8 (1.9.2002)
-
val="true"
für den ersten RadioButton hatte den Wert der
Komponente nicht gesetzt.
-
GuiDialog hat neue Methode
showDialog()
; "zeige" ist jetzt
deprecated.
-
setLayout() bei GuiList ist neu.
Version 0.9.5.7 (28.7.2002)
-
Pnuts-Script können auch als XML-Kommentar geschrieben werden.
-
Dank
setSurrendersFocusOnKeystroke(true)
ist die Eingabe in
Tabellen jetzt deutlich einfacher.
-
Grober Fehler aus XML-Reader ausgebaut: Bei bestimmten Versionen von EXML
waren die Umlaute verschwunden.
-
setDisplayMnemonic korrigiert;
Save %as
wird jetzt wirklich
zu Save as
-
Tippfehler in GDL.DTD korrigiert (Separator).
Version 0.9.5beta6 (7.7.2002)
-
Bei Tabellen wird Datum, Uhrzeit und Zahl jetzt richtig sortiert.
-
Neues Attribut
controler=
für Hauptcontainer (Windows)
Hier kann entweder ein Pnuts-Script oder eine Java-Klasse angegeben werden.
-
CLASSPATH im Manifestfile geändert: Jetzt ist GLUE komplett enthalten.
Version 0.9.5beta5 (19.5.2002)
-
Datumseingabe überarbeitet:
Werden weniger als 9 Zeichen eingegeben, wird bei einem Jahr < 20 das
Jahrhundert 20## angenommen, ansonsten 19##.
-
Tabellen können mit einem Click auf den Spaltenkopf nach dieser Spalte
sortiert werden; Shift-Click sortiert absteigend.
Leider funktioniert dieses mit Zahlen und Datum nicht erwartungskonform.
-
Cut und Paste zwischen Tabellen und Excel.
-
GuiRootPane.getCurrentTabset()
und
GuiTabset.getCurrentTab()
sind neu.
Version 0.9.5beta4 (7.4.2002)
-
Baum-Editor schon (fast) perfekt.
-
Verhalten von Spin korrigiert; liefert jetzt auch null, wenn nichts eingegeben.
-
Pnuts-Context für Child-Panels korrigiert; wenn dieses null, wird das
des Parent-Container verwendet.
Version 0.9.5beta3 (1.4.2002)
-
Das Attribut
linkTable="true"
(für Container) ist neu.
-
Font von Tabelle korrigiert.
-
Viele kleine Fehler rausgebaut; getRootPane sollte jetzt immer funktionieren.
-
Code-Generator an geändertes Framework angepaßt.
-
Der
<Separator/>
für Menüs und Toolbar ist neu.
-
Das Attribut
map="trueValue|falseValue"
kann auch für
Checkboxen verwendet werden.
-
Baum-Editor für Oberflächen ist neu.
Version 0.9.5beta2 (17.3.2002)
-
Umstieg auf JDK 1.4;
Swing braucht jetzt zum Darstellen von Fenstern ca. 20% mehr CPU-Zeit :-(
Dafür etwas weniger Speicher :-|
-
Buttons in der Toolbar haben jetzt die richtige Breite bei Einsatz von Windows
Look & Feel (war Bug in Swing).
-
Spin
ist natürlich neu.
-
Editierbare Tabellen sehen irgendwie komisch aus...
-
Jimi wird nicht mehr gebraucht weil ImageIO jetzt in JDK enthalten
-
Jakarta RegExp wird nicht mehr gebraucht, weil jetzt in JDK enthalten
-
Jaxp wird nicht mehr gebraucht, da XML jetzt in JDK enthalten.
-
Auslieferung von EXML 4.1 statt GLUE. Folglich muß beim Einsatz von
GLUE dieses gesondert installiert und in den Classpath aufgenommen werden.
-
GuiPassword funktioniert nicht richtig; es wird keine ChangedMessage abgesetzt
(Bug in Swing?).
Version 0.9.4b
-
Das Definieren von Ereignissen bei Tabellenspalten (OnChange=) sollte jetzt
auch funktionieren. Zum x-ten Mal einen Fehler bei Swing in
JComponent.getRootPane() gefunden.
-
Pnuts-Scripte dürfen jetzt je Spezifikations-Script enthalten sein;
also auch bei Use und Navigator-Pattern.
Version 0.9.4a (24.2.2002)
Version 0.9.4 (17.2.2002)
-
Document ist neu.
-
Drag-Drop TreeNodes wieder aktiviert.
-
Attribut nodeTitle='true' bewirkt, daß dieser Feldinhalt beim CurrentNode
als Beschriftung übernommen wird.
-
Tree akzeptiert das Drag-Drop von Files.
-
Unterscheidung zwischen Save() und SaveAs()
-
Noch ein Fehler in der DTD gefunden: Split gibt sich auch mit nur einer
Komponente zufrieden.
Version 0.9.3m (10.2.2002)
-
TreeNodes können im Baum verschoben werden: up, down, left, right.
Siehe lib/tutorial/buero/Buero.xml
-
Als zwingende deklarierter TreeContent
<Content nn='true'
/>
wird beim Erzeugen der Parents automatisch angelegt.
-
Beim Erzeugen neuer Knoten wird geprüft, ob ein als nicht mehrfach
definierter Content bereits vorhanden ist und dann in der Auswahl nicht
angeboten.
<Content typ='false' />
-
Fehler aus Tree und TreeNode ausgebaut: Speichern und Laden von XML-Dokumenten
sollte jetzt (hoffentlich!) zuverlässig funktioniern (unter bestimmten
Bedingungen verschwanden Eingaben).
-
TreeElement hat zusätzlich ein Attribut img=, um alle Knoten des selben
Typs mit einem definierten Icon zu versehen.
-
Bei fehlenden Pnuts-Fuktionen wird nur noch auf der Console eine Meldung
ausgegeben.
-
Zusätzliche Short-Cuts können definiert werden: Cursortasten und
Page-Up und -Down.
Version 0.9.3l (20.1.2002)
-
Neue Komponente "TButton".
-
Button und TButton dürfen auch der Toolbar zugeordnet werden.
Version 0.9.3k (13.1.2002)
-
Container können jetzt 16 Ebenen tief geschachtelt werden statt 8.
-
Es ist erlaubt, mehrere Toolbars zu definieren. Diese werden von links nach
rechts hintereinander angeordnet. Leider wird abgeschnitten, wenn sie nicht
auf die Breite des Fensters passen.
Version 0.9.3i (6.1.2002)
-
Fehler mit RadioButtons und OptionGroup als Member von Containern korrigiert.
-
Property-Editor korrigiert.
-
Font Chooser ist neu.
-
Applet zum x-ten: GuiBuilder sollte auch ohne .java.policy halbwegs
funktionieren.
Version 0.9.3h (1.1.2002)
-
Applet oder Application, mit Jimi, ohne Jimi, mit Pnuts oder ohne Pnuts,
mit/ohne Internationalisierung... die Menge der denkbaren Kombinationen wird
langsam unübersichtlich.
Aber jetzt müßte es (hoffentlich!) funktionieren.
-
Jimi und Pnuts werden nicht mehr mit ausgeliefert und müssen gesondert
installiert werden.
-
Pnuts-Scripte können jetzt auch kompiliert werden.
-
KeyEvent, MouseMovedEvent.
Version 0.9.3g (25.12.2001)
-
Die Ereignisse MouseOver und LostFocus sind neu.
-
Internationalisierung hatte Fehler, wenn GuiBuilder asu JAR-File gestartet
wurde.
-
Pnuts übergibt jetzt den Event; fehlende Ereignisse angebunden.
Pnuts Examples beigefügt.
-
Applet und JAR Files (Caching, Classpath) sollten jetzt - endlich! - gut
zusammenpassen.
Version 0.9.3f (23.12.2001)
-
fileOpen- und fileSaveDialog in GuiAPI neu.
-
Die eingebaute Methode delete() ist neu.
-
Umstieg auf GLUE 2.0.1: GuiBuilder läuft auch als Applet wenn
Laufzeitumgebung.
-
Bei einem Label kann - endlich! - die Hintergrundfarbe abweichend gesetzt
werden.
-
Internationalisierung (ist aber noch nicht ganz fertig).
-
Erste Version mit Pnuts!
Version 0.9.3e (14.12.2001)
-
Auch Listboxen können ein PopupMenu haben.
-
Andere LayoutManager (Grid, Border, Flow, Null) eingeführt.
-
GuiWindow.dispose() hilft dem GarbageCollector.
-
Neues Konzept für GuiBuilder als Laufzeitumgebung.
Version 0.9.3d (5.12.2001)
-
GuiInputVerifier ist neu; GuiWindow#verify() ist neu.
-
Package framework.event ist neu.
Umstieg auf Reflection statt UserMessageObserver.
Version 0.9.3c (24.11.2001)
-
<Group> und <Panel> dürfen jetzt auch ein Attribut
eol="false"
haben.
-
Einige überflüssige oder veraltete Klassen entfernt.
-
Weitere Examples hinzugefügt (siehe Verzeichnis
lib/example
).
-
Broken Links in der Doku korrigiert.
-
Alle Oberflächen-Komponenten haben ein neues Attribut "oid"; dieses
kann über XML gesetzt werden und wird auch wieder geliefert (in XML
als Attribut "_oid").
Version 0.9.3b (5.11.2001)
-
Der Editor des GuiBuilder kann jetzt besser Suchen und das auch wiederholt
(F3).
-
Den Fehler aus der Vorversion - einzeln spezifizierte Panels können
nicht angezeigt werden - korrigiert.
-
GuiDoc repariert bezüglich <href... und Unterstreichen von Mnemonics.
Version 0.9.3a (28.10.2001)
-
Der Property-Editor ist neu.
Welche Attribute bei einer Komponente verfügbar sind, steht in
KeywordAttributes.properties
.
-
Der Code-Generator kann jetzt wahlweise für GuiBuilder oder JBuilder
Code generieren.
Der Anwender kann den Code-Generator auch für andere Sprachen (C#, VB,
...) erweitern.
-
Das Verhalten von editierbaren Comboboxen korrigiert (getValue, setValue,
reset).
Version 0.9.3 (7.10.2001)
-
GuiFactory überarbeitet, wobei sich ihr Verhalten nicht geändert
haben darf.
-
Es wird eine Warnung ausgegeben, wenn die Java Version kleiner als 1.3.1
ist.
Version 0.9.2i (30.9.2001)
-
Aus GuiBuilder.properties werden weitere Eigenschaften interpretiert:
-
Language (Default = de)
-
Country (Default=GERMANY)
-
DateFormat (Default=dd.MM.yyyy)
-
TimeFormat (Default=HH:mm)
-
Neue Eigenschaft "Cache_Windows" definiert das Verhalten, ob einmal erzeugte
Fenster in einem Cache vorgehalten werden sollen; default ist "false".
-
Die eingebaute Methode "InsertRow()" fügt von nun an die neue Tabellen-Zeile
unterhalb der selektierten Zeile ein.
-
Zeilen können auf nicht editierbar gesetzt werden.
Version 0.9.2h (1.9.2001)
-
Neues Schlüsselwort
<Column>
für Tabellen-Spalten.
-
Table überarbeitet.
-
Die GuiBuilder.properties haben eine neue Eigenschaft "Reset_Window"; hier
kann eingestellt werden, ob ein aus dem Cache entnommenes Fenster vor der
Anzeige geleert wird (reset).
Version 0.9.2g (24.8.2001)
-
Umstieg auf GLUE-Standard Version 1.1
Version 0.9.2f (20.7.2001)
-
Umstieg auf GLUE 3.1; Umlaute funktionieren wieder mit SOAP (war Bug in GLUE
3.0).
-
Das Element <Row> funktioniert jetzt wieder bei Tabellen.
-
Mit dem Attribut file= können bei Formularen und Dialogen ein Xml-Document
mit Default-Werten in die Oberfläche geladen werden.
-
Das Menü File/Verify im GuiBuilder ist neu; hiermit kann die
Gültigkeit der Syntax gegen die DTD geprüft werden. Diese Prüfung
findet seit dem Umstieg auf electric XML nicht mehr beim Anzeigen statt,
da dieser Parser nicht validiert. Es wird ggf. eine Fehlermeldung ausgegeben,
und der Cursor in die fehlerhafte Zeile gestellt.
Version 0.9.2e (1.7.2001)
-
adapter.GuiAPI
ist nicht mehr static
sondern singleton;
das ist die Voraussetzung, um daraus ein Remote Object zu machen.
-
Der mnemonic Char wird statt durch '&' jetzt mit '%' gekennzeichnet (das
geht bei XML besser).
Version 0.9.2d (21.6.2001)
-
Beim Einsatz von Split-Panels werden die im Script spezifizierten Default-Werte
nicht mehr gelöscht (das funktioniert leider nur einmal, wenn das selbe
Panel mehrfach eingesetzt wird).
-
Tabellen akzeptiern ein Attribut val="filename.tbl"; hier wird eine Textdatei
erwartet, in der zeilenweise die Spalten mit "
|
" getrennt eingegeben
wurden. Es müssen in jeder Zeile gemäß der Tabellendefinition
die entsprechende Anzahl Spalten aufgeführt sein.
Version 0.9.2c (17.6.2001)
-
Es kann in
GuiBuilder.properties
der Eintrag
notNullBackgroundColor=r,g,b
auf die gewünschte
Hintergrundfarbe für Pflichtfelder gesetzt werden.
243,243,192
sieht z.B. sehr schick aus ;-)
-
Mit
checkNotNull=true|false
wird festgelegt, ob beim
LostFocus-Ereignis das Vorhandensein einer Eingabe in Pflichtfeldern
geprüft wird.
-
replaceTabset jetzt hoffentlich wirklich ok (hatte Memory Leak).
-
Intensives Testen mit Profiler; es liegen offenbar keine Memory Leaks vor
(außer bei InternalFrame; das ist aber ein Bug in Swing).
Version 0.9.2b (10.6.2001)
-
replaceTabset jetzt ok
-
Komponenten vom Typ GuiAction (MenuItem, Button) werden wie die GuiComponent
den jeweiligen Container zugeordnet; jetzt dürfen also z.B. Buttons
und PopupMenus auf verschiedenen Registerkarten den selben Namen haben.
-
Bei GLUE 3.0 funktionieren die Umlaute nicht mehr :-( Daher vorerst weiter
mit GLUE 2.3 bis GLUE 3.1 kommt.
Version 0.9.2a (6.6.2001)
-
GuiAPI.replaceTabset funktioniert - fast richtig.
-
Ereignis MouseOver kann spezifiziert werden - bewirkt aber noch nichts.
-
Bei reset() werden alle RadioButtons deselektiert.
Version 0.9.2 (3.6.2001)
-
OK-Button bei createPanel korrigiert.
-
Der Divider des Split Panels wird anhand der Breite der linken Komponente
gesetzt.
-
Umstieg auf GLUE 2.3.
Version 0.9.1a (27.5.2001)
-
Die eingebaute Methode
replace(filename)
ist neu. Siehe auch
GuiAPI.replaceRootPane().
-
Das Ereignis "ItemChanged" wird nicht mehr automatisch ausgelöst; es
muß über
OnChange=
explizit deklariert werden.
-
Code-Generator weiter vervollständigt.
-
Bei GuiTable wird jetzt immer die erste Zeile selektiert (wenn vorhanden).
Version 0.9.1 (18.5.2001)
-
Framework von Vererbung auf Delegation umgestellt; dabei wurde Box entfernt
(wegen idiotischer Vererbungshierarchie von Javasoft).
-
Code-Generator mußte dabei auch umgestellt werden.
-
Umstieg auf JDK 1.3.1 - ist langsamer, kostet dafür aber mehr Speicher
:-(
-
Attribut
invert=
für CheckBoxen ist neu sowie
map=
für ComboBox.
Version 0.9d (16.4.2001)
-
Auch bei Menüs und Menüeinträgen können die Attribute
font, style und point gesetzt werden.
-
GuiAPI neue Methode
replaceTabset
: Ein Registerkartensatz kann
durch einen anderen ausgetauscht werden.
-
Einlesen der Default-Einstellungen (siehe Repository.txt) bei XML-Notation
korrigiert.
-
Aus dem Betragsformat von Money wurde das Währungskennzeichen "DM" entfernt.
-
Bei GuiDoc kleine Unschönheiten repariert (Label hatte gefeht, Icon-Namen
ausgeben wenn keine Label). verwenden wenn Zelle leer.
-
Das Attribut
topic=
gibts nur noch für Formulare.
-
Komponente "Hidden" für versteckte Datenbankinformationen ist neu.
-
Klasse GuiAppletStub entfernt.
Version 0.9c (31.3.2001)
-
Jetzt ist (hoffentlich) alles "final" was final sein soll (Klassen/Methoden).
-
"Accept-Encoding: gzip" bei HTTP-Connections teilweise implementiert.
-
DragDrop aus Tree entfernt; kostet beim Erzeugen des Tree zu viel Zeit!
Version 0.9b (17.3.2001)
-
Das Interface Callbackable in
UserMessageObserver
umbenannt.
-
GuiXAPI erweiterts insbesonders für Tree-Komponente.
-
GuiAPI.setPingInterval ist neu.
-
Die Klasse
GuiTreeRenderer
ist neu; dieses bedeutet, daß
die Knoten im Baum auch individuelle Icons haben können.
Version 0.9a (4.3.2001)
-
Servlet-Adapter komplett überarbeitet; ist jetzt voll generisch.
Version 0.9 (24.2.2001)
-
Der Domainname
guibuilder.de
wurde registriert; darum heißen
jetzt alle Packages de.guibuilder.*
.
-
Für die Server-seitige Anbindung des GuiBuilder gibts
guiserver.jar
; es bestehen keine Abhängigkeiten zu
guibuilder.jar
.
Version 0.8.8a (21.2.2001)
-
Die Attribute
minSize
und maxSize
sind neu.
-
Attribut
size
bei Tree geändert; ist aber noch immer
unschön.
Version 0.8.8 (21.1.2001)
-
Die eingebauten Methoden
select()
und deselect()
sind neu.
-
Die Methode
getAllValuesXml
liefert nur noch die Knoten der
Felder, die auch einen Wert haben, also keine leeren Felder mehr.
Die Werte von Tabellen werden nicht mehr mit dem Tag <Cell>
sondern jetzt - wie alle anderen Einzelfelder auch - als
<Component>
geliefert; guivalues.dtd
wurde
deshalb geändert, ist aber (noch) abwärtskompatibel.
-
Die eingebaute Methode
new()
selektiert jetzt die erste
Registerkarte (wenn vorhanden).
-
Das Interface DBSessionable ist neu; es dient zur Anbingung des GuiBuilder
an eine Datenbank.
-
Das Attribut
search=y
ist neu; es werden hiermit Felder definiert,
die als Suchbegriff für eine Datenbankabfrage dienen können.
-
Mit dem Attribut
regexp=[RegulärerAusdruck]
kann die Eingabe
von Texten überprüft werden.
-
Attribut
maxlen=
in DTD vergessen (weia!).
-
Etliche Attribute für die Code-Generierung nachgetragen; es fehlt aber
noch immer einiges.
-
Die Sichtbarkeit der Framework-Klassen sowie "final" Klassen jetzt hoffentlich
richtig.
-
Bei der Klasse GuiText werden führende und folgende Blancs abgeschnitten.
Version 0.8.7d (10.12.2000)
-
Interface
GuiMuliLineComponent
ist neu.
-
Der Inhalt von GuiMemo und GuiEditor wird in einer CDATA-Section gespeichert,
damit auch TAB und CR/LF erhalten bleiben.
-
Eingebaute Methode new() funktionierte nicht mit GuiEditor.
Version 0.8.7c (30.11.2000)
-
XML-Verarbeitung ca. 30% schneller (
node.getNodeTyp
statt
instanceof
).
-
Parameter-Übergabe (StartWindow, DocumentBase, UiManager, Version) bei
Application wie bei Applet.
-
Attribut
grid0=
in gdl.dtd
nachgetragen.
Version 0.8.7b (4.11.2000)
-
Neue Applet-Parameter DOCUMENTBASE, VERSION, UIMANAGER
Version 0.8.7a (29.10.2000)
-
Label auch mit Attribut
file=
(besonders für HTML).
-
Die Ausrichtung der "automatischen" Labels war bisher immer rechtsbündig;
dieses kann jetzt auch linksbündig gestaltet werden (siehe
guibuilder.properties unter Label_Anchor=; erlaubte Werte sind EAST und
WEST).
Der Dialog zur Pflege der Properties wurde entsprechend geändert.
-
Das temporäre Verzeichnis unter Unix heißt natürlich
/temp
und nicht C:/temp
(Tschuldigung).
-
In der XML-Notation funktioniert das Attribut
case
= auch bei
Containern.
-
Umstieg auf jaxp 1.0.1
Version 0.8.7 (14.10.2000)
-
Dieses ist die erste Version, die auch unter Linux funktioniert :-)
Version 0.8.6h (8.10.2000)
-
Das Menü "Generate GuiDoc" ist deaktiviert, wenn die Bibliothek
JimiProClasses.zip
nicht gefunden wird.
Version 0.8.6g (12.9.2000)
-
Labelausrichtung mit Attribut
grid0
.
-
Neues Attribut
maxlen
.
Version 0.8.6f (3.9.2000)
-
Das XML-Attribute
case=
für Oberflächenvarianten ist
neu.
-
Memos können auch das Attribut
linkCol=
haben.
-
Klasse
GuiTableFormatRenderer
für Date, Time, Money, Number.
Version 0.8.6e (14.8.2000)
-
Attribut
typ=SYSTEM
bei Form neu.
-
Box verhält sich in der Laufzeitumgebung wie Panel.
-
Die Schlüsselworte
ItemCheck
und ItemOption
ersetzen Item typ=CHECK|OPTION
.
-
Die Hardcopy-Funktion in GuiDoc funktioniert jetzt auch mit modalen Dialogen.
-
RootPane auf doubleBuffered gesetzt.
Version 0.8.6d (6.8.2000)
-
Laufzeitverhalten von GuiOption und MenuItemOption korrigiert.
Version 0.8.6c (30.7.2000)
-
Package-Struktur komplett umgebaut; 2/3 der Klassen sind jetzt "package private".
-
Die Übergabe eines Startfensters in der Design-Umgebung (sowohl Applet
als auch Application) geht wieder - nach langer Zeit.
-
Das Interface
design.GuiControler
ist neu.
-
Zur Demonstration des GuiBuilders als Laufzeit-Komponente wurde eine simple
XmDatenbank implementiert.
-
Die Klasse
adapter.Pinger
ist neu für die XML-Kommunikation.
-
Die Server-Komponente läuft auch als Servlet; z.Z. nur mit Sambar 4.4
getestet.
-
Attribut
typ
für ListBoxen.
Version 0.8.6b (9.7.2000)
-
Cache für Grafiken implementiert (siehe Attribut img=).
-
Die Klassen server.GuiXAPI, adapter.GuiAPI und adapter.XmlAPI sind jetzt
(hoffentlich) vollständig.
Version 0.8.6a (2.7.2000)
-
Bei Menüs und Menü-Einträgen kann durch ein vorangestelltes
Zeichen "&" der mnemonic Char des Labels definiert werden.
Beispielsweise "&Daten".
-
Die Methode
GuiAPI.setModified
ist neu.
-
XmlAPI und GuiXAPI wesentlich erweitert.
-
Manifest-File überarbeitet.
Version 0.8.6 (21.6.2000)
-
Neues Package "server"; hierhin ist der HTTPServer umgezogen.
-
Beginn einer Beispiel-Implementierung zur Demonstration der Einbindung des
GuiBuilder über HTTP und XML (siehe Klassen adapter.XmlTestMain und
server.DummyServer).
-
Eigenschaft "defaultTitle" bei GuiWindow ist neu.
Version 0.8.5d (1.6.2000)
-
Es wurde ein einfacher HTTPServer implementiert; er dient vor allem zu
Testzwecken und zur Demo wenn der GuiBuilder als Applet eingesetzt wird.
Version 0.8.5c (21.5.2000)
-
XML-Features erweitert:
GuiAPI hat neue Methoden getAllValuesXml
und
setAllValuesXml
.
Alle Container (Panel, Tree, Table) verfügen jetzt über die
Möglichkeit, ihre Werte als ein XmlDocument zu lesen und zu schreiben.
Für die Validierung der XmlDocumente wird guivalues.dtd
eingesetzt.
Die eingebauten Methoden LoadTree() und SaveTree() sind jetzt
überflüssig; statt dessen ganz normal XmlOpen() und XmlSave() verwenden
(war Baustelle in Version 0.8.5b).
Die Klasse GuiRootPane schrumpfte dadurch um ein Drittel.
-
Mit dem neuen Attribut
lsf=Color
kann die Farbe des Labels bei
den Komponenten gesondert definiert werden, die gemeinsam mit einem Label
spezifiziert werden: Text "Eingabe:" lsf=blue
erzeugt ein blaues
Label vor dem Textfeld.
Version 0.8.5b (14.5.2000)
-
Umstieg auf JDK 1.3! Bei dem Einsatz von älteren Versionen wird der
GuiBuider u.U. nicht mehr funktionieren!
-
GuiAPI um die Methoden
getAllValues
und
getAllModifiedValues
erweitert.
-
GuiDoc generiert zusätzlich Mnemonics und Acceleratoren (besonders für
Menüs).
-
Code-Generator für Java wurde dem geänderten Framework angepaßt.
-
Menüeinträge in Form von Checkboxen oder RadioButtons werden vom
Framework auch wie "normale" CheckBox und RadioButton behandelt.
Version 0.8.5a (6.5.2000)
-
Die Klasse "GuiAPI" hat neue Methoden zur Steuerung der Tree-Komponente (Konten
hinzufügen, selektieren, löschen).
-
Das Interface "GuiMember" ist neu; Interface "GuiContainer" entrümpelt.
-
Das Speichern und Laden des Formularinhalts als XML-Dokument funktioniert
wieder richtig.
Version 0.8.5 (24.4.2000)
-
Listener für Focus, Mouse und Action umgebaut; sollte schneller werden
und weniger Speicher brauchen (leider nur geringfügig).
-
Farben (siehe Attribute "sb" und "sf") dürfen auch im Format "r,b,g"
eingegeben werden.
-
"GuiAPI.getComponent()" ist neu.
-
Internal Frames sind in JDK 1.3 wieder sichtbar (war Änderung in Swing).
-
Schlüsselwort "Applet" und die Klasse "GuiApplet" sind neu.
-
Der GuiBuilder selbst ist mit dem GuiBuilder implementiert; siehe GuiMain
und GuiAdapter
Zum Starten des GuiBuilder jetzt "factory/GuiMain.class" aufrufen.
-
Das Package "database" wurde entfernt.
-
Alle Zugriffmethoden auf den Inhalt von Komponenten (getValue, setValue)
renoviert; Punktnotation sollte jetzt beliebig tief gestaffelt funktionieren.
-
GuiDoc erzeugt Hardcopy von der Overfläche, wenn "Jimi" von Javasoft
installiert ist.
Version 0.8.4a (8.4.2000)
-
Message "OnLostFocus" auch für ComboBox definierbar.
-
Das Verhalten der TextBox auf die Taste "Enter" wurde für JDK 1.3
angepaßt.
-
Tree mit weiteren Attributen versehen: BackgroundColor, Icons, point, style.
-
Das Attribut "font=" ist neu.
Version 0.8.4 (2.4.2000)
-
GuiDoc generiert aus den Scripten eine HTML-Dokumentation (siehe den
Menü-Eintrag "Tools/Generate GuiDoc").
Hierbei werden Kommenate im Format "/** Mein Kommentar */" ähnlich wie
in JavaDoc in den generierten HTML-File mit aufgenommen. Bei XML-Scripten
muß der Kommentar mit <!--* beginnen.
-
Die Konvertierung von GDL nach XML akzeptiert auch einen Makefile, in dem
die Dateiname der zu konvertierenden Scripte zeilenweise angeboten werden;
die Extension muß ".make" heißen.
-
In der Klasse GuiAPI ist die Methode getTree() neu.
-
Es wird auch die Selektion eines Knotens in einer Tree-Komponente an den
Adapter weitergereicht (siehe DummyAdapter.nodeSelected).
-
Fehler bei der Behandlung von Kommentaren korrigiert:
Auch einzeilige Kommentare im Format "/* Mein Kommentar */" funktionieren
jetzt.
Version 0.8.3d (29.2.2000)
-
Fehlermeldungen überarbeitet: Es wird bei einem Runtime Error eine Dialogbox
mit der Fehlermeldung ausgegeben.
Version 0.8.3c (1.2.2000)
-
Die Anordnung der Registerkarten kann gesetzt werden (siehe Attribut typ=).
Version 0.8.3b (15.1.2000)
-
Der ToolTipText von Komponenten die Spalten einer Tabelle sind, wird im
Spaltenkopf angezeigt.
-
Formatangaben für Date und Time.
-
SplitPanel auch vertikal geteilt. SplitPanels dürfen auch geschachtelt
werden.
-
GuiAPI um weitere Methoden ergänzt.
Version 0.8.3a (19.12.1999)
-
Neues Attribut format= bei Number und Money
-
Bei "Date" darf die Eingabe auch ohne Tag sowie ohne Tag und Monat erfolgen.
-
GuiAPI um Methode "enableComp" ergänzt.
Version 0.8.3 (3.12.1999)
-
Package Adapter ist neu.
-
Combo und Listboxen mit den Attributen Point und Style ergänzt.
Version 0.8.2a (23.10.1999)
-
Neues Keyword "Password".
-
Übergeben von Benutzeraktionen an Controler verbessert.
-
Neue Attribute "OnLostFocus" und "OnDblClick".
Version 0.8.2 (16.10.1999)
-
Bei der Verwendung von Mnemonic Chars wird der Buchstabe in Textkomponenten
eingetragen (war Bug in Swing bei JDK < 1.3).
-
Die eingebaute Methode "Exit()" ist neu; sie beendet das Programm.
-
An den externen Controler übergebene Nachrichten überarbeitet,
aber noch immer nicht "rund".
-
Neue Klasse "TestMain"
Sie soll demonstrieren, wie der GuiBuilder als universeller Client eingesetzt
werden kann.
Diese Klasse ist ein "Zwitter", d.h. sie kann sowohl als Application als
auch als Applet verwendet werden.
-
Der FtpClient wurde aus dem GuiBuilder wieder entfernt, damit die entsprechenden
Rechte bei der Java Policy nicht gesetzt werden müssen wenn GuiBuilder
als Applet läuft.
Version 0.8.1e (3.10.1999)
-
Der erste RadioButton wird nicht mehr automatisch selektiert; muß
über Attribut val=true erfolgen.
-
Neues Attribut "cmd=" für RadioButtons.
-
Die Tabellen haben das Attribut "file=" sowie die eingebaute Methode
"EditRow()" neu.
-
Das Interface "Callbackable" um etliche Methoden erweitert.
Version 0.8.1d (26.9.1999)
-
Das Attribut "visible" ist neu.
-
Neues Attribut "linkCol", um Spalten einer Tabelle mit außerhalb der
Tabelle liegenden Komponenten zu verknüpfen.
Version 0.8.1c (12.8.1999)
-
Nachdem Javasoft einen Fehler ausgebaut hat, verfügt der GuiBuilder
nun über eine Menubar.
-
Mit dem Menü "Find..." kann der Editor durchsucht werden.
-
Der Default-Button "OK" funktioniert bei Dialogen.
-
Dialoge werden mit der Taste "Esc" geschlossen.
-
Labels können mit einem mnemonischen Buchstaben versehen werden, wenn
dem gewünschten Zeichen ein "&" vorangestellt wird.
-
Bei fehlerhafter Syntax wird eine Error-Message ausgegeben, und der Cursor
hinter die fehlerhafte Zeile gestellt.
Falsche Attribute werden ignoriert.
-
Die Datei "Repository.txt" ist neu; hier wird das Standard-Verhalten der
Komponenten definiert.
-
Das Laden einer Spezifikation mit dem FileOpenDialog setzt die DocumentBase
jeweils neu.
-
GuiMemo können mit "val=" auch mehrzeilige Texte zugewiesen werden.
-
Neues Attribut "file=(Textfilename)" bei GuiMemo.
-
Die Klasse GuiMemo hat zwei neue Methoden "isModified" und "setModified".
-
Der Editor des GuiBuilders erkennt, wenn sich sein Inhalt geändert hat.
-
Code-Generator überarbeitet (/NESTED; "Components.def" verändert).
Version 0.8.1b (11.7.1999)
-
Das Attribut "val=TODAY" bei Date sowie "val=NOW" bei Time ist neu.
-
Neues Attribut "val=" beim Schlüsselwort "Use".
-
Ein Label kann auch zu einer Statuszeile erkärt werden.
-
Die Eigenschaft "DocumentBase" im Property-Editor ist neu.
Hier kann ein relativer Pfad für den Standardzugriff auf Files eingestellt
werden.
-
Tippfehler bei Farbe "black" korrigiert.
-
Die Klassen "GuiAbstractMenu", "GuiMenu", "GuiMenuItemOption", und "GuiPopupMenu"
sind neu.
-
PopupMenus können jetzt auch Untermenüs haben.
-
Das Menü "Recent" des GuiBuilder hält die letzten 15 geöffneten
Files.
-
Schlüsselwort "Item" geändert:
Das Attribut "chk=" entfällt; statt dessen zwei neue Attribute "typ="
und "val=".
Menüeinträge jetzt auch als RadioButton.
-
Beim Einsatz von JDK 1.2.2 funktionieren CheckBoxen in Tabellen richtig (war
Bug in Swing).
-
HTTP-PUT funktioniert mit Sambar ab Version 4.2beta9 (war Bug in Sambar?).
Version 0.8.1a (11.6.1999)
-
Die eingebauten Methoden "PropLoad()" und "PropSave()" sind neu.
-
Property-Editor:
Über den Menüeintrag "Properties" können Standardeinstellungen
vorgenommen werden (siehe "GuiBuilder.properties").
-
Ausführen von mehr als einer Methode bzw. Folgedialoge im Attribut "file=".
-
Neues Interface "Clickable" für Buttons und MenuItems.
-
Codegenerator überarbeitet:
-
Es wird auch dann ein gültiger Variablenname generiert, wenn das Attribut
"name=" nicht gesetzt ist.
-
Fehler in "Items=" bei List und Comboboxen korrigiert.
-
Die generierte Klasse kann den Dateinamen der Spezifikation erhalten.
-
Für die Codegenerierung eingeführten zusätzlichen Attribute
werden bei der Anzeige von Spezifikationen ignoriert.
-
Automatisches Speichern der Spezifikation vor dem Generieren.
-
Die Anzeige eines Hilfefensters funktioniert auch, wenn GuiBuilder als
Application läuft.
Version 0.8.1 (2.6.1999)
-
GuiBuilder als "Zwitter" implementiert; läuft als Applet oder Application.
-
Neues Attribut "tabstop=n" (Komponente ist nicht mehr mit den Tasten
<Tab> oder <Shift+Tab> erreichbar).
-
Attribut "do=y" bei Textfeldern modifiziert.
-
Neues Attribut "size=<breite>, <höhe>"
-
Das Attribut "ref=*" bewirkt, daß der Name der Komponente als XML-Tag
verwendet wird.
Wurde auch der Name der Komponente nicht angegeben (siehe Attribut "name="),
wird versucht, aus ihrem Label einen gültigen Attributnamen zu generieren.
-
Der Codegenerator versucht gleichfalls bei fehlendem Attribut "name=" aus
dem Label der Komponente einen gültigen Attributnamen zu erzeugen.
-
Fortsetzungszeilen für die "alte" Notation: " -" am Ende bedeutet: Die
Spezifikation geht in der nächsten Zeile weiter.
-
Parser für die "alte" Notation verbessert: Kommentare und das Keyword
"Case" werden richtig behandelt.
-
Das Programm "merkt" sich die Größe des Editor-Fensters.
-
Registerkarten können auch einzeln angezeigt werden; es wird ein
Dummy-Dialog erzeugt mit einer Standard-Größe.
Known Bugs
-
Die ComboBoxen funktionieren in Tabellen nicht richtig wenn sie eine Map
haben; hier fehlt ein ComboBoxModel.
-
Ein "reset()" deselektiert nicht mehr alle RadioButtons.
Hello Sun! This Bug was a Feature!
-
Editierbare ComboBoxen reagieren nicht auf Focus-Ereignisse (erkennbar z.B.
daran, daß der Statuszeilentext nicht gesetzt wird).
Bug in Swing Version 1.3.1 / dieser Bug bleibt uns auch in JDK 1.4 erhalten!
-
Es gibt einige nicht dokumentierte Begrenzungen; so dürfen Container,
Tabsets, Folder und Menüs nicht beliebig tief geschachtelt werden.
-
Der horizontale Scrollbar bei Tabellen funktioniert nicht.
Seitenanfang
home