OBD:WMDD

From OniGalore
Revision as of 12:55, 1 May 2008 by Neo (talk | contribs) (more to come)
Jump to navigation Jump to search
ONI BINARY DATA
WMCL << Other file types >> WMM_
WMDD : WM (Window Menu) Dialog Data
switch to XML:WMDD page
Overview @ Oni Stuff
OBD.png


The image below shows the beginning of the file with the settings of the main window.


Wmdd all.gif


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 int16 96 00 150 dialog ID (looked up by engine)
0x10A int16 00 00 0 not used; always 0
0x10C int32 01 00 00 00 0x01 window state; the following values are used:
0x01 00 00 00 - visible
0x02 00 00 00 - grey title (normaly it's black) + window fixed (you can't move the window)
0x04 00 00 00 - window fixed (you can't move the window)
0x110 int32 00 00 01 00 0x00010000 window style; the following values are used:
0x01 00 00 00 - thin light blue border around the window
0x02 00 00 00 - thick light lila border around the window
0x04 00 00 00 - light lila title bar
0x08 00 00 00 - title (title bar required)
0x10 00 00 00 - close button visible (title bar required)
0x20 00 00 00 - restore button visible (title bar required)
0x40 00 00 00 - minimize button visible (title bar required)
0x00 00 01 00 - center window on screen (x, y coordinates are ignore when this style is 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 item text (or TXMB/TXMP name if class is 11)
0x100 int16 04 00 4 item class; the following classes are used (values in dec):
3 - title
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 0x01 item state; the following values are used:
0x01 00 00 00 - active (item is enabled)
0x02 00 00 00 - inactive (needs "show item"; item is disabled)
0x04 00 00 00 - disabled (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 visible option; the following values are used:
0x01 00 00 00 - show button/scrollbar/checkbox text
0x02 00 00 00 - show button text
0x04 00 00 00 - show title
0x08 00 00 00 - show listbox entries

notes: needs more investigation; they aren't 100% correct; 16 = show text

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:
0 - normal font
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.
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