Die mit dem StarOffice mitgelieferten AutoPiloten sind (fast?) ausschliesslich in StarBasic programmiert. Hierfür wurde auch eine Bibliothek mit Hilfsroutinen angelegt, welche teilweise auch für die Allgemeinheit von Interesse sein kann: tools.sbl. Leider wurden die mitgelieferten Bibliotheken seit den Service-Packs mit Passwort geschützt, so dass sie nicht mehr zugänglich sind. Doch da in früheren Versionen dies nicht der Fall war, werde ich hier mal die nützlichsten Routinen kurz beschreiben.
Achtung: da diese Routinen eigentlich für den internen
Gebrauch in AutoPiloten etc. entwickelt wurden und auch nicht
dokumentiert sind, besteht die Gefahr, dass sie in einer zukünftigen
Version entfallen! Es sei daher jedem Programmierer selber
überlassen, ob er diese verwenden wolle oder nicht.
Alle die nun folgenden Routinen befinden sich im Modul «DlgTools» der Bibliothek «Tools» (also in «Tools.DlgTools»). Interessanterweise hat es darin mehrere identische Routinen unter unterschiedlichem Namen...
|
Routine |
Beschreibung |
|
|---|---|---|
GetPathSeparator$() |
Liefert den Plattform-spezifischen Pfad-Separator zurück: "\" für DOS-Abkömmlinge, "/" für UNIXe, ":" auf dem Macintosh. |
|
ReplaceTokenInString( ByVal TokenToReplace$, ByVal TokenToInsert$, sReplaceIn$) |
Ersetzt in einer Zeichenkette einen «Token» (beliebige Zeichenkette) durch einen anderen. |
|
TokenToReplace$ |
die zu ersetzende Zeichenkette |
|
TokenToInsert$ |
die Ersatz-Zeichenkette |
|
sReplaceIn$ |
die zu durchsuchende Zeichenkette, wird als Referenz übergeben und allenfalls verändert! |
|
ReplaceStringInStrings( aStrings As Strings, ByVal sFind$, ByVal sReplace$) |
Ersetzt in einer Strings-Collection eine Zeichenkette durch eine andere |
|
aStrings |
die zu durchsuchende Strings-Collection, wird als Referenz übergeben und allenfalls verändert! |
|
sFind$ |
die zu ersetzende Zeichenkette |
|
sReplace$ |
die Ersatz-Zeichenkette |
|
StrInStrings%( ByVal aStrings As Strings, ByVal sFind$) |
Funktion; bestimmt, an welcher Position in einer Strings-Collection eine bestimmte Zeichenkette eingefügt ist. Liefert -1 zurück, wenn sFind$ nicht vorhanden ist. |
|
aStrings |
die zu durchsuchende Strings-Collection |
|
sFind$ |
die gesuchte Zeichenkette |
|
PaintPicOnPreview( Preview As Object, ByVal Filename$, ByVal Width%, ByVal Height%, ByVal bDrawFrame%) |
Zeichnet ein BMP-Bild in einem Preview-Feld eines Dialoges. Dabei wird die Plattform-abhängige Skalierung des Dialoges berücksichtigt und das Bild allenfalls zentriert und mit einem einfachen Rahmen versehen. |
|
Preview |
eine Referenz auf das gewünschte Preview-Feld |
|
Filename$ |
der Dateiname inklusive Pfad zur anzuzeigenden BMP-Datei |
|
Width% |
Breite in Pixeln der Graphikdatei |
|
Height% |
Höhe in Pixeln der Graphikdatei |
|
bDrawFrame% |
Boole'scher Wert, ob die Abbildung von einem Rahmen umgeben sein soll (True) oder nicht (False) |
|
RemoveSelected( myListBox As Object) |
Entfernt die in einer ListBox angewählten Einträge. |
|
myListBox |
Referenz auf die gewünschte Listbox |
|
GetIndexOfItem%( myListBox As Object, ByVal sFind$) |
Funktion; sucht in einer ListBox nach der angegebenen Zeichenkette und gibt den Index des Eintrages oder bei fehlendem Erfolg -1 zurück |
|
myListBox |
Referenz auf die gewünschte Listbox |
|
sFind$ |
die gesuchte Zeichenkette |
|
GetSelectionIndexOfListBox%( myListBox As Object) |
Funktion; liefert den Index des ersten gewählten Eintrages einer ListBox zurück. |
|
myListBox |
Referenz auf die gewünschte Listbox |
|
GetSelectionsInListBox%( myListBox As Object) |
Funktion; liefert die Anzahl ausgewählter Einträge einer ListBox zurück. |
|
myListBox |
Referenz auf die gewünschte Listbox |
|