pdlg_do() ist das Gegenstück zu pdlg_open()/pdlg_evnt()/pdlg_close(). Diese Funktion öffnet einen modalen Dialog und kehrt erst zum Aufrufer zurück, wenn einer der Exit-Buttons betätigt wurde ("Abbruch", "OK" ).
Deklaration:
WORD pdlg_do( PRN_DIALOG *prn_dialog, PRN_SETTINGS *settings,
BYTE *document_name, WORD option_flags );
Aufruf:
button = pdlg_do( prn_dialog, settings, "ohne Namen", PDLG_PRINT );
Variable Belegung Bedeutung
Eingaben:
contrl[0] 207 pdlg_do
contrl[1] 1 Einträge in intin
contrl[3] 3 Einträge in addrin
intin[0] option_flags
addrin[0] prn_dialog Zeiger auf Verwaltungsstruktur
addrin[1] settings Druckereinstellung
addrin[2] document_name Dokumentenname
Ausgaben:
contrl[2] 1 Einträge in intout
contrl[4] 0 Einträge in addrout
intout[0] button angewählter Button (oder 0)
Beschreibung von <option_flags>:
#define PDLG_PREFS 0x0000 /* Einstelldialog anzeigen */
#define PDLG_PRINT 0x0001 /* Druckdialog anzeigen */
#define PDLG_ALWAYS_COPIES 0x0010 /* immer Kopien anbieten */
#define PDLG_ALWAYS_ORIENT 0x0020 /* immer Querformat anbieten */
#define PDLG_ALWAYS_SCALE 0x0040 /* immer Skalierung anbieten */
#define PDLG_EVENODD 0x0100 /* Option für gerade und ungerade
Seiten anbieten */
Beschreibung von <button>:
#define PDLG_CANCEL 1 /* "Abbruch" wurde angewählt */
#define PDLG_OK 2 /* "OK" wurde gedrückt */
Beschreibung von <settings>:
siehe pdlg_open...