source: xtideuniversalbios/trunk/Assembly_Library/Inc/Dialog.inc @ 593

Last change on this file since 593 was 593, checked in by aitotat, 6 years ago

Flashing now works again.
Hack to get Windows 95 to work properly (MODULE_WIN95_CMOS_HACK included for 386 builds by default).
Edited makefile to produce large 386 build.
Fixed recovery time for QDI Vision VLB-IDE controllers.
No more warnings with Nasm 2.13.xx and later.
File dialog now properly restores default drive when file selection is cancelled.

File size: 2.6 KB
Line 
1; File name     :   Dialog.inc
2; Project name  :   Assembly Library
3; Created date  :   15.9.2010
4; Last update   :   22.10.2010
5; Author        :   Tomi Tilli
6; Description   :   Defines for Menu library dialogs.
7%ifndef DIALOG_INC
8%define DIALOG_INC
9
10; Struct and defines for all dialogs
11struc DIALOG
12    .menu                   resb    MENU_size
13    .fpDialogIO             resb    4   ; Ptr to DIALOG_INPUT + dialog specific data
14    .pParentMenu            resb    2
15endstruc
16
17DIALOG_DELTA_WIDTH_FROM_PARENT      EQU     5
18DIALOG_MAX_WIDTH                    EQU     60
19DIALOG_MAX_HEIGHT                   EQU     25
20
21
22; Dialog parameter and return value structs
23struc DIALOG_INPUT
24    .fszTitle           resb    4
25    .fszItems           resb    4
26    .fszInfo            resb    4
27endstruc
28
29struc WORD_DIALOG_IO
30    .dialogInput        resb    DIALOG_INPUT_size
31    .bUserCancellation  resb    1
32    .bNumericBase       resb    1
33    .wMin               resb    2
34    .wMax               resb    2
35    .wReturnWord        resb    2
36endstruc
37
38struc STRING_DIALOG_IO
39    .dialogInput        resb    DIALOG_INPUT_size
40    .bUserCancellation  resb    1
41                        resb    1
42    .fnCharFilter       resb    2   ; Optional, can be NULL to accept all
43    .wBufferSize:
44    .wReturnLength      resb    2   ; String length without NULL
45    .fpReturnBuffer     resb    4
46endstruc
47
48
49; Progress bar dialog
50PROGRESS_COMPLETE_CHARACTER         EQU     BLOCK_FULL_FOREGROUND
51PROGRESS_INCOMPLETE_CHARACTER       EQU     BLOCK_MOSTLY_BACKGROUND
52
53struc PROGRESS_DIALOG_IO
54    .dialogInput                    resb    DIALOG_INPUT_size
55                                    resb    2
56    .wCurrentProgressValue          resb    2
57    .wMaxProgressValue              resb    2
58    .wMinProgressValue              resb    2
59    .fnTaskWithParamInDSSI          resb    2
60
61    ; Progress Dialog internal values
62    .wProgressPerCharacter          resb    2
63    .wStartTimeTicks                resb    2
64endstruc
65
66struc DRIVE_DIALOG_IO
67    .dialogInput        resb    DIALOG_INPUT_size
68    .bUserCancellation  resb    1
69                        resb    1
70    .cReturnDriveLetter resb    1
71    .bReturnDriveNumber resb    1
72endstruc
73
74
75; File dialog
76FILENAME_BUFFER_SIZE                EQU     14  ; 8+1+3+NULL+alignment
77MAX_FILE_DIALOG_INFO_LINES          EQU     3
78FLG_FILEDIALOG_DRIVES               EQU     (1<<0)  ; Allow changing drive
79FLG_FILEDIALOG_DIRECTORY            EQU     (1<<1)  ; Select directory instead of file
80FLG_FILEDIALOG_NEW                  EQU     (1<<2)  ; Allow creating new file or directory
81
82KEY_FILEDIALOG_CHANGE_DRIVE         EQU     3Ch     ; F2
83KEY_FILEDIALOG_SELECT_DIRECTORY     EQU     3Dh     ; F3
84KEY_FILEDIALOG_NEW_FILE_OR_DIR      EQU     3Eh     ; F4
85
86struc FILE_DIALOG_IO
87    ; DIALOG_INPUT adjusted for File Dialog
88    .fszTitle           resb    4
89    .fszItemBuffer      resb    4   ; For generating file strings
90                        resb    4
91
92    .bUserCancellation  resb    1
93                        resb    1
94    .bDialogFlags       resb    1
95    .bFileAttributes    resb    1
96                        resb    2
97    .fpFileFilterString:            ; Ptr to NULL terminated search string (may include path and wildcards)
98    .szFile             resb    FILENAME_BUFFER_SIZE
99endstruc
100
101
102%endif ; DIALOG_INC
Note: See TracBrowser for help on using the repository browser.