OBD:WMDD: Difference between revisions
Jump to navigation
Jump to search
m (0x108: listbox) |
No edit summary |
||
Line 40: | Line 40: | ||
{{OBDtr| 0x100 | int16 |FFFFC8| 04 00 | 4 | class; the following window classes exist in Oni (values in dec): | {{OBDtr| 0x100 | int16 |FFFFC8| 04 00 | 4 | class; the following window classes exist in Oni (values in dec): | ||
:1 - desktop (not used in dialogs) | :1 - desktop (not used in dialogs) | ||
:3 - | :3 - box | ||
:4 - button | :4 - button | ||
:5 - checkbox | :5 - checkbox | ||
Line 63: | Line 63: | ||
}} | }} | ||
{{OBDtr| 0x108 | int32 |FFC800| 00 00 03 00 | 0x030000 | style; some known values: | {{OBDtr| 0x108 | int32 |FFC800| 00 00 03 00 | 0x030000 | style; some known values: | ||
: | |||
:0x00 | if box: | ||
:0x00 | :0x00 '''02''' 00 00 - draw border | ||
:0x00 '''04''' 00 00 - draw text | |||
if button: | if button: | ||
Line 73: | Line 72: | ||
:0x00 00 '''02''' 00 - show button text | :0x00 00 '''02''' 00 - show button text | ||
:0x00 00 '''10''' 00 - no change in color (visible with the g206 ui, button is single-colored instead of multi-colored) | :0x00 00 '''10''' 00 - no change in color (visible with the g206 ui, button is single-colored instead of multi-colored) | ||
if checkbox: | |||
:0x00 '''01''' 00 00 - draw label | |||
if radiobutton: | |||
:0x00 '''01''' 00 00 - draw label | |||
if edit field: | |||
:0x00 '''01''' 00 00 - readonly? | |||
if listbox: | if listbox: | ||
Line 79: | Line 87: | ||
:0x00 00 '''04''' 00 - unselectable | :0x00 00 '''04''' 00 - unselectable | ||
:0x00 00 '''08''' 00 - show entries | :0x00 00 '''08''' 00 - show entries | ||
:0x00 '''01''' 00 00 - owner draw (the owner windows will draw the list entries) | |||
if picture: | |||
:0x00 '''01''' 00 00 - resize image to fit | |||
:0x00 '''02''' 00 00 - text field contains the name of a texture ([[TXMP]] or [[TXMB]] | |||
:if pull-down menu | |||
:0x00 '''01''' 00 00 - uses menu width | |||
:0x00 '''02''' 00 00 - text field contains the name of a menu ([[WMM_]]) | |||
if text field: | if text field: | ||
Line 85: | Line 102: | ||
:0x00 00 '''04''' 00 - horizontal text align <nowiki>=</nowiki> right | :0x00 00 '''04''' 00 - horizontal text align <nowiki>=</nowiki> right | ||
:0x00 00 '''10''' 00 - vertical text align <nowiki>=</nowiki> center | :0x00 00 '''10''' 00 - vertical text align <nowiki>=</nowiki> center | ||
:0x00 00 '''80''' 00 - | :0x00 00 '''80''' 00 - owner draw | ||
--- | --- | ||
:'''NOTE''': Possible values also include the ones available for the dialog style field. Style values above 0xffff have class specific meaning so the above list is not necesarilly complete (and correct). | :'''NOTE''': Possible values also include the ones available for the dialog style field. Style values above 0xffff have class specific meaning so the above list is not necesarilly complete (and correct). |
Revision as of 16:51, 2 July 2008
|
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 | |
0x108 | int16 | 96 00 | 150 | ID (looked up from code) |
0x10A | int16 | 00 00 | 0 | not used; always 0 |
0x10C | int32 | 01 00 00 00 | 0x01 | state; the following values are used:
|
0x110 | int32 | 00 00 01 00 | 0x00010000 | style; the following values are used:
|
0x114 | int16 | 00 00 | 0 | x coordinate of the window |
0x116 | int16 | 00 00 | 0 | y coordinate of the window |
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 | text (or TXMB/TXMP name if class is 11) | |
0x100 | int16 | 04 00 | 4 | class; the following window classes exist in Oni (values in dec):
|
0x102 | int16 | 64 00 | 100 | ID (looked up from code) |
0x104 | int32 | 01 00 00 00 | 0x01 | state; the following values are used:
|
0x108 | int32 | 00 00 03 00 | 0x030000 | style; some known values:
if box:
if button:
if checkbox:
if radiobutton:
if edit field:
if listbox:
if picture:
if text field:
---
|
0x10C | int16 | 5E 01 | 350 | x coordinate (relative to the top left corner of the window) |
0x10E | int16 | E6 00 | 230 | y coordinate (relative to the top left corner of the window) |
0x110 | int16 | B4 00 | 180 | width |
0x112 | int16 | 28 00 | 40 | height |
0x114 | link32 | 01 02 00 00 | 2 | link to 00002-Tahoma.TSFF |
0x118 | int32 | 01 00 00 00 | 1 | font option; the following options are possible:
|
0x11C | color32 | 00 7F FF FF | 0, 127, 255; 255 | font color (blue, green, red); transparency |
0x120 | int8 | 01 | 1 | ignored |
0x121 | int8 | 00 | 0 | ignored |
0x122 | int16 | 0A 00 | 10 | font size (height) |
- Dialog ID
- Since Oni looks dialogs up by ID, changing them arbitrarily is not recommended.
- Visible flag (0x10C)
- A hidden/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 |