VOTools for Visual Objects  
and Vulcan.NET  

bBrowser => Patches => bBrowser 2 => bBrowser 2 - Patch    




 bBrowser 2 - Patch v2.0.9.0
   
Datum: 09.06.2012
VO-Versionen: Visual Objects 2.8 SP4 (Build 2838)
Visual Objects 2.8 SP3 (Build 2833-2837)
Visual Objects 2.8 SP2 (Build 2830-2832)

Visual Objects 2.7b
CA-Visual Objects 2.6
Hinweise:

Für die Installation wird die Seriennummer und die Datei bBrw20.DLL von der Original-Version des bBrowser 2 benötigt.

Download:


bBrowser 2
(Professional)
[7,91 MB]

 
 
 Patch-Historie   
2.0.9
  • bBrowser und Infowerte
    Korrigiert einen Fehler bei der Ermittlung des Status für die Infowerte.

  • bBrowser:ViewLogicAs
    Wenn für den Zugriff bBrowser:ViewLogicAs der Wert #Normal gesetzt wurde, dann wurden die logischen Werte im aktuellen Datensatz nicht korrekt dargestellt.

  • bBrowser und Zelleingabe
    Korrigiert einen Fehler, der beim Einfügen aus der Zwischenablage in das Eingabe-Control auftreten konnte.

  • bBrowser und DBServer mit Scope
    Korrigiert einen Fehler, der auftreten konnte, wenn im DBServer ein Scope definiert war und der Server mittels Skip() auf EoF positioniert wurde. In diesem Fall stimmte die RecNo nicht.

  • bDBServer:SetOrder() und aktiver bDBServer:RecordFilter
    Korrigiert einen Fehler, wenn bei einem aktiven bDBServer:RecordFilter eine Sortierung mittels bDBServer:SetOrder() nicht aktiviert werden konnte.

  • bBrowser und AdoServer:SetFilter()
    Korrigiert einen Fehler, der auftreten konnte, wenn in einem AdoServer ein Filter auf Bookmarks definiert war und dann ein Feldwert in einem Datensatz geändert wurde.

  • bArrayServer:FieldPut()
    Wenn eine Zahl mit Nachkommastellen in ein numerisches Feld ohne Nachkommastellen geschrieben wurde, dann wurden auch die Nachkommastellen im Feldwert gesetzt. Dieser Fehler ist nun behoben. Der numerische Wert wird mit der Funktion Integer() in eine Ganzzahl umgewandelt und dann erst im Feld gesetzt.
2.0.8
  • bBrowser und Visual Styles
    In Windows Vista wurden die Visual Styles nicht immer korrekt angezeigt.

  • bBrowser und Zelleingabe
    Fehler beim Einfügen eines Wertes aus der Zwischenablage in ein numerisches Eingabe-Control behoben.

  • bBrowser und Zelleingabe
    Das Eingabe-Control für eine Zelleingabe wurde nicht immer zerstört.

  • bBrowser:OpenColumn()
    Fehler beim Einfügen einer Datenspalte behoben.

  • bBrowser:SetCurrentColumn()
    bBrowser:SetFirstColumn()
    bBrowser:SetLastColumn()

    Wenn die Methoden während einer Zelleingabe aufgerufen werden, dann wird die Zelleingabe beendet. Kann die Zelleingabe nicht beendet werden, dann wird die Methode mit FALSE abgebrochen.

  • bBrowser und Tastaturbefehle (bKeyCommand)
    Nach der Ausführung eines bKeyCommand wird nun geprüft, ob die ALT-Taste gedrückt wurde. In diesem Fall werden alle WM_SYSCHAR Events aus der Event-Queue gelöscht. Dies ist notwendig, weil ansonsten der Hotkey eines Menüs ausgeführt werden könnte.

  • bBrowser und RTF-Text
    Ein RTF-Text als Spaltenwert wurde nicht immer korrekt umgebrochen.

  • bBrowserColumn:CalculateHeightOfCaption()
    bBrowserColumn:CalculateHeightOfFooter()

    Bei einem RTF-Text wurde das temporäre Objekt der Klasse bRTFDocument nicht wieder freigegeben.

  • bVirtualFieldColumn:DataPut()
    Die Prüfung, ob ein Wert leer ist, erfolgt nicht mehr mit der Funktion Empty() sondern mit der Methode bDataColumn:IsValueEmpty().

  • bDBServer:GoBottom()
    Wenn der Server ein Child einer selektiven Relation war und die Relation keine Datensätze im Child enthielt, dann wurde von der Methode bDBServer:GoBottom() der Wert FALSE zurückgegeben. Die Methode gibt jetzt nur noch FALSE zurück, wenn ein Fehler aufgetreten ist.
2.0.7
  • bBrowser und Blockmarkierung
    Behebt verschiedene Probleme bei der Verwaltung der Blockmarkierung.

  • bBrowser:RecordSave()
    Die Methode hat nicht den BoF- und EoF-Status gesichert.

  • bBrowser:RecordRestore()
    Bei einem SQL-Datenserver wurde der EoF-Status nicht korrekt restauriert.

  • bBrowser und ToolTips
    Bei dem ToolTipMode #Column konnte es vorkommen, dass leere ToolTips angezeigt wurden. Dieses Problem ist nun behoben.

  • bBrowser und Titel
    Korrigiert einen Fehler bei der automatischen Berechnung der Titelhöhe.

  • bBrowser und variable Zeilenhöhe
    Korrigiert einen Fehler bei der automatischen Berechnung der Zeilenhöhe.

  • bBrowser:Destruct()
    Wenn die Spaltenobjekte zerstört werden, dann werden nun auch die internen Counter für die Anzahl der Spaltenobjekte auf 0 gesetzt.
2.0.6
  • bBrowser und bDataColumn
    Beim Aufruf der Methode bBrowser:Use() oder beim Zerstören des bBrowser werden nun auch die bereits vorhandenen Datenspalten zerstört.

  • bBrowser:SelectionSet()
    Korrigiert mehrere Fehler beim Aufruf der Methode bBrowser:SelectionSet() mit den Argumenten #All bzw. #Invert.

  • bBrowser:SetRowHeight()
    Korrigiert einen Fehler in der Methode bBrowser:SetRowHeight(), der zu einem Programmabsturz führen konnte.

  • bBrowser:Resize()
    Bei eingeschalteter variabler Zeilenhöhe wurde der bBrowser nicht immer korrekt neu gezeichnet.

  • bDataColumn:CalculateWidth()
    Korrigiert einen Fehler, wenn eine Spalte mit einem Feld in einer SQL-Tabelle vom Datentyp varchar(max) verknüpft ist.
2.0.5
  • bBrowser und Mehrfachselektion
    Korrektur eines Fehlers bei der Mehrfachselektion, der dazu führte, dass nicht alle selektierten Zeilen korrekt erkannt wurden.

  • bBrowser:EditCancel()
    Unter Windows XP und Windows 95 wurde das Eingabe-Control nicht immer zerstört.

  • bBrowser:GetTitleAlignment()
    Wenn im Zugriff bBrowser:TitleView:Alignment keine Ausrichtung definiert war, dann wurden bisher auch die Ausrichtungen in den Zugriffen bBrowser:CaptionView:Alignment und bBrowser:DataView:Alignment berücksichtigt. Nun wird nur noch die Ausrichtung aus dem Zugriff bBrowser:TitleView:Alignment verwendet.

  • bBrowser:GetTitleBackground()
    Wenn im Zugriff bBrowser:TitleView:Background kein Brush definiert war, dann wurden bisher auch die Brushs in den Zugriffen bBrowser:CaptionView:Background und bBrowser:DataView:Background berücksichtigt. Nun wird nur noch der Brush aus dem Zugriff bBrowser:TitleView:Background verwendet.

  • bBrowser:GetTitleFont()
    Wenn im Zugriff bBrowser:TitleView:Font kein Font definiert war, dann wurden bisher auch die Fonts in den Zugriffen bBrowser:CaptionView:Font und bBrowser:DataView:Font berücksichtigt. Nun wird nur noch der Font aus dem Zugriff bBrowser:TitleView:Font verwendet.

  • bBrowser:GetTitleForeground()
    Wenn im Zugriff bBrowser:TitleView:Foreground keine Color definiert war, dann wurden bisher auch die Color in den Zugriffen bBrowser:CaptionView:Foreground und bBrowser:DataView:Foreground berücksichtigt. Nun wird nur noch die Color aus dem Zugriff bBrowser:TitleView:Foreground verwendet.

  • bBrowser:GetTitleGrid()
    Wenn im Zugriff bBrowser:TitleView:Grid kein Grid definiert war, dann wurden bisher auch die Grids in den Zugriffen bBrowser:CaptionView:Grid und bBrowser:DataView:Grid berücksichtigt. Nun wird nur noch der Grid aus dem Zugriff bBrowser:TitleView:Grid verwendet.

  • bBrowser und Darstellungsart #CheckBox
    Das Häckchen von Checkboxen wird nun nur noch in der Vordergrundfarbe dargestellt, die für die Datenspalte definiert ist. Bisher wurde auch die Vordergrundfarbe verwendet, die auch für den Browser definiert war. Wenn beispielsweise durch eine Farbbedingung eine helle Vordergrundfarbe (z.B. Gelb) für den Browser definiert war, für die Datenspalte aber keine eigene Vordergrundfarbe angegeben wurde, dann wurde das Häckchen in der Vordergrundfarbe der Farbbedingung dargestellt. Dies führte dazu, dass das Häckchen kaum zu erkennen war.

  • bBrowser:SetInfo() und Klasse SQLSelect
    Wenn der bBrowser mit einen Server der Klasse SQLSelect verknüpft wurde, dann wurden die Info-Texte nicht angezeigt.
2.0.4
  • bBrowser:GetDefaultFont()
    Die neue Methode erzeugt ein Objekt der Klasse Font und gibt dieses zurück. Das Font-Objekt definiert die Standard-Schrift, die im bBrowser verwendet wird.

    ACHTUNG !!!
    Mit jedem Aufruf der Methode wird ein neues Font-Objekt erzeugt.


  • bBrowser und Zelleditierung im relationierten Server
    Wenn im bBrowser ein Zellwert in einem relationierten Server editiert wurde, dann wurde der geänderte Feldwert nicht angezeigt. Stattdessen wurde der alte Feldwert angezeigt.

  • bBrowser und Grid
    Ein horizontales oder vertikales Grid wurde nicht korrekt gezeichnet.

  • bBrowser:SelectedForeground und Checkboxen
    Wenn die Farbe für bBrowser:SelectedForeground identisch mit der Hintergrundfarbe von MS-Windows war, dann wurde der Hacken in der Checkbox nicht angezeigt.

  • bBrowser und DBServer:EoF
    Behebt ein Problem, bei dem der Zugriff DBServer:EoF den Wert FALSE zurück gibt, obwohl der Server auf EoF steht.
2.0.3
  • bBrowser:SelectionCellCount
    Der Zugriff bBrowser:SelectionCellCount gab nicht das korrekte Ergebnis zurück, wenn komplette Zeilen selektiert waren.

  • bBrowser:CurrentRowBackground
    bBrowser:CurrentRowForeground
    bBrowser:InactiveCurrentRowBackground
    bBrowser:InactiveCurrentRowForeground

    Die Zugriffe werden nun auch beim bBrowser:CurrentMode #Line berücksichtigt. Bisher wurden die Zugriffe nur für die Werte #Cell und #FirstCell unterstützt.

  • bBrowser:AutoRefresh() und SQL
    Wenn der bBrowser:ServerType den Wert #SQL enthält und dann ein bBrowser:AutoRefresh() ausgeführt wird, dann wird nun der Datenserver wieder auf den vorher aktiven Datensatz positioniert.

  • bBrowser und MouseButtonDown()
    Wenn die linke Maustaste auf einer Spaltenbezeichnung oder einem Spaltenfuß gedrückt wird, dann wird nicht mehr das Event WM_NCLBUTTONDOWN gesendet sondern das Event WM_LBUTTONDOWN. Dies führt dazu, dass nun die Methode MouseButtonDown() im bBrowser aufgerufen wird. Das gleiche gilt auch für die anderen Maustasten.

  • bBrowser und MouseButtonDoubleClick()
    Wenn die linke Maustaste doppelt auf einer Spaltenbezeichnung oder einem Spaltenfuß gedrückt wird, dann wird nicht mehr das Event WM_NCLBUTTONDBLCLK gesendet sondern das Event WM_LBUTTONDBLCLK. Dies führt dazu, dass nun die Methode MouseButtonDoubleClick() im bBrowser aufgerufen wird. Das gleiche gilt auch für einen Doppelklick mit den anderen Maustasten.

  • bDSSelection und ADS
    Der ADS arbeitet in der Funktion Str() immer mit dem '.' als Dezimalseparator. Dies ist unabhängig davon, welche Einstellung mit der Funktion SetDecimalSep() in VO definiert wird. Aus diesem Grund wird nun vor dem Auswerten der Selektion (siehe Methode bDSSelection:Update()) der Dezimal-Separator auf das Zeichen '.' gesetzt und anschließend wieder restauriert.

  • bSample - DataBrowser.AEF
    In den Klassen bDataWindow und bDataDialog und den davon abgeleiteten Klassen wurde NICHT die Methode BrowseViewInit() aufgerufen, wenn das Fenster als erstes in der BrowseView initialisiert wurde. Dieses Problem wurde nun behoben. Damit die Methode BrowseViewInit() aufgerufen wird, wurde die Methode Use() in den Klassen bDataWindow und bDataDialog überlagert.
2.0.2
  • bBrowser:PropertyGet(), bDataColumn:PropertyGet()
    Wenn die Methode PropertyGet() mit einem Default-Wert aufgerufen wurde und die übergebene Property nicht existierte, dann wurde der Default-Wert nicht immer zurückgegeben.

  • bBrowser und die RETURN-Taste
    Wenn beim Drücken der RETURN-Taste in der aufgerufenen Callback-Methode CellDoubleClick() das Fenster zerstört wurde, dann führte dies zu einem Programmabsturz im bBrowser.

  • bBrowser und Mehrfachselektion
    Wenn bei aktiver Mehrfachselektion auf den Selector geklickt wurde, stürzte der bBrowser mit einem Laufzeitfehler ab.

  • bBrowser und bFontCondition
    Die bFontCondition wurden nicht korrekt verarbeitet, sodass das Ergebnis einer zutreffenden Bedingung nicht angezeigt wurde.

  • bBrowser und Zelleingabe
    In manchen Fällen wurde das Eingabe-Control beim Beenden einer Zelleingabe nicht zerstört. Dies führte dazu, dass ein weißer Bereich im bBrowser angezeigt wurde.
Copyright © 2003-2015 BEFO GmbH