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

Last change on this file since 42 was 41, checked in by Tomi Tilli, 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.