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

Last change on this file since 41 was 41, checked in by aitotat, 14 years ago

Initial commit for Assembly Library.

File size: 2.3 KB
Line 
1; File name     :   Dialog.inc
2; Project name  :   Assembly Library
3; Created date  :   15.9.2010
4; Last update   :   15.9.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
48struc PROGRESS_DIALOG_IO
49    .dialogInput                    resb    DIALOG_INPUT_size
50                                    resb    2
51    .wCurrentProgressValue          resb    2
52    .wMaxProgressValue              resb    2
53    .wMinProgressValue              resb    2
54    .fnTaskWithParamInDSSI          resb    2
55
56    ; Progress Dialog internal values
57    .wProgressPerCharacter          resb    2
58    .wStartTimeTicks                resb    2
59endstruc
60
61struc FILE_DIALOG_IO
62    ; DIALOG_INPUT adjusted for File Dialog
63    .fszTitle           resb    4
64    .fszItemBuffer      resb    4   ; For generating file strings
65                        resb    4
66
67    .bUserCancellation  resb    1
68                        resb    1
69    .bDialogFlags       resb    1
70    .bFileAttributes    resb    1
71                        resb    2
72    .fpFileFilterString:            ; Ptr to NULL terminated search string (may include path and wildcards)
73    .szFile             resb    FILENAME_BUFFER_SIZE
74endstruc
75
76
77; File dialog
78FILENAME_BUFFER_SIZE                EQU     14  ; 8+1+3+NULL+alignment
79MAX_FILE_DIALOG_INFO_LINES          EQU     3
80FLG_FILEDIALOG_DRIVES               EQU     (1<<0)  ; Allow changing drive
81FLG_FILEDIALOG_DIRECTORY            EQU     (1<<1)  ; Select directory instead of file
82FLG_FILEDIALOG_NEW                  EQU     (1<<2)  ; Allow creating new file or directory
83
84KEY_FILEDIALOG_CHANGE_DRIVE         EQU     3Ch     ; F2
85KEY_FILEDIALOG_SELECT_DIRECTORY     EQU     3Dh     ; F3
86KEY_FILEDIALOG_NEW_FILE_OR_DIR      EQU     3Eh     ; F4
87
88
89%endif ; DIALOG_INC
Note: See TracBrowser for help on using the repository browser.