Neue Befehle & Variablen in der Version 14.0 des Ebus-Generator-C
Version 14.0

RTF-Viewer ist jetzt auch bei C-Programmen möglich.
Bei
Listboxen ist Mehrfachauswahl möglich.
Neue Befehle in der Version 14.0

Funktion
SET_VISIBLE(<HANDLE>,<MODUS>)
<HANDLE> = <NUM-AUSDRUCK>
<MODUS> = <NUM-AUSDRUCK>
SET_VISIBLE macht das durch <HANDLE> spezifizierte Fenster unsichtbar, wenn <MODUS> = 0 ist und sichtbar, wenn <MODUS> <> 0 ist.
SET_VISIBLE liefert als Ergebnis 1, wenn <HANDLE> auf ein existierendes
Fenster verweist, andernfalls -1.
Diese Funktion ist nur unter Java verfügbar, sonst liefert sie als Ergebnis -1.

Compileranweisung
#INVISIBLE
#INVISIBLE führt dazu, dass das Main-Window beim Start unsichtbar ist.
Das Main-Window wird erst sichtbar, wenn die Funktion SET_VISIBLE(0,1)
ausgeführt wird.
Diese Compileranweisung hat nur unter Java eine Wirkung.

Funktion
SET_LOCATION(<HANDLE>,<Y-POS>,<X-POS>)
<HANDLE> = <NUM-AUSDRUCK>
<Y-POS> = <NUM-AUSDRUCK>
<X-POS> = <NUM-AUSDRUCK>
SET_LOCATION verschiebt das durch <HANDLE> spezifizierte Fenster an die
absolute Bildschirmposition <Y-POS>,<X-POS>.
<Y-POS> und <X-POS> sind in Bildschirmpixel anzugeben.
<HANDLE> kann eine Windowtiefe oder die Identifizierungsnummer eines
NOWAIT-Windows oder eines Splitwindows enthalten.
SET_LOCATION liefert als Ergebnis 1, wenn das Fenster <HANDLE> existiert,
andernfalls -1.
Diese Funktion ist nur unter Java verfügbar, sonst liefert sie als Ergebnis -1.

Anweisung
GR_BUTTON_BACKGROUNDGRADIENT = <ROT1>,<GRUEN1>,<BLAU1>,<ROT2>,<GRUEN2>,<BLAU2>,<RICHTUNG>
Legt unter Java einen Farbverlauf für Buttons fest.

Compileranweisung
#ADDCLASS = <KLASSENDATEI>
<KLASSENDATEI> = "<ZEICHENKETTE>"
Die <KLASSEN-DATEI> wird beim Compilieren des Javaprogramms und beim
Erzeugen der jar-Datei eingebunden.
Diese Compileranweisung hat nur eine Wirkung unter Java.

Funktion
TIME_TO_SECONDS(<UHRZEIT>)
<UHRZEIT> = <STRING-AUSDRUCK>
Wandelt die <UHRZEIT> in Sekunden um.
<UHRZEIT> muss in folgendem Format geliefert werden: HH:MM:SS
Eine Uhrzeit im Format XX (ohne Doppelpunkte, z.B. 12) wird als Stunden
interpretiert.
Eine Uhrzeit im Format XX:YY wird als Stunden und Minuten interpretiert.

Funktion
STRTIME$(<SEKUNDEN>)
<SEKUNDEN> = <NUM-AUSDRUCK>
Wandelt <SEKUNDEN> in eine Uhrzeit im Format HH:MM:SS um.

Funktion
TIME_ADD$(<UHRZEIT>,<WERT>[,<TYP>])
<UHRZEIT> = <STRING-AUSDRUCK>
<WERT> = <NUM-AUSDRUCK>
<TYP> = <NUM-AUSDRUCK>
TIME_ADD$ addiert zur <UHRZEIT> Stunden, Minuten oder Sekunden und liefert
als Ergebnis die neue Uhrzeit als String.
<TYP> legt fest, ob <WERT> Stunden, Minuten oder Sekunden enthält.
<TYP> = 1: <WERT> enthält Stunden
<TYP> = 2: <WERT> enthält Minuten
<TYP> = sonst: <WERT> enthält Sekunden.
Fehlt der Parameter <TYP>, so ist das gleichbedeutend mit <TYP> = 0.

Funktion
GET_SPLIT_WINDOW_DIVIDER_PIXEL(<SPLIT-HANDLE>)
Liefert die Position des Trennbalkens des Splitwindows in Pixel.

Funktion
GET_SIZE$(<TYP>,<HANDLE>)
<TYP> = <NUM-AUSDRUCK>
<HANDLE> = <NUM-AUSDRUCK>
Diese Funktion liefert die Größe des durch <HANDLE> bezeichneten Fensters.
GET_LOCATION$ liefert durch ; getrennt die Größe in Zeilen und Spalten.
Ist <TYP> = 0, so wird Gesamtgröße des Fensters geliefert, andernfalls
nur die Größe des Fensterinneren.
<HANDLE> enthält die Windowtiefe oder die Identifizierungsnummer eines
NOWAIT-Fensters.
Diese Funktion hat nur unter Java eine Wirkung, sonst liefert sie als Ergebnis
immer den Leerstring "".

Funktion
SET_SIZE(<TYP>,<HANDLE>,<ZEILEN>,<SPALTEN>)
<TYP> = <NUM-AUSDRUCK>
<HANDLE> = <NUM-AUSDRUCK>
<ZEILEN> = <NUM-AUSDRUCK>
<SPALTEN> = <NUM-AUSDRUCK>
SET_LOCATION ändert die Größe des durch <HANDLE> spezifizierten Fensters. <ZEILEN> und <SPALTEN> legen die neue Größe des Fensters in Zeilen und
Spalten fest.
Ist <TYP> = 0, so bezieht sich die Größe auf das gesamte Fenster, andernfalls
nur auf das Fensterinnere.
<HANDLE> kann eine Windowtiefe oder die Identifizierungsnummer eines
NOWAIT-Windows oder eines Splitwindows enthalten.
SET_SIZE liefert als Ergebnis 1, wenn das Fenster <HANDLE> existiert,
andernfalls -1.
Diese Funktion ist nur unter Java verfügbar, sonst liefert sie als Ergebnis -1.
Neue Variablen in der Version 14.0

EBUS_COL2
Wenn Text in einem Eingabefeld markiert ist, enthält EBUS_COL die
Anfangsposition und EBUS_COL2 die Position des ersten nicht mehr markierten
Zeichens. Ist kein Text markiert, enthalten EBUS_COL und EBUS_COL2 die aktuelle
Cursorposition.

EBUS_PATH_SEPARATOR$
Diese Variable enthält das Trennzeichen für Pfadnamen, z.B. in der
Environmentvariablen PATH oder CLASSPATH.
Unter Windows enthält EBUS_PATH_SEPARATOR$ den Strichpunkt ";",
unter UNIX/Linux den Doppelpunkt ":".

EBUS_WINDOWPOS
EBUS_WINDOWPOS legt unter Java fest, ob sich die Anweisung WINDOWPOS(0,0) bei einem gesplitteten Mainwindow auf das ganze Mainwindow oder nur den Teil
des Mainwindows bezieht, in dem sich das ursprüngliche Mainwindow vor dem Splitten befindet.
Ist EBUS_WINDOWPOS = 0, so führt WINDOWPOS(0,0) dazu, dass das Window in der
Mitte des gesamten Mainwindows angezeigt wird.
Ist EBUS_WINDOWPOS <> 0, so führt WINDOWPOS(0,0) dazu, dass das Window in der
Mitte des Teilfensters angezeigt wird, das das ursprüngliche Mainwindow vor
dem Splitten enthält.
EBUS_WINDOWPOS hat nur eine Wirkung unter Java und wird beim Programmstart
mit 0 vorbelegt.

EBUS_VISIBLE
Das nächstes Window ist unsichtbar, wenn EBUS_VISIBLE = 0.

EBUS_PREVIEW_TITLE$
EBUS_PREVIEW_TITLE$ enthält die Fensterberschrift fr die Druckvorschau.
Werden bei GR_SHOW_LPRECORDER_FILE mehrere Dokumente angezeigt, so sind die
einzelnen Titel in EBUS_PREVIEW_TITLE$ durch Den Strichpunkt ";" zu trennen.

EBUS_PRIMARY_KEY_ONLY
Wird diese Variable = 1 gesetzt, so wird beim Schreiben von neuen Datensätzen
in den Indexdateien nur der Primärkey eingefgt. Beim Zurückschreiben von
Datensätzen werden die Sekundärkeys nicht angepasst. Beim Löschen von
Datensätzen wird nur der Primärkey gelöscht.
Beim Einlesen von großen Datenmengen oder bei Indexdateien mit vielen
Sekundärschlüsseln wird damit eine deutliche Geschwindigkeitssteigerung
erreicht. Nach dem Einlesen der Daten muss die Indexdatei dann
mit der Anweisung REORG reorganisiert werden, da der Indexbaum aufgrund
der fehlenden Sekundärkeyeinträge fehlerhaft ist.
Beim Programmstart ist diese Variable mit 0 vorbelegt.