OBD:WMDD: Difference between revisions
No edit summary |
(design) |
||
Line 11: | Line 11: | ||
{{OBD_Table_Header}} | {{OBD_Table_Header}} | ||
|- ALIGN=CENTER VALIGN=TOP | |- ALIGN=CENTER VALIGN=TOP | ||
{{OBDtr| | {{OBDtr| 0x000 | res_id |FF0000| 01 CE 09 00 | 1541 | 01541-dialog_mainmenu.WMDD }} | ||
{{OBDtr| | {{OBDtr| 0x004 | lev_id |FFFF00| 01 00 00 00 | 0 | level 0 }} | ||
{{OBDtr2| | {{OBDtr2| 0x008| char[256]|00FF00| Main Menu | title of the dialog }} | ||
{{OBDtr| | {{OBDtr| 0x108 | int32 |00FFFF| 96 00 00 00 | 150 | dialog ID (looked up by engine) }} | ||
{{OBDtr| | {{OBDtr| 0x10C | int32 |FF00FF| 01 00 00 00 | 1 | window status flag; the following flags are possible (values in dec): | ||
Line 28: | Line 28: | ||
}} | }} | ||
{{OBDtr| | {{OBDtr| 0x110 | int16 |FF8000| 00 00 | 0 | window design; it's a bitset; the following designs are possible (values in dec): | ||
Line 49: | Line 49: | ||
}} | }} | ||
{{OBDtr| | {{OBDtr| 0x112 | int16 |FF0080| 01 00 | 1 | window position; the following positions are possible (values in dec): | ||
{{OBDtr| | |||
{{OBDtr| | |||
{{OBDtr| | 0 - the window is located in the upper left corner of the screen | ||
{{OBDtr| | |||
1 - the window is located in the center of the screen | |||
}} | |||
{{OBDtr| 0x114 | int32 |804080| 00 00 00 00 | 0 | unknown; always zero }} | |||
{{OBDtr| 0x118 | int16 |804040| 80 02 | 640 | width of the window }} | |||
{{OBDtr| 0x11A | int16 |804040| E0 01 | 480 | height of the window }} | |||
{{OBDtr| 0x11C | int32 |408080| 06 00 00 00 | 6 | array size }} | |||
{{OBDtrBK}} | {{OBDtrBK}} | ||
{{OBDtr| | {{OBDtr2| 0x000 | char[256]|FFC8C8| New Game | item text (or TXMB/TXMP name if class is 11) }} | ||
{{OBDtr| | {{OBDtr| 0x100 | int16 |FFFFC8| 04 00 | 4 | item type/class; the following types/classes are used (values in dec): | ||
{{OBDtr| | |||
{{OBDtr| | |||
{{OBDtr| | 3 - title | ||
|} | |||
4 - button | |||
5 - checkbox | |||
7 - edit field | |||
8 - listbox | |||
11 - background picture ([[OBD:TXMB|TXMB]]) or texture ([[OBD:TXMP|TXMP]]) | |||
12 - pull-down menu | |||
13 - progress bar | |||
14 - radio button | |||
17 - slider | |||
20 - text only | |||
}} | |||
{{OBDtr| 0x102 | int16 |C8FFC8| 64 00 | 100 | item ID (see below) }} | |||
{{OBDtr| 0x104 | int16 |C8FFFF| 01 00 | 1 | item option; it's a bitset; the following options are used (values in dec): | |||
0 - nothing | |||
1 - show active item (item is enabled) | |||
2 - show inactive item (needs "show item"; item is disabled) | |||
4 - disable item (needs "show item"; item is disabled) | |||
}} | |||
{{OBDtr| 0x106 | int16 |FFC8FF| 00 00 | 0 | item style flags (same as above + 0x00020000 : show text) }} | |||
{{OBDtr| 0x108 | int16 |FFC800| 00 00 | 0 | window design (see above) }} | |||
{{OBDtr| 0x10A | int16 |C800C8| 03 00 | 3 | visible option; it's a bitset; the following options are used (values in dec): | |||
0 - nothing | |||
1 - show button/scrollbar/checkbox text | |||
2 - show button text | |||
4 - show title | |||
8 - show listbox entries | |||
notes: needs more investigation; they aren't 100% correct; 16 = show text }} | |||
{{OBDtr| 0x10C | int16 |C87C64| 5E 01 | 350 | x-position of the item (from the upper left corner of the window) }} | |||
{{OBDtr| 0x10E | int16 |C87C64| E6 00 | 230 | y-position of the item (from the upper left corner of the window) }} | |||
{{OBDtr| 0x110 | int16 |B0C3D4| B4 00 | 180 | x-dimension of the item (width) }} | |||
{{OBDtr| 0x112 | int16 |B0C3D4| 28 00 | 40 | x-dimension of the item (height) }} | |||
{{OBDtr| 0x114 | link |E7CEA5| 01 02 00 00 | 2 | link to 00002-Tahoma.[[OBD:TSFF|TSFF]]}} | |||
{{OBDtr| 0x118 | int32 |FFDDDD| 01 00 00 00 | 1 | font option; the following options are possible: | |||
0 - normal font | |||
1 - '''bold''' font | |||
2 - ''italic'' font | |||
}} | |||
|0x11C|| | {{OBDtr| 0x11C | color32 |64AAAA| 00 7F FF FF | 0, 127, 255; 255 | font color (blue, green, red); transparency }} | ||
| | {{OBDtr| 0x120 | int16 |EBEBEB| 01 00 | 1 | font x-size (unused by Oni?) }} | ||
{{OBDtr| 0x122 | int16 |8C8CCC| 0A 00 | 10 | font y-size (read by DCrText_SetFontInfo) }} | |||
|0x120 | |||
| | |||
| | |||
| 10 | |||
|} | |} | ||
;Dialog ID | ;Dialog ID | ||
:Since Oni looks dialogs up by ID, changing them arbitrarily is not recommended. | :Since Oni looks dialogs up by ID, changing them arbitrarily is not recommended. | ||
Line 132: | Line 149: | ||
:A hidded/disabled window can't be activated from Oni, so if you hide the main menu, you'll have to shut down Oni from the Task Manager (or make it Blam ^^). | :A hidded/disabled window can't be activated from Oni, so if you hide the main menu, you'll have to shut down Oni from the Task Manager (or make it Blam ^^). | ||
:With "-noswitch", you can switch to other applications whenever the mouse pointer is visible in Oni. | :With "-noswitch", you can switch to other applications whenever the mouse pointer is visible in Oni. | ||
;Item IDs | ;Item IDs (for this example) | ||
:64 - "new game" window | :64 - "new game" window | ||
:65 - "load game" window | :65 - "load game" window | ||
Line 140: | Line 157: | ||
{{OBD_File_Footer|align=center|type=WMDD|prev=WMCL|next=WMM_|name=WM (Window Menu) Dialog Data|family=Global}} | {{OBD_File_Footer|align=center|type=WMDD|prev=WMCL|next=WMM_|name=WM (Window Menu) Dialog Data|family=Global}} |
Revision as of 10:55, 3 September 2007
|
The image below shows the beginning of the file with the settings of the main window.
Offset | Type | Raw Hex | Value | Description |
---|---|---|---|---|
0x000 | res_id | 01 CE 09 00 | 1541 | 01541-dialog_mainmenu.WMDD |
0x004 | lev_id | 01 00 00 00 | 0 | level 0 |
0x008 | char[256] | Main Menu | title of the dialog | |
0x108 | int32 | 96 00 00 00 | 150 | dialog ID (looked up by engine) |
0x10C | int32 | 01 00 00 00 | 1 | window status flag; the following flags are possible (values in dec):
1 - show the window 2 - grey title (normaly it's black) + window fixed (you can't move the window) 4 - window fixed (you can't move the window)
|
0x110 | int16 | 00 00 | 0 | window design; it's a bitset; the following designs are possible (values in dec):
1 - thin light blue border around the window 2 - thick light lila border around the window 4 - light lila title bar 8 - title (title bar required) 16 - "close"-button (title bar required) 32 - "restore"-button (title bar required) 64 - "minimize"-button (title bar required)
|
0x112 | int16 | 01 00 | 1 | window position; the following positions are possible (values in dec):
1 - the window is located in the center of the screen
|
0x114 | int32 | 00 00 00 00 | 0 | unknown; always zero |
0x118 | int16 | 80 02 | 640 | width of the window |
0x11A | int16 | E0 01 | 480 | height of the window |
0x11C | int32 | 06 00 00 00 | 6 | array size |
First element (black outline) | ||||
0x000 | char[256] | New Game | item text (or TXMB/TXMP name if class is 11) | |
0x100 | int16 | 04 00 | 4 | item type/class; the following types/classes are used (values in dec):
4 - button 5 - checkbox 7 - edit field 8 - listbox 11 - background picture (TXMB) or texture (TXMP) 12 - pull-down menu 13 - progress bar 14 - radio button 17 - slider 20 - text only
|
0x102 | int16 | 64 00 | 100 | item ID (see below) |
0x104 | int16 | 01 00 | 1 | item option; it's a bitset; the following options are used (values in dec):
1 - show active item (item is enabled) 2 - show inactive item (needs "show item"; item is disabled) 4 - disable item (needs "show item"; item is disabled)
|
0x106 | int16 | 00 00 | 0 | item style flags (same as above + 0x00020000 : show text) |
0x108 | int16 | 00 00 | 0 | window design (see above) |
0x10A | int16 | 03 00 | 3 | {{{6}}} |
0x10C | int16 | 5E 01 | 350 | x-position of the item (from the upper left corner of the window) |
0x10E | int16 | E6 00 | 230 | y-position of the item (from the upper left corner of the window) |
0x110 | int16 | B4 00 | 180 | x-dimension of the item (width) |
0x112 | int16 | 28 00 | 40 | x-dimension of the item (height) |
0x114 | link | 01 02 00 00 | 2 | link to 00002-Tahoma.TSFF |
0x118 | int32 | 01 00 00 00 | 1 | font option; the following options are possible:
1 - bold font 2 - italic font
|
0x11C | color32 | 00 7F FF FF | 0, 127, 255; 255 | font color (blue, green, red); transparency |
0x120 | int16 | 01 00 | 1 | font x-size (unused by Oni?) |
0x122 | int16 | 0A 00 | 10 | font y-size (read by DCrText_SetFontInfo) |
- Dialog ID
- Since Oni looks dialogs up by ID, changing them arbitrarily is not recommended.
- Show/hide flag (0x10C)
- A hidded/disabled window can't be activated from Oni, so if you hide the main menu, you'll have to shut down Oni from the Task Manager (or make it Blam ^^).
- With "-noswitch", you can switch to other applications whenever the mouse pointer is visible in Oni.
- Item IDs (for this example)
- 64 - "new game" window
- 65 - "load game" window
- 66 - "options" window
- 67 - "quit" window
- 68 - "resume" window
ONI BINARY DATA |
---|
WMCL << Other file types >> WMM_ |
WMDD : WM (Window Menu) Dialog Data |
Global file |