Die folgenden Konstanten des Feldes TApplication.Attr.Style bestimmen globale Eigenschaften jedes ObjectGEM-Programms.
Konstante | Wert | Bedeutung |
as_LoadFonts | 1 | für TApplication.vdiHandle werden die |
(Speedo)GDOS-Fonts mit vst_load_fonts() | ||
nachgeladen (falls GDOS aktiv und Fonts | ||
vorhanden) | ||
as_GrowShrink | 2 | Fenster und Dialogboxen werden incl. |
Grow- und Shrinkboxen mit form_dial() | ||
gezeichnet (default) | ||
as_MenuSeparator | 4 | die Trennstriche in Drop-Down- und |
Pop-Up-Menüs werden als durchgängige | ||
Linien gezeichnet (default) | ||
as_MoveDials | 8 | modale Dialoge können durch Anklicken |
verschoben werden (default) | ||
as_MoveTransparent | 24 | modale Dialoge werden transparent |
verschoben | ||
as_Rubbox | 32 | auf dem Desktop kann durch Anklicken |
und Ziehen ein "Gummiband" aufgezogen | ||
werden; wurde das Aufziehen nicht mit | ||
der rechten Maustaste abgebrochen, wird | ||
danach TApplication.MURubbox aufgerufen | ||
as_HandleShutdown | 64 | gibt an, ob die Applikation korrekt auf |
einen Shutdown von AES 4.0 reagieren | ||
kann (default) | ||
as_3DFlags | 128 | bewirkt, daß unter neueren TOS-Versionen |
(Falcon, MultiTOS) bei Dialogen 3D- | ||
Effekte verwendet werden (default) | ||
as_XInputMode | 256 | Tastatureingaben werden nicht an das |
oberste Fenster weitergeleitet, sondern | ||
an das Fenster, über dem sich der Maus- | ||
zeiger befindet (wie unter X/Unix) | ||
as_DesktopWindow | 512 | der Desktop wird in ein Fenster gelegt |
(bei Accessories default); z.Z. noch | ||
ohne Wirkung | ||
as_UseHomeDir | 1024 | bewirkt, daß Profiles ohne Pfadangabe |
im Verzeichnis $HOME/defaults angelegt | ||
werden, wenn die Environment-Variable | ||
HOME gesetzt ist und darin der Ordner | ||
defaults existiert |
Der Status von TControl, TButton, TCheckBox, TTriState, TRadioButton, TPopup und TKeyMenu wird mit den folgenden Konstanten beschrieben:
Konstante | Wert | Bedeutung |
bf_Unchecked | 1 | Schaltfläche ist nicht markiert |
(nicht bei TButton und TControl) | ||
bf_Checked | 2 | Schaltfläche ist markiert |
(nicht bei TButton und TControl) | ||
bf_Grayed | 3 | Schaltfläche ist grau; wird z.B. für "Wert |
beibehalten" verwendet (nur TTriState) | ||
bf_Enabled | 4 | Button ist anwählbar |
bf_Disabled | 5 | Button ist nicht anwählbar (hell dargestellt) |
Diese Werte werden von Dialogelementobjekten in TControl.Style eingetragen, um einen erweiterten Status anzuzeigen.
Konstante | Wert | Bedeutung |
bs_DefPushButton | 2048 | TButton trägt diesen Wert in das Feld |
Style ein, wenn es sich bei dem zuge- | ||
hörigen Dialogelement um den Default- | ||
PushButton handelt | ||
es_ASCIIOnly | 2048 | kann gesetzt werden, um bei TEdit nur |
ASCII-Zeichen (keine Umlaute!) zuzulassen | ||
es_Undo | 4096 | gibt an, daß TEdit den Undo-Puffer ver- |
wendet (default); s. TEdit.CanUndo | ||
sbs_Horz | 2048 | wird von TScrollBar eingetragen, wenn es |
sich um eine horizontale Bildlaufleiste | ||
handelt | ||
sbs_Vert | 4096 | wird von TScrollBar eingetragen, wenn es |
sich um eine vertikale Bildlaufleiste | ||
handelt | ||
sts_Fill | 2048 | wird von TStatic gesetzt; das Textfeld |
wird dann mit Leerzeichen aufgefüllt, | ||
bis es eine Länge von TextLen-1 Zeichen | ||
hat, damit beim Neuzeichnen keine | ||
Probleme entstehen |
Eine ganz andere Bedeutung haben die es_XXXX-Konstanten, die im Feld TEvent.Style eingetragen sein können. Sie dienen zur Unterscheidung folgender Objekttypen:
es_KeyMenu | 1 | TKeyMenu |
es_Icon | 2 | TIcon |
es_Popup | 4 | TPopup |
es_Toolbar | 8 | TToolbar |
Auch TScroller kann mit dem Feld TScroller.Style konfiguriert werden:
scs_BitbltScrolling | 1 | wird von TTextWindow gesetzt, damit ein |
optimiertes Redraw durchgeführt wird | ||
(funktioniert nur, wenn TrackMode true | ||
ist) | ||
Wichtig: Beim Bitblt-Scrolling werden | ||
evtl. vorhandene Icons nicht gezeich- | ||
net, deshalb ist diese Konstante nicht | ||
standardmäßig gesetzt. |
Die coXXXX-Konstanten werden von TCollection im Fehlerfall als Parameter Code an die Methode TCollection.Error übergeben.
Konstante | Wert | Bedeutung |
coIndexError | -1 | Bereichsüberschreitung des Indizes. |
Der an die Methode Error übergebene Wert | ||
Info entspricht dem ungültigen Index | ||
coOverflow | -2 | Überlauf der Kollektion. |
TCollection.SetLimit konnte die Kollektion | ||
nicht auf die gewünschte Größe ausdehnen. | ||
Der an die Methode Error übergebene Wert | ||
Info gibt die angeforderte Größe an |
Die cs_XXXX-Konstanten teilen sich in zwei gänzlich verschiedene Gruppen auf, die Fensterklassen- und Control-Stile:
Konstante | Wert | Bedeutung |
cs_ByteAlignClient | 1 | der linke Rand des Fenster-Arbeits- |
bereichs wird horizontal auf Byte- | ||
grenze gebracht | ||
cs_ByteAlignWindow | 2 | der linke äußere Fensterrand wird |
horizontal auf Bytegrenze gebracht | ||
cs_VerAlignClient | 4 | der obere Rand des Arbeitsbereichs |
wird auf eine gerade Zeile gebracht | ||
cs_VerAlignWindow | 8 | der obere äußere Fensterrand wird |
auf eine gerade Zeile gebracht | ||
cs_FullRedraw | 16 | wenn die Fenstergröße geändert wurde |
und deshalb ein Teil des Fensters neu | ||
gezeichnet werden muß, wird automa- | ||
tisch ein Redraw über das komplette | ||
Fenster ausgelöst | ||
cs_HRedraw | 16 | " (ObjectWindows-Konstante) |
cs_VRedraw | 16 | " (ObjectWindows-Konstante) |
cs_SaveBits | 32 | bei modalen Dialogen wird versucht, |
den Hintergrund zu retten; dadurch | ||
muß dann beim Verlassen des Dialogs | ||
kein aufwendiges Redraw durchge- | ||
führt werden (nur TDialog, default) | ||
cs_Rubbox | 64 | in dem Fenster kann innerhalb |
eines angegebenen Bereichs ein | ||
"Gummiband" aufgezogen werden; | ||
danach wird TWindow.WMRubbox | ||
aufgerufen | ||
cs_WorkBackground | 128 | Fenster und Dialoge können auch im |
Hintergrund bedient werden; statt | ||
das Fenster in den Vordergrund zu | ||
bringen, wird dann die Methode | ||
TWindow.WMButton aufgerufen (bei | ||
TDialog default!); | ||
Wichtig: In AES-Versionen unter 4.0 | ||
werden Doppelklicks links in Hinter- | ||
grund-Fenster nicht erkannt, außerdem | ||
wird dort ein Klick erst nach Los- | ||
lassen der Taste weitergeleitet | ||
cs_DblClks | 256 | das Fenster kann Doppelklicks ver- |
arbeiten; in diesem Fall wird dann | ||
die Methode TWindow.WMDblClick | ||
aufgerufen (default) | ||
cs_CreateOnAccOpen | 512 | Fenster/Dialoge, zu denen Schnitt- |
stellenobjekte existieren, werden bei | ||
AC_OPEN automatisch mit Create er- | ||
zeugt und geöffnet; ansonsten werden | ||
nur Fenster bzw. Dialoge geöffnet, | ||
die schon erzeugt wurden | ||
(bei TWindow default) | ||
cs_CancelOnClose | 1024 | beim Schließen des Fenster-Dialogs mit |
dem Schließfeld wird nicht die OK- | ||
sondern die Cancel-Methode aufgerufen | ||
cs_AutoCreate | 2048 | ein Child-Fenster, bei dem dieses |
Flag gesetzt ist, wird zusammen mit | ||
dem Parent-Fenster erzeugt | ||
(bei TWindow default) | ||
cs_AutoOpen | 4096 | bewirkt, daß MakeWindow automatisch |
aufgerufen wird - bei TWindow von | ||
TWindow.SetupWindow, bei TDialog von | ||
TDialog.Init (bei TWindow default) | ||
cs_ToolbarOpposite | 8192 | wird von TWindow.LoadToolbar gesetzt, |
wenn die Toolbar nicht links oder | ||
oben, sondern rechts oder unten | ||
gezeichnet werden soll | ||
cs_QuitOnClose | 16384 | ist dieses Flag gesetzt, ruft |
WMClosed TApplication.Quit auf | ||
(bei TWindow default) | ||
cs_WindowMenuToolbar | 32768 | wenn dieses Flag gesetzt ist, be- |
ziehen sich Anwender-konfigurierbare | ||
Toolbars auf die Menüleiste im | ||
selben Fenster |
Die Konstanten cs_ByteAlignClient und cs_ByteAlignWindow bzw. cs_VerAlignClient und cs_VerAlignWindow dürfen nicht zusammen benutzt werden. cs_ToolbarOpposite darf nur gelesen werden!
Konstante | Wert | Bedeutung |
cs_CheckBox | 1 | wird von TCheckBox gesetzt |
cs_AutoCheckBox | 1 | " (ObjectWindows-Konstante) |
cs_3State | 3 | wird von TTriState gesetzt |
cs_Auto3State | 3 | " (ObjectWindows-Konstante) |
cs_RadioButton | 4 | wird von TRadioButton gesetzt |
cs_AutoRadioButton | 4 | " (ObjectWindows-Konstante) |
cs_PushButton | 8 | wird von TButton gesetzt |
cs_GroupBox | 16 | wird von TGroupBox gesetzt |
cs_Static | 32 | wird von TStatic gesetzt |
cs_Edit | 64 | wird von TEdit gesetzt |
cs_ScrollBar | 128 | wird von TScrollBar gesetzt |
cs_ComboBox | 256 | wird von TComboBox gesetzt |
Abgesehen von cs_CheckBox und cs_3State dürfen die Konstanten nicht zusammen verwendet werden.
Von Kontrollelementen abgeleitete Objekte löschen den alten Wert (z.B. löscht TCheckBox den Wert cs_PushButton und trägt erst dann cs_CheckBox ein).
Die folgenden Konstanten werden von ObjectGEM entweder im Feld TApplication.Status oder intern gesetzt, um Laufzeitfehler zu signalisieren. Fatale Fehler können in Status abgefragt werden und führen zum Programmabbruch, interne Fehler werden mit TApplication.ChkError abgefragt.
Konstante | Wert | Bedeutung |
em_OK | 0 | kein Fehler aufgetreten; insbesondere |
wird TApplication.MessageLoop nur | ||
aufgerufen, wenn in TApplication.Init | ||
kein Fehler auftritt | ||
em_OutOfMemory | -1 | eine Speicheranforderung mit new() oder |
getmem() konnte nicht erfüllt werden; | ||
von der ObjectGEM-internen Routine wird | ||
dann ein nil-Pointer zurückgegeben | ||
und der interne Fehlerstatus auf | ||
em_OutOfMemory gesetzt | ||
em_InvalidWindow | -4 | wird von Create gesetzt, wenn ein |
Schnittstellenobjekt kein GEM-Handle | ||
mittels wind_create() belegen konnte | ||
em_InvalidMainWindow | -5 | fatal; wird standardmäßig von |
TApplication.InitMainWindow gesetzt, | ||
wenn überhaupt kein Fenster geöffnet | ||
werden konnte; kann und sollte über- | ||
schrieben werden | ||
em_AccInitFailure | -10 | fatal; wird von TApplication.InitGEM |
gesetzt, wenn bei einem Accessory | ||
menu_register() fehlschlägt | ||
em_GEMInitFailure | -11 | fatal; wird von TApplication.InitGEM |
gesetzt, wenn appl_init() oder | ||
v_opnvwk() fehlschlägt | ||
em_AESNotActive | -12 | fatal; wird von TApplication.InitGEM |
gesetzt, wenn die Applikation im AUTO- | ||
Ordner gestartet wird | ||
em_RscNotFound | -13 | fatal; wird von TApplication.LoadResource |
gesetzt, wenn die Resource-Datei nicht | ||
gefunden werden konnte | ||
em_WOpenFailure | -20 | wird von TWindow.OpenWindow gesetzt, |
wenn wind_open() fehlschlägt | ||
em_WCloseFailure | -21 | wird von TWindow.CloseWindow gesetzt, |
wenn wind_close() fehlschlägt | ||
em_WDestroyFailure | -22 | wird von TWindow.Destroy gesetzt, |
wenn wind_delete() fehlschlägt | ||
em_InvalidMenu | -30 | wird von LoadMenu gesetzt, wenn der |
Menübaum nicht existiert, bereits ein | ||
anderes Menü aktiv ist oder ein Fehler | ||
beim Zeichnen auftritt | ||
em_InvalidDialog | -31 | wird von TApplication.ExecDialog und |
TApplication.Alert zurückgegeben, | ||
wenn ein Fehler aufgetreten ist; | ||
ferner setzt LoadDialog diesen Fehler, | ||
wenn der Dialogbaum nicht existiert | ||
em_InvalidToolbar | -32 | wird von TWindow.LoadToolbar gesetzt, |
wenn der Objektbaum nicht existiert | ||
oder schon eine Toolbar aktiv ist | ||
em_SpeedoLoadFailure | -40 | wird von TApplication.SetupVDI gesetzt, |
wenn Speedo-Fonts nicht korrekt geladen | ||
werden konnten | ||
em_Terminate | -98 | wird von ObjectGEM intern unter |
MultiTOS verschickt, um beim Eintreffen | ||
der MiNT-Signale SIGTERM und | ||
SIGQUIT bzw. beim Shutdown durch | ||
AP_TERM das Programm sauber (aber ohne | ||
den Benutzer zu fragen) abzubrechen; | ||
sollte ansonsten nicht gesetzt werden | ||
em_Quit | -99 | das Programm wird beim nächsten Ende |
der MessageLoop-Schleife nach Aufruf | ||
von TApplication.CanClose verlassen; | ||
diese Konstante sollte nicht direkt | ||
gesetzt werden, statt dessen sollte | ||
TApplication.Quit aufgerufen werden |
Diese Konstanten werden im Feld TControl.ID gespeichert und standardmäßig nur von TButton und TScrollBar gesetzt. Anders genutzte IDs sind weiter unten aufgelistet.
Konstante | Wert | Bedeutung |
id_No | -1 | der PushButton hat keine besondere Bedeutung |
id_OK | 0 | der Button ist der "OK"-Button; bei Anwahl |
wird die Methode TDialog.OK aufgerufen | ||
id_Cancel | 1 | der Button ist der "Abbruch"-Button; bei Anwahl |
wird die Methode TDialog.Cancel aufgerufen | ||
id_Help | 2 | der Button ist der "Hilfe"-Button; bei Anwahl |
wird die Methode TDialog.Help aufgerufen | ||
id_Undo | 3 | der Button ist der "Undo"-Button; bei Anwahl |
wird die Methode TDialog.Undo aufgerufen | ||
id_Esc | 4 | der Button ist der "Esc"-Button; bei Anwahl |
wird die Methode TDialog.Esc aufgerufen | ||
id_NoExit | 42 | nach Anwahl dieses Dialogelements wird der |
Dialog nicht verlassen; wird z.B. von | ||
TScrollBar gesetzt, da die Applikation | ||
zwar auf die Bildlaufleiste reagieren, | ||
den Dialog aber nicht verlassen soll | ||
(der Button wird also im RCS auf "EXIT" | ||
gesetzt, da er mehr machen soll, als nur | ||
seinen Zustand wechseln; andererseits wird | ||
der Dialog aber von ObjectGEM durch diese | ||
Konstante nicht verlassen, was sonst nur | ||
durch Überschreiben von TDialog.ExitDlg | ||
möglich wäre); auch TComboBox nutzt dieses | ||
Flag |
Folgende IDs werden nicht (nur) von TControl verwendet:
Konstante | Wert | Bedeutung |
id_No | -1 | wird von recht vielen Routinen verwendet, um |
einen "negativen" Status anzuzeigen | ||
id_NewHandle | -1 | zeigt bei GetVDIHandle an, daß eine neue |
Workstation automatisch geöffnet werden | ||
soll |
Die Methode Transfer einiger abgeleiteter TControl-Objekte benutzt diese Konstanten, um die Datenübertragung zwischen der Applikation und deren Dialogen mittels TDialog.TransferBuffer zu vereinfachen.
Konstante | Wert | Bedeutung |
tf_GetData | 0 | ruft Daten aus dem Objekt ab |
tf_SetData | 1 | sendet Daten, um den Wert des |
Objekts zu setzen | ||
tf_SizeData | 2 | findet die Anzahl der vom Objekt |
übertragenen Bytes heraus |
Die folgenden Konstanten beschreiben Eigenschaften der TValidator-Objekte und werden in deren TValidator.Options-Feld gespeichert.
Konstante | Wert | Bedeutung |
voFill | 1 | an die Eingabe werden evtl. fehlende Werte |
angehängt; wird von TPXPictureValidator ver- | ||
wendet | ||
voNotEmpty | 2 | das Eingabefeld darf nicht leer sein, |
sonst kann der Dialog nicht beendet werden | ||
voOnAppend | 4 | wird von TPXPictureValidator gesetzt |
voOnEdit | 8 | ist dieses Flag gesetzt, ruft TEdit.Edit |
die Methode TValidator.IsValidInput des | ||
zugehörigen Validators auf, in der der | ||
übergebene Text korrigiert werden kann | ||
voReserved | 240 | reserviert für Softdesign |
Die folgenden Konstanten zeigen den Zustand von TValidator-Objekten an und werden in deren TValidator.Status-Feld gespeichert.
Konstante | Wert | Bedeutung |
vsOK | 0 | alles OK, kein Fehler aufgetreten |
vsSyntax | 1 | ungültige Maske bei TPXPictureValidator |
Das Feld TControl.Flags beschreibt zusätzliche Eigenschaften eines Dialogelementobjekts.
Konstante | Wert | Bedeutung |
wb_Transfer | 1 | das Dialogelementobjekt nimmt am Transfer- |
Mechanismus teil; standardmäßig wird dieses | ||
Flag von TCheckBox, TRadioButton, TTriState | ||
und TEdit gesetzt | ||
wb_Lazy | 2 | das Dialogelement wird nicht neu gezeichnet, |
wenn eine andere Applikation den Bildschirm | ||
blockiert hat (wichtig für Statusanzeigen); | ||
wird von TControl.Paint beachtet |
Diese in TWindow.Attr.Status gespeicherten Werte geben den Zustand eines Fensters an.
Konstante | Wert | Bedeutung |
ws_NoWindow | 1 | das Schnittstellenobjekt belegt kein GEM- |
Handle, das Fenster ist also auch nicht offen; | ||
TWindow.Destroy und TWindow.RawDestroy setzen | ||
diesen ursprünglichen Status zurück | ||
ws_Created | 2 | das Schnittstellenobjekt besitzt ein GEM- |
Handle, das Fenster ist aber noch nicht | ||
offen; wird von TWindow.Create gesetzt bzw. | ||
von TWindow.CloseWindow zurückgesetzt | ||
ws_Open | 3 | das Fenster ist offen, es existiert also auch |
ein GEM-Handle; wird von TWindow.OpenWindow | ||
gesetzt |
Im Gegensatz zum Feld TWindow.Attr.Style, das das Aussehen des Fensters beschreibt, enthält TWindow.Attr.ExStyle die erweiterten Eigenschaften des Fensters. Die meisten Konstanten werden im Zusammenhang mit TDialog benutzt.
Konstante | Wert | Bedeutung |
ws_ex_Modeless | 1 | der Dialog muß nicht-modal sein; |
wenn kein Fenster mehr geöffnet | ||
werden kann, wird em_InvalidWindow | ||
gesetzt (default) | ||
ws_ex_TryModeless | 3 | es wird versucht, den Dialog |
nicht-modal zu öffnen; gelingt dies | ||
nicht, wird er modal ausgeführt | ||
(bei TDialog default) | ||
ws_ex_AppModal | 4 | der Dialog ist für die Applikation |
modal, obwohl er in einem Fenster | ||
und damit für das System nicht-modal | ||
abgearbeitet wird; d.h. es kann kein | ||
anderes Fenster der Applikation ge- | ||
toppt werden, und die Menüs sind | ||
gesperrt (z.Z. noch ohne Wirkung!) | ||
ws_ex_Popup | 8 | das Fenster erscheint zentriert |
um die aktuelle Mausposition | ||
ws_ex_Center | 16 | das Fenster wird auf dem Desktop |
zentriert | ||
ws_ex_CenterOnce | 48 | das Fenster wird nur beim ersten |
Aufruf zentriert, danach merkt es | ||
sich seine Position auch nach | ||
einem TWindow.CloseWindow | ||
(bei TDialog default) | ||
ws_ex_Center2Parent | 80 | das Fenster wird relativ zu seinem |
Parent zentriert; ist dieses nil, | ||
wird das Fenster auf dem Desktop | ||
zentriert | ||
ws_ex_MoveDial | 128 | ein modaler Dialog kann verschoben |
werden; wird von TDialog gesetzt, | ||
wenn as_MoveDials gesetzt ist | ||
ws_ex_MoveTransparent | 384 | ein modaler Dialog kann transparent |
verschoben werden; wird von TDialog | ||
gesetzt, wenn as_MoveTransparent | ||
gesetzt ist | ||
ws_ex_Disabled | 512 | ab AES 4.0 kann ein Fenster in |
den Hintergrund gebracht werden; | ||
ist dieser Wert gesetzt, wird | ||
dies von TWindow.OpenWindow | ||
sofort nach dem Öffnen ausgeführt | ||
ws_ex_LoadFonts | 1024 | für TWindow.vdiHandle werden GDOS- |
Fonts nachgeladen, sofern GDOS in- | ||
stalliert ist und Fonts vorhanden | ||
sind | ||
ws_ex_ReadOnly | 32768 | wird von TTextWindow und abgelei- |
teten Objekten genutzt, um anzu- | ||
zeigen, daß der Text im Fenster | ||
nicht verändert werden kann |
Konstante | Wert | Bedeutung |
NUL | 0 | Nil (Null) |
EOS | 0 | Ende der Zeichenkette (End of String) |
kein vordefinierter ASCII-Steuercode! | ||
SOH | 1 | Anfang des Kopfes (Start of Heading) |
STX | 2 | Anfang des Textes (Start of Text) |
ETX | 3 | Ende des Textes (End of Text) |
EOT | 4 | Ende der Übertragung (End of Transmission) |
ENQ | 5 | Stationsaufforderung (Enquiry) |
ACK | 6 | Positive Rückmeldung (Acknowledge) |
BEL | 7 | Klingel (BEL) |
BS | 8 | Rückwärtsschritt (Backspace) |
HT | 9 | Horizontal-Tabulator (Horizontal Tabulation) |
LF | 10 | Zeilenvorschub (Line Feed) |
VT | 11 | Vertikal-Tabulator (Vertical Tabulation) |
FF | 12 | Formularvorschub (Form Feed) |
CR | 13 | Wagenrücklauf (Carriage Return) |
SO | 14 | Dauerumschaltung (Shift-out) |
SI | 15 | Rückschaltung (Shift-in) |
DLE | 16 | Datenübertragungsumschaltung (Data Link Escape) |
DC1 | 17 | Gerätesteuerung (Device Control) |
DC2 | 18 | " |
DC3 | 19 | " |
DC4 | 20 | " |
NAK | 21 | Negative Rückmeldung (Negative Acknowledge) |
SYN | 22 | Synchronisierung (Synchronous Idle) |
ETB | 23 | Ende des Datenübertragungsblocks |
(End of Transmission Block) | ||
CAN | 24 | Ungültig (Cancel) |
EM | 25 | Ende der Aufzeichnung (End of Medium) |
SUB | 26 | Substitution (Substitute Character) |
ESC | 27 | Umschaltung (Escape) |
FS | 28 | Hauptgruppen-Trennung (File Separator) |
GS | 29 | Gruppen-Trennung (Group Separator) |
RS | 30 | Untergruppen-Trennung (Record Separator) |
US | 31 | Teilgruppen-Trennung (Unit Separator) |
SP | 32 | Leerzeichen (Space) |
kein vordefinierter ASCII-Steuercode! | ||
DEL | 127 | Löschen (Delete) |
Einen der folgenden aus dem System-Header bzw. dem _AKP-Cookie ermittelten Werte trägt TApplication.Init in das Feld TApplication.Attr.Country ein:
Konstante | Wert | Bedeutung |
USA | 0 | USA |
FRG | 1 | Bundesrepublik Deutschland |
FRA | 2 | Frankreich |
UK | 3 | Großbritannien |
SPA | 4 | Spanien |
ITA | 5 | Italien |
SWE | 6 | Schweden |
SWF | 7 | Schweiz (französisch) |
SWG | 8 | Schweiz (deutsch) |
TUR | 9 | Türkei |
FIN | 10 | Finnland |
NOR | 11 | Norwegen |
DEN | 12 | Dänemark |
SAU | 13 | Saudi-Arabien |
HOL | 14 | Niederlande |
CZE | 15 | Tschechische Republik & Slowakei |
HUN | 16 | Ungarn |
ObjectGEM stellt mit SetMouse eine neue graf_mouse()-Routine zur Verfügung, so daß neben den üblichen Mausformen auch noch neue, z.T. Windows-kompatible Formen ausgewählt werden können. Trotzdem sollten Sie die Maus so selten wie möglich ändern (im Hinblick auf MultiTOS). Außerdem stellt ObjectGEM ihnen einige Routinen zum Ändern zur Verfügung (HideMouse, ShowMouse, ArrowMouse, BusyMouse, LastMouse etc.), die Sie anstelle von graf_mouse() verwenden sollten.
Konstante | Wert | Bedeutung |
IDC_ARROW | 0 | normaler Pfeil |
IDC_IBEAM | 1 | Text-Cursor |
IDC_CROSS | 5 | feines Fadenkreuz |
IDC_WAIT | 100 | die Windows-Sanduhr |
HOURGLASS | 100 | " |
IDC_LOAD | 101 | eine Diskette |
IDC_HELP | 102 | Pfeil mit Fragezeichen; |
wird von der BubbleHelp verwendet | ||
IDC_PENCIL | 103 | ein Zeichenstift |
IDC_RUBBER | 104 | ein Radiergummi |
IDC_SCISSORS | 105 | eine Schere |
IDC_PASTE | 106 | eine Klebetube |
IDC_SLICE1 | 107 | |
IDC_SLICE2 | 108 | vier Konstanten für die Routinen |
IDC_SLICE3 | 109 | SliceMouse und SliceMouseNext |
IDC_SLICE4 | 110 |
Im folgenden sind die Signale beschrieben, die MiNT/MultiTOS an Prozesse schickt (oder die dieses untereinander verschicken). ObjectGEM reagiert nur auf SIGTERM und SIGQUIT.
Konstante | Wert | Bedeutung |
SIGNULL | 0 | dies ist eigentlich kein Signal, da es nie an |
Prozesse verschickt wird; allerdings kann man | ||
damit die Präsenz eines Child-Prozesses testen | ||
SIGHUP | 1 | das Ein-/Ausgabe-Terminal ist nicht mehr gültig; |
wird vom Window Manager (z.B. MW) verschickt, | ||
wenn der Benutzer das Terminalfenster schließt | ||
SIGINT | 2 | Unterbrechung; |
wird verschickt, wenn der Benutzer <Control>+<C> | ||
drückt; die aktuelle Aktion bzw. das Programm | ||
soll abgebrochen werden | ||
SIGQUIT | 3 | Abbruch; |
wird nach Drücken von <Control>+<\> verschickt; | ||
das Programm soll dringend beendet werden! | ||
SIGILL | 4 | ein illegaler Assembler-Befehl sollte |
ausgeführt werden | ||
SIGTRAP | 5 | Einzelschrittausführung (z.B. für Debugger) |
SIGABRT | 6 | "Grausamer Fehler" |
der aufgetretene Fehler ist so schwer, daß | ||
das Programm sofort und ohne "Aufräumarbeiten" | ||
verlassen werden sollte (bzw. wird) | ||
SIGPRIV | 7 | es wurde versucht, einen Supervisor-Befehl |
im User-Modus auszuführen | ||
SIGFPE | 8 | Division durch Null oder Überlauf |
SIGKILL | 9 | Prozeßabbruch; |
kann nicht abgefangen werden; der | ||
Prozeß wird unwiderruflich entfernt | ||
SIGBUS | 10 | Bus-Fehler |
SIGSEGV | 11 | Adreß-Fehler; es wurde auf eine illegale |
Speicheradresse zugegriffen | ||
SIGSYS | 12 | bei einem Systemaufruf wurden falsche |
Werte übergeben | ||
SIGPIPE | 13 | es wurde versucht, in eine nicht existierende |
Pipe zu schreiben, bzw. die Pipe ist zerbrochen | ||
SIGALRM | 14 | die mit Talarm() gesetzte Zeit ist abgelaufen |
SIGTERM | 15 | Prozeß bitte beenden; |
wird z.B. verschickt, wenn ein Prozeß aus | ||
U:\PROC auf den Papierkorb gezogen wird | ||
SIGSTOP | 17 | der Prozeß wird angehalten |
SIGTSTP | 18 | der Prozeß wird "gebeten", anzuhalten |
SIGCONT | 19 | hebt SIGSTOP oder SIGTSTP auf |
SIGCHLD | 20 | ein Child-Prozeß wurde beendet |
SIGTTIN | 21 | Eingabe vom falschen Terminal |
SIGTTOU | 22 | Ausgabe auf falsches Terminal |
SIGXCPU | 24 | die erlaubte CPU-Zeit des Prozesses |
wurde überschritten | ||
SIGWINCH | 28 | die Fenstergröße wurde geändert; |
wird z.B. von MW verschickt | ||
SIGUSR1 | 29 | User-Signal 1 |
SIGUSR2 | 30 | User-Signal 2 |
Die folgenden Konstanten werden an Psignal() statt eines Handlers übergeben:
SIG_DFL | pointer(0) | setzt für das angegebene Signal |
wieder die Default-Routine ein | ||
SIG_IGN | pointer(1) | das betreffende Signal wird von |
der Applikation ignoriert |
ObjectGEM erkennt die GEM-Messages des XAcc- und AV-Protokolls. TApplication.MUMesag leitet die Messages an TApplication.HandleAV und TApplication.HandleXAcc weiter. Beschreibungen der Protokolle finden sich u.a in TOS 2/92 (XAcc) und in der Dokumentation zur Benutzeroberfläche Gemini (AV). Das Kobold-Protokoll ist in der Anleitung des Dateikopierers beschrieben. Das Menü-Protokoll ist erstmalig mit ObjectGEM veröffentlicht und wird in Zukunft stärker unterstützt.
Konstante | Wert | Bedeutung |
ACC_ID | $0400 | s. TApplication.XAccID |
ACC_OPEN | $0401 | |
ACC_CLOSE | $0402 | |
ACC_ACC | $0403 | s. TApplication.XAccAcc |
ACC_EXIT | $0404 | s. TApplication.XAccExit |
ACC_ACK | $0500 | |
ACC_TEXT | $0501 | s. TApplication.XAccText |
ACC_KEY | $0502 | s. TApplication.XAccKey |
ACC_META | $0503 | s. TApplication.XAccMeta |
ACC_IMG | $0504 | s. TApplication.XAccIMG |
ACC_SPECIAL | $0800 | Beginn der privaten Messages |
AV_PROTOKOLL | $4700 | s. TApplication.AVProtokoll |
VA_PROTOSTATUS | $4701 | s. TApplication.VAProtoStatus |
AV_GETSTATUS | $4703 | |
AV_STATUS | $4704 | |
VA_SETSTATUS | $4705 | |
AV_SENDKEY | $4710 | s. TApplication.AVSendKey |
VA_START | $4711 | s. TApplication.VAStart |
AV_ASKFILEFONT | $4712 | |
VA_FILEFONT | $4713 | |
AV_ASKCONFONT | $4714 | |
VA_CONFONT | $4715 | |
AV_ASKOBJECT | $4716 | |
VA_OBJECT | $4717 | |
AV_OPENCONSOLE | $4718 | |
VA_CONSOLEOPEN | $4719 | |
AV_OPENWIND | $4720 | |
VA_WINDOPEN | $4721 | |
AV_STARTPROG | $4722 | s. TApplication.AVStartProg |
VA_PROGSTART | $4723 | |
AV_ACCWINDOPEN | $4724 | |
VA_DRAGACCWIND | $4725 | |
AV_ACCWINDCLOSED | $4726 | |
AV_COPY_DRAGGED | $4728 | |
VA_COPY_COMPLETE | $4729 | |
AV_PATH_UPDATE | $4730 | |
AV_WHAT_IZIT | $4732 | |
VA_THAT_IZIT | $4733 | |
AV_DRAG_ON_WINDOW | $4734 | |
VA_DRAG_COMPLETE | $4735 | |
AV_EXIT | $4736 | s. TApplication.AVExit |
VA_OB_UNKNOWN | 0 | |
VA_OB_TRASHCAN | 1 | |
VA_OB_SHREDDER | 2 | |
VA_OB_CLIPBOARD | 3 | |
VA_OB_FILE | 4 | |
VA_OB_FOLDER | 5 | |
VA_OB_DRIVE | 6 | |
VA_OB_WINDOW | 7 | |
MSG_SETSTATUS | 1 | |
MSG_START | 2 | |
MSG_SENDKEY | 1 | |
MSG_ASKFILEFONT | 2 | |
MSG_ASKCONFONT | 4 | |
MSG_ASKOBJECT | 8 | |
MSG_OPENWIND | 16 | |
MSG_STARTPROG | 32 | |
MSG_ACCWINDOPEN | 64 | |
MSG_STATUS | 128 | |
MSG_COPY_DRAGGED | 256 | |
MSG_PATH_UPDATE | 512 | |
MSG_EXIT | 1024 | |
KOBOLD_JOB | $2f10 | |
KOBOLD_JOB_NO_WINDOW | $2f11 | |
KOBOLD_ANSWER | $2f12 | |
KOBOLD_CONFIG | $2f13 | |
KOBOLD_FIRST_SLCT | $2f14 | |
KOBOLD_NEXT_SLCT | $2f15 | |
KOBOLD_CLOSE | $2f16 | |
KOBOLD_FREE_DRIVES | $2f17 | |
WM_SAVE | $1000 | |
WM_SAVEAS | $1001 | |
WM_PRINT | $1002 | s. Print |
WM_UNDO | $1003 | |
WM_CUT | $1004 | s. Cut |
WM_COPY | $1005 | s. Copy |
WM_PASTE | $1006 | s. Paste |
WM_SELECTALL | $1007 | s. SelectAll |
WM_FIND | $1008 | |
WM_REPLACE | $1009 | |
WM_FINDNEXT | $100a | |
WM_HELP | $100b | |
WM_DELETE | $100c | s. Delete |
VIEW_FILE | $5600 | |
VIEW_FAILED | $5601 | |
VIEW_OPEN | $5602 | |
VIEW_CLOSED | $5603 | |
VIEW_DATA | $5604 | |
VIEW_GETMFDB | $5610 | |
VIEW_SETMFDB | $5611 | |
VIEW_MFDB | $5612 | |
VIEWERR_ERROR | 0 | |
VIEWERR_SIZE | 1 | |
VIEWERR_COLOR | 2 | |
VIEWERR_WID | 3 | |
VIEWERR_MEM | 4 |
Folgende Konstanten charakterisieren den Dateityp im Klemmbrett und können in der Bitmap von TApplication.SCChanged ausgewertet werden (die angegebenen Extensions sind nur Beispiele):
Konstante | Wert | Bedeutung |
SCF_INDEF | $0000 | Die Datei paßt auf keine der folgenden Typen |
SCF_DBASE | $0001 | Daten, die in eine Datenbank geladen werden |
können ('.DBF','.CSV') | ||
SCF_TEXT | $0002 | Textdateien ('.TXT','.ASC','.RTF','.DOC') |
SCF_VECTOR | $0004 | Vektorgrafik ('.GEM','.EPS','.CVG') |
SCF_RASTER | $0008 | Rastergrafik ('.IMG','.TIF','.GIF','.PCX') |
SCF_SHEET | $0010 | Tabellenkalkulation ('.DIF','.WKS') |
SCF_SOUND | $0020 | Samples, MIDI-Files, Klänge ('.MOD') |
Die zugehörige Message ist folgendermaßen deklariert:
SC_CHANGED | $0050 |
Die folgenden Werte werden von MapKey zurückgeliefert. Die Bezeichnungen sollten weitestgehend selbsterklärend sein.
Konstante | Wert | Bedeutung |
KsCAPS | $0010 | Bits zur Kennzeichnung des Shift-Status |
KsALT | $0008 | |
KsCONTROL | $0004 | |
KsSHIFT | $0003 | |
KsLSHIFT | $0002 | |
KsRSHIFT | $0001 | |
KsNORMAL | $0000 | |
KbSCAN | $8000 | Masken für Status-Bits, die im oberen |
KbNUM | $4000 | Byte des von MapKey zurückgegebenen |
KbALT | $0800 | Words plaziert sind |
KbCONTROL | $0400 | |
KbLSHIFT | $0200 | |
KbRSHIFT | $0100 | |
KbISO | $0037 | ISO-Taste; erscheint, wenn eine Nicht- |
US-Tastatur mit US-TOS benutzt wird | ||
KbF1 | $003b | Funktionstasten |
KbF2 | $003c | |
KbF3 | $003d | |
KbF4 | $003e | |
KbF5 | $003f | |
KbF6 | $0040 | |
KbF7 | $0041 | |
KbF8 | $0042 | |
KbF9 | $0043 | |
KbF10 | $0044 | |
KbF11 | $0054 | Shift-Funktionstasten |
KbF12 | $0055 | |
KbF13 | $0056 | |
KbF14 | $0057 | |
KbF15 | $0058 | |
KbF16 | $0059 | |
KbF17 | $005a | |
KbF18 | $005b | |
KbF19 | $005c | |
KbF20 | $005d | |
KbUNDO | $0061 | Cursor-Bereich |
KbHELP | $0062 | |
KbINSERT | $0052 | |
KbHOME | $0047 | |
KbUP | $0048 | |
KbDOWN | $0050 | |
KbLEFT | $004b | |
KbRIGHT | $004d | |
KbAlt1 | $0078 | Alternate-numerische Taste |
KbAlt2 | $0079 | |
KbAlt3 | $007a | |
KbAlt4 | $007b | |
KbAlt5 | $007c | |
KbAlt6 | $007d | |
KbAlt7 | $007e | |
KbAlt8 | $007f | |
KbAlt9 | $0080 | |
KbAlt0 | $0081 |
Folgende Werte erleichtern die Programmierung/Wartung:
K_NORMAL | $0000 |
K_SHIFT | K_LSHIFT+K_RSHIFT |
Die folgenden Konstanten werden neu definiert, damit die Konstanten aus der Unit Gem nicht mit den TDialog-Methoden kollidieren.
S_Esc | gem.Esc |
S_Undo | gem.Undo |
S_Help | gem.Help |
Konstante | Wert | Bedeutung |
GOVersion | $0150 | ObjectGEM-Version (VtoS) |
GODate | $07251996 | ObjectGEM-Erstellungsdatum |
(Umwandlung mit DtoS) | ||
DESK | 0 | bezeichnet Fenster 0 (Desktop) |
CLIP_ON | 1 | Konstanten für vs_clip() |
CLIP_OFF | 0 | |
PER_ON | 1 | Konstanten für vsf_perimeter() |
PER_OFF | 0 | |
ME_DRAW | 1 | Konstanten für menu_bar() |
ME_ERASE | 0 | (ME_INQUIRE erst ab AES 4.0) |
ME_INQUIRE | -1 | |
ME_CHECK | 1 | Konstanten für menu_icheck() |
ME_UNCHECK | 0 | |
ME_DISABLE | 0 | Konstanten für menu_ienable() |
ME_ENABLE | 1 | |
ME_NORMAL | 1 | Konstanten für menu_tnormal() |
ME_INVERT | 0 | |
NDC | 0 | Konstanten für v_opnvwk() |
RC | 2 | (normalisiertes oder Raster- |
koordinatensystem) |
HexArray: array [0..15] of char = ('0','1','2','3','4','5','6','7', '8','9','a','b','c','d','e','f');