31 Version A.04.02.b
31.1 Motif
- Gnats 8744: Nach Betätigung der rechten Maustaste bei insensitiven Objekten mit Popup-Menü reagiert der X-Server nicht mehr.
- Gnats 8661: Bei .dialogbox := true werden Kinderobjekte in falscher Reihenfolge dargestellt.
- Gnats 8785: Focushandling funktioniert nicht bei Poptext, wenn Menü geöffnet wird.
- Gnats 8786: Zu viele Ereignisse, wenn Poptext (style edittext) geöffnet wird. Jetzt kommen die Ereignisse, wenn Poptext mit Strg + Cursor Abwärts geöffnet wird, nicht mehr.
- Gnats 8788: Das activeitem kann bei Poptext mit Format nicht gesetzt werden.
- Gnats 8792: Wenn ein Poptext das erste Mal geöffnet wurde, kam beim Schließen ein zusätzliches Focus-Ereignis.
- Gnats 8793: Wenn ein Poptext geöffnet ist, kann ein zweiter Poptext nicht über Tastatur bedient werden, wenn zweiter mit der Maus geöffnet wurde ohne den ersten zu schließen. Das Verhalten wurde jetzt so angepasst, dass es nicht mehr möglich ist den geöffneten Poptext ohne ihn zu schließen zu verlassen.
- Gnats 8804: Wird der Poptext (.style:=poptext), zum ersten Mal mit der Leer-Taste geöffnet, ist dieser Poptext mit der Tastatur unbedienbar.
- Gnats 8855: Wenn man das Menü im IDMED2 anwählt, kam es zu einem ASSFAIL.
- Gnats 8843: Beim Laden eines Dialogs, in dem ein Fenster als Dialogbox definiert ist, stürzte der IDM ab.
- Gnats 8754: Wurde dem .picture-Attribut eines Images direkt eine Datei und keine Tile-Ressource angegeben und dem Attribut dann später null zugewiesen, kam es zum Assfail. Jetzt wird ein leeres Image korrekt dargestellt.
- Gnats 8668: Wenn .topitem in einer Listbox auf das letzte Element der Liste gesetzt wird, verschwindet dieses Element teilweise ganz aus dem dargestellten Bereich der Liste.
31.2 Windows NT
- Ein Tile mit einer Bitmap, die bis zu 5 Pixel kleiner (ohne Rahmendekor) war, als ihr Image-Objekt, wurde sie nicht richtig im Image zentriert.
- Gnats 8844: Das Problem ist eigentlich ein Fehler von Word 2000. Laut OLE-Spec darf ein Control nicht abstürzen, wenn es nach einem Interface gefragt wird. In diesem Fall passierte es aber, wenn Word2000 nach hr=pCPC->FindConnectionPoint (IID_IPropertyNotifySink, &pCP);gefragt wird. Jetzt wird bei Word 2000 darauf verzichtet, den IPropertyNotifySink zu etablieren. Die Verbindung kommt zustande, aber IDM wird nicht mehr über die Änderungen der Properties informiert!
- Die OLE-Option des IDM benötigt jetzt eine weitere System-Bibliothek, die "advapi32.dll". Diese Bibliothek muss jetzt beim Binden einer Applikation hinzugelinkt werden!
- Gnats 8397: Bestimmte Gif87a-Bilder konnten vom IDM Win32 nicht gelesen werden. Der Gifreader wurde so verändert, dass es ihm jetzt auch möglich ist, den Extensionblock eines Gifs zu lesen.
- Gnats 8845: Wurde der DDM-Server mit der Option -IDMserve gestartet, so beendeten sich neu erzeugte Serverprozesse nicht, wenn die Netzwerkverbindung zu einem Client verloren ging. Jetzt geschieht dies nach Ablauf der vom Betriebssystem vorgegebenen KeepAliveTime. (Der Default unter WinNT4 beträgt ca. 2 Std.)
- Gnats 8851: Beim Image-Objekt funktioniert das Dragging beim Drag&Drop jetzt wieder.
- Gnats 8775: Wurde mittels :delete am Treeview der aktive Eintrag gelöscht, kam es zu einer Fehlermeldung vom Windows-WSI, so dass die Setzung auf .activeitem nicht durchgeführt werden konnte.
- Gnats 8827: Wurde eine insensitive Scrollbar sichtbar geschaltet, so wurde sie sensitiv dargestellt. Jetzt wird sie insensitiv dargestellt.
- Gnats 8731: Nicht skalierbare Tiles wurden in Image-Objekten, die kleiner als das Tile waren, nicht richtig zentriert dargestellt, sondern um je zwei Pixel in x- und y-Richtung vom Zentrum verschoben dargestellt.
- Gnats 8754: Wurde dem .picture-Attribut eines Images direkt eine Datei und keine Tile-Resource angegeben und dem Attribut dann später null zugewiesen, kam es zum Assfail. Jetzt wird korrekt ein leeres Image dargestellt.
- Gnats 8837: Wurde einem Image, bei dem keine Größe angegeben war und das bereits ein picture darstellte, ein neues skalierbares Tile zugewiesen, berechnete das Image seine Größe nicht neu nach der Originalgröße des skalierbaren Tiles, sondern skalierte das Tile auf die Größe des zuvor dargestellten pictures. Jetzt wird die Größe korrekt neu berechnet.
- Wies man einem Image dynamisch aus eine Regel heraus eine andere Tile-Resource als .picture zu, kam es zu einer Fehlerausgabe [WS didn't process...] im Tracefile.
- Bei einem Image mit checkbox-Style, das keine Größenangaben besaß, berechnete sich die Größe nach dem picture, das im Moment des Sichtbarwerdens aktiv war. Jetzt wird immer die Größe des Defaultpictures zur Größenberechnung des Image-Objekts verwendet.
-
Gnats 8809: Da neuere Windows-Versionen bzw. Service-Packs beim Zerstören eines Windows-Objekts noch Messages verschicken, kam es dazu, dass auf ein bereits teilweise zerstörtes IDM-Objekt noch ein Fokus gesetzt wurde. Der interne Zugriff auf das vermerkte, aber nicht mehr existente, Fokusobjekt führte dann zu einem Assfail. Jetzt wird die Fokusbehandlung erst nach dem endgültigen Objektdestroy durchgeführt.
Achtung
Dadurch kann sich die Reihenfolge einiger Ereignisse beim Unsichtbarschalten von Objekten verändern!
- Gnats 8621: Horizontale Spinbox-Buttons sind jetzt um 50% breiter, so dass bei Windows-Standardeinstellung die Pfeile darauf deutlich erkennbar sind.
- Die Layoutbox ordnet jetzt auch Spinboxen überschneidungsfrei an.
- Gnats 8462: dbselect-Ereignis für die Objekte window, groupbox und layoutbox. In thisevent.x/y stehen bei diesem Ereignis die Koordinaten des Mauszeigers zum Zeitpunkt des Doppelklicks.
- Gnats 5578: Von nun an ist es möglich, GIF89a's auch transparent darzustellen.
31.3 Java-Window-Interface
- Gnats 8875: MDI Kindfenster wurden initial nicht aktiviert.
- Die Rasterberechnung aus einem Referenzfont (.reffont) wurde verändert. Jetzt wird intern die Länge eines Referenzstrings berechnet und durch die Anzahl der Zeichen dividiert. Rastergröße wird deswegen etwas schmaler und entspricht damit eher der Größe in anderen WSIs (Windwos und Motif). Für bestehende Kunden Dialoge, wird deswegen die Portierung auf das JAVAWSI einfacher.
- Bei den Fonts wird jetzt Referenzstring unterstützt.
- Gnats 8832: Wurde ein Dialog mit Tablefields als Applet im Internet Explorer (VM von Microsoft) ausgeführt, so wurden die Tablefields nicht dargestellt.
- Gnats 8833: Wurden Menüs dynamisch umgebaut (einzelne Items hinzugefügt, .visible umgeschaltet, usw.), so wurden die Separatoren falsch eingeordnet.
- Verschlüsselung im Java-WSI: In der Verschlüsselungsklasse gibt es folgende Variablen, die nach außen sichtbar sind und belegt werden müssen: public Socket socket, enthält die Angaben für den geöffneten Socket. public String message, Fehlermeldung. muss mindestens mit einem Blank belegt sein.
31.4 Kern
- Gnats 8857: Objektleak beim Aufruf der Eventloop entfernt. Bei jedem Aufruf der Eventloop blieb ein Thisevent-Objekt im Speicher liegen. Jetzt wird das Objekt vor dem Verlassen der Loop wieder zerstört.
- Gnats 8790: Assfail beim Setzen von .format am Tablefield mit DM_SetVectorValue(), wobei am Tablefield eine Formatfunktion benutzt wird. Hinweise für IDM-Programmierer: Die Attribute wie .formatfunc sind eigentlich obsolet. Die Formatfunktionen sollten besser in Formatressourcen gesetzt werden und die Formatressource dann an dem Objekt in .format gesetzt werden. Das ist nicht nur sicherer, sondern auch effizienter.
- Gnats 8822: Beim Resolving von benutzerdefinierten Attributen werden 64bit-Stringpointer nun richtig gespeichert.
- Gnats 8567: Assfail beim Ersetzen von ungültigen ObjektIDs wird jetzt umgangen.
- Gnats 8840: .dockable[]-Atttribut wird auch ins Binärfile geschrieben (neues Binärformat).
- Gnats 8856: Kein Assfail mehr beim Lesen des Binär-Interfaces von Modulen, die hierarchische, geerbte Kind-Records exportieren.
- Gnats 8846: Modellbildung mit dem .model-Attribut wird nun richtig im neuen Binärformat abgebildet (Kinder werden nicht geerbt, nur Attribute).
- Gnats 8858: nlscat-Nummer wird nun auch im neuen Binärformat gespeichert.
- Gnats 8830: Wurde durch Gnats 8754 gelöst.
31.5 Debugger
- Gnats 8576: Importierte Module werden beim Laden in die Liste der benannten Regeln innerhalb des Debuggers aufgenommen, auch wenn die Regeln des Moduls, das das geladene Modul importiert, schon lange vorher in die Liste aufgenommen wurden. Die Fehlermeldung Invalid argument 'r0' (neither line nor rule) erscheint innerhalb des Debuggers nicht mehr, wenn eine Regel, die in einem neu geladenen Modul steht, dargestellt und ausgeführt werden soll.