3.11 DM_Control

Mit dieser Funktion können generelle Einstellungen im ISA Dialog Manager geändert oder Aktionen ausgelöst werden.

DM_boolean DML_default DM_EXPORT DM_Control
(
  DM_ID      objectID,
  DM_UInt    action,
  DM_Options options
)

Parameter

-> DM_ID objectID

Objekt für das die gewünschte Aktion ausgeführt werden soll.

-> DM_UInt action

Aktion, die der IDM ausführen soll. Dazu sind verschiedene Konstanten in der Include-Datei IDMuser.h definiert. Diese Konstanten sind in der Tabelle unten erläutert.

-> DM_Options options

Enthält bei Bedarf ein Argument für die in action angegebene Aktion (siehe Tabelle unten).

Rückgabewert

DM_TRUE

Die Aktion wurde erfolgreich ausgeführt.

DM_FALSE

Die Aktion konnte nicht ausgeführt werden.

Die nachfolgende Tabelle zeigt die gültigen Belegungen der einzelnen Parameter und erläutert ihre Bedeutung. Wenn bei der Aktion nichts anderes gesagt wird, ist als objectID immer 0 anzugeben.

action

options

Bedeutung

DMF_UpdateScreen

0

Es sollen alle internen SetVal-Aufrufe auf den Bildschirm gebracht werden. In diesem Fall muss der erste Parameter mit dem Dialog belegt sein.

DMF_UIAutomationMode

 

Mit dieser Aktion kann die spezielle UI Automation Unterstützung des IDM für seine besonderen Objekte abgeschaltet werden. Weiterhin aktiv bleibt aber die UI Automation Unterstützung von Microsoft für die Standard Controls.

Standardmäßig ist die Unterstützung von UI Automation aktiv.

Die Umschaltung muss vor dem Aufruf von DM_Initialize und nach dem Bootstrapping erfolgen.

0

Deaktiviert den UI Automation Support des IDM.

1

Aktiviert den UI Automation Support des IDM.

DMF_PCREBinding

0

Deaktiviert die Anbindung an die PCRE-Bibliothek, Reguläre Ausdrücke sind somit nicht mehr möglich.

1

Anbindung an statisch im Executable vorhandene PCRE-Funktionen (Anbindungsart E).

2

Nur dynamische Anbindung von PCRE-Bibliotheken relativ zur Applikation (Anbindungsart A).

3

Bindung zu PCRE-Bibliotheken relativ zur Applikation oder aus dem System (Anbindungsreihenfolge A – S).

4

Bindung mit Vorrang für Funktionen im Executable (Anbindungsreihenfolge E – A – S), dies ist für selbstgebaute IDM-Applikationen der Standardfall.

5

Bindung analog zu 4 aber in umgekehrter Reihenfolge, also Vorrang für die im System installierte PCRE-Bibliothek (Anbindungsreihenfolge S – A – E).

Siehe auch

Kapitel „PCRE-Bibliothek zur Unterstützung Regulärer Ausdrücke“ bei der eingebauten Funktion regex()

DMF_SignalMode

0

Die Signale werden über die Funktion signal abgefangen.

1

Die Signale werden über die Funktion sigaction abgefangen.

DMF_SetSearchPath

0

Mit dieser Aktion wird der Suchpfad für IDM-Dateien (Dialog-, Modul-, Interface- und Binärdateien) umgesetzt. Die Semikolon-separierten Verzeichnisse sind im data-Parameter als String-Pointer zu übergeben.

Siehe auch

Startoption -IDMsearchpath

DMF_SetUsepathModifier

0

Mit dieser Aktion wird der Konverter gesteuert, mit dem Use-Pfade zu Dateipfaden gewandelt werden. Die Steuerung erfolgt über einen String als data-Parameter.

Wertebereich

  • ""Leerstring
  • "L"Umwandlung in Kleinbuchstaben
  • "F"Umwandlung des ersten Buchstabens eines Pfadteiles in Kleinbuchstaben
  • "U"Umwandlung in Großbuchstaben
  • "u"Umwandlung in Großbuchstaben, außer der Dateiendung

DMF_SetCodePage

 

Mit dieser Aktion lässt sich die Codepage von Strings setzen, die zwischen Anwendung und IDM übergeben werden.

Normalerweise erwartet und liefert der IDM Strings ISO 8859-1 codiert. Mit dieser Aktion kann eine andere Zeichencodierung für Strings festgelegt werden.

Ab IDM-Version A.06.01.d ist es möglich, im Parameter objectID ein Application-Objekt anzugeben. Damit wird die applikationsspezifische Codepage umgesetzt, welche für die Verarbeitung von Strings nötig ist. Das Umsetzen einer applikationsspezifischen Codepage innerhalb einer der Funktion der entsprechenden Applikation hat eine sofortige Wirkung.

Der Aufruf auf einer DDM-Serverseite unterstützt allerdings kein Umsetzen der Applikationscodepage sondern wirkt sich ohnehin nur auf die Netzwerk-Applikation aus.

DMF_SetFormatCodePage

 

Definiert die Codepage, in der Formatfunktionen Strings interpretieren und zurückgeben.

Folgende Optionen gelten für DMF_SetCodePage und DMF_SetFormatCodePage

 

CP_ascii

ASCII Zeichencodierung.

 

CP_iso8859

Westeuropäische Zeichencodierung Latin-1 nach ISO 8859-1.

 

CP_cp437

Englische Zeichencodierung gemäß IBM-Codepage 437 (MS-DOS).

 

CP_cp850

Westeuropäische Zeichencodierung gemäß IBM-Codepage 850 (MS-DOS).

 

CP_iso6937

Westeuropäische Codierung mit variabler Länge nach ISO 6937.

 

CP_winansi

Microsoft Windows Zeichencodierung.

 

CP_dec169

Zeichencodierung gemäß DEC-Codepage 169.

 

CP_roman8

8-Bit Zeichencodierung gemäß HP-Codepage Roman-8.

 

CP_utf8

8-Bit Unicode-Codierung mit variabler Länge, entspricht im Bereich 0 – 127 der ASCII-Codierung.

 

CP_utf16

CP_utf16b

CP_utf16l

16-Bit Unicode-Codierung mit variabler Länge von 2 bis 4 Byte.

Zwei Varianten:

  • BE – Big Endian: höherwertige(s) Byte(s) zuerst.
  • LE – Little Endian: niederwertige(s) Byte(s) zuerst.

UTF-16 ohne Angabe der Byte-Reihenfolge entspricht unter Microsoft Windows der LE-Variante, auf Unix-Systemen dagegen der BE-Variante.

 

CP_cp1252

Westeuropäische Zeichencodierung gemäß Microsoft Windows Codepage 1252.

 

CP_acp

Aktuell von einer Anwendung verwendete ANSI-Codepage unter Microsoft Windows.

Nur unter Microsoft Windows verwendbar.

 

CP_hp15

Westeuropäische 16-Bit Zeichencodierung von HP-Systemen.

 

CP_jap15

Japanische 16-Bit Zeichencodierung von HP-Systemen.

 

CP_roc15

Vereinfachte chinesische 16-Bit Zeichencodierung (Kurzzeichen) von HP-Systemen.

 

CP_prc15

Traditionelle chinesische 16-Bit Zeichencodierung (Langzeichen) von HP-Systemen.

 

CP_ucp

Benutzerdefinierte Codepage ("User Code Page"). Konvertierung in eine beliebige Codepage mit iconv().

Anmerkungen

Beispiel

Setzen der Applikations-Codepage auf Roman 8.

DM_TraceMessage ("This application will use roman-8 codepage",  0);
DM_Control (0, DMF_SetCodePage, CP_roman8);

Siehe auch

Funktion DM_ControlEx