OBD:WMDD: Difference between revisions

1,154 bytes added ,  7 December 2023
m
changed family
(more to come)
m (changed family)
 
(19 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{OBD_File_Header|align=center|type=WMDD|prev=WMCL|next=WMM_|name=WM (Window Menu) Dialog Data|family=Global}}
{{OBD_File_Header|align=center|type=WMDD|prev=WMCL|next=WMM_|name=WM (WindowManager) Dialog Data|family=Interface}}




Line 5: Line 5:




[[image:wmdd_all.gif]]
[[Image:wmdd_all.gif]]




Line 13: Line 13:
{{OBDtr| 0x000 | res_id  |FF0000| 01 CE 09 00 | 1541 | 01541-dialog_mainmenu.WMDD }}
{{OBDtr| 0x000 | res_id  |FF0000| 01 CE 09 00 | 1541 | 01541-dialog_mainmenu.WMDD }}
{{OBDtr| 0x004 | lev_id  |FFFF00| 01 00 00 00 | 0    | level 0 }}
{{OBDtr| 0x004 | lev_id  |FFFF00| 01 00 00 00 | 0    | level 0 }}
{{OBDtr2| 0x008| char[256]|00FF00| Main Menu          | title of the dialog }}
{{OBDtr2| 0x008| char[256]|00FF00| Main Menu          | title }}
{{OBDtr| 0x108 | int16    |00FFFF| 96 00      | 150  | dialog ID (looked up by engine) }}
{{OBDtr| 0x108 | int16    |00FFFF| 96 00      | 150  | ID (looked up from code) }}
{{OBDtr| 0x10A | int16    |00FFFF| 00 00      | 0    | not used; always 0 }}
{{OBDtr| 0x10A | int16    |00FFFF| 00 00      | 0    | not used; always 0 }}
{{OBDtr| 0x10C | int32    |FF00FF| 01 00 00 00 | 0x01 | window state; the following values are used:
{{OBDtr| 0x10C | int32    |FF00FF| 01 00 00 00 | 0x01 | state; the following values are used:
:0x'''01''' 00 00 00 - visible
:0x'''01''' 00 00 00 - visible
:0x'''02''' 00 00 00 - grey title (normaly it's black) + window fixed (you can't move the window)
:0x'''02''' 00 00 00 - disabled
:0x'''04''' 00 00 00 - window fixed (you can't move the window)
:0x'''04''' 00 00 00 - unknown
}}
}}
{{OBDtr| 0x110 | int32    |FF8000| 00 00 01 00 | 0x00010000  | window style; the following values are used:
{{OBDtr| 0x110 | int32    |FF8000| 00 00 01 00 | 0x00010000  | style; the following values are used:
:0x'''01''' 00 00 00 - thin light blue border around the window
:0x'''01''' 00 00 00 - draw default background
:0x'''02''' 00 00 00 - thick light lila border around the window
:0x'''02''' 00 00 00 - resizable window (has a thick border)
:0x'''04''' 00 00 00 - light lila title bar  
:0x'''04''' 00 00 00 - show title bar  
:0x'''08''' 00 00 00 - title (title bar required)  
:0x'''08''' 00 00 00 - show title (title bar required)  
:0x'''10''' 00 00 00 - close button visible (title bar required)  
:0x'''10''' 00 00 00 - show close button (title bar required)  
:0x'''20''' 00 00 00 - restore button visible (title bar required)  
:0x'''20''' 00 00 00 - show restore button (title bar required)  
:0x'''40''' 00 00 00 - minimize button visible (title bar required)  
:0x'''40''' 00 00 00 - show minimize button (title bar required)  
:0x00 00 '''01''' 00 - center window on screen (x, y coordinates are ignore when this style is used)
:0x00 00 '''01''' 00 - center window on screen (x, y coordinates are ignore when this style is used)
}}
}}
Line 37: Line 37:
{{OBDtr| 0x11C | int32    |408080| 06 00 00 00 | 6    | array size }}
{{OBDtr| 0x11C | int32    |408080| 06 00 00 00 | 6    | array size }}
{{OBDtrBK}}
{{OBDtrBK}}
{{OBDtr2| 0x000 | char[256]|FFC8C8| New Game | item text (or TXMB/TXMP name if class is 11) }}
{{OBDtr2| 0x000 | char[256]|FFC8C8| New Game | text or:
{{OBDtr| 0x100 | int16    |FFFFC8| 04 00 | 4 | item class; the following classes are used (values in dec):
:*TXMB/TXMP/PSpc name if class is picture  
:3 -  title
:*WMM_ name if class is popup menu
: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| 0x100 | int16     |FFFFC8| 04 00 | 4 | class; the following window classes exist in Oni (values in dec):
{{OBDtr| 0x104 | int16    |C8FFFF| 01 00      | 0x01            | item state; the following values are used:
:1 - desktop (not used in dialogs)
:0x'''01''' 00 00 00 - active (item is enabled)
:3 - box (<nowiki>=</nowiki> groupbox) (groups controls together within a border; called Title in OniSplit XML)
:0x'''02''' 00 00 00 - inactive (needs "show item"; item is disabled)
:4 - button
:0x'''04''' 00 00 00 - disabled (needs "show item"; item is disabled)  
:5 - checkbox
:6 - dialog (not used in dialogs)
:7 - edit field
:8 - listbox
:9 - menu bar (not used in dialogs)
:10 - menu (not used in dialogs)
:11 - picture ([[OBD:TXMB|TXMB]], [[OBD:TXMP|TXMP]] or [[OBD:PSpc|PSpc]])
:12 - popup menu (<nowiki>=</nowiki> pulldown menu <nowiki>=</nowiki> drop-down menu) ([[OBD:WMM_|WMM_]])
:13 - progress bar
:14 - radio button
:16 - scrollbar (not used in dialogs)
:17 - slider
:20 - text (simple text string; called Label in OniSplit XML)
}}
}}
{{OBDtr| 0x106 | int16    |FFC8FF| 00 00      | 0                | item style flags (same as above + 0x00020000 : show text) }}
{{OBDtr| 0x102 | int16    |C8FFC8| 64 00      | 100              | ID (looked up from code) }}
{{OBDtr| 0x108 | int16   |FFC800| 00 00       | 0                | window design (see above) }}
{{OBDtr| 0x104 | int32   |C8FFFF| 01 00 00 00 | 0x01            | state; the following values are used:
{{OBDtr| 0x10A | int16   |C800C8| 03 00       | 3                | visible option; the following values are used:
:0x'''01''' 00 00 00 -  visible
:0x'''01''' 00 00 00 -  show button/scrollbar/checkbox text
:0x'''02''' 00 00 00 -  disabled
:0x'''02''' 00 00 00 -  show button text
:0x'''04''' 00 00 00 -  unknown
:0x'''04''' 00 00 00 -  show title
}}
:0x'''08''' 00 00 00 -  show listbox entries
{{OBDtr| 0x108 | int32   |FFC800| 00 00 03 00 | 0x030000          | style; the dialog styles above (at 0x110) and the following control specific styles can be used here:
<nowiki>notes: needs more investigation; they aren't 100% correct; 16 = show text</nowiki>
if box:
:0x00 00 '''02''' 00 - draw text background
:0x00 00 '''04''' 00 - draw text
 
if button:
:0x00 00 '''01''' 00 -  draw button
:0x00 00 '''02''' 00 -  draw button text
:0x00 00 '''08''' 00 -  toggle button (like the ones used "in game" for help, diary etc.)
:0x00 00 '''10''' 00 -  default button (the button that coresponds to the Enter key)
 
if checkbox:
:0x00 00 '''01''' 00 - draw label
 
if radiobutton:
:0x00 00 '''01''' 00 - draw label
 
if edit field:
:0x00 00 '''01''' 00 - number only
 
if listbox:
:0x00 00 '''01''' 00 -  draw scrollbar
:0x00 00 '''02''' 00 -  alphabetical order
:0x00 00 '''04''' 00 -  unselectable
:0x00 00 '''08''' 00 -  contains text (without this it contains only "custom" data)
:0x00 00 '''10''' 00 -  owner draw (the owner window will draw the list items)
:0x00 00 '''20''' 00 -  draw file/folder icons
 
if picture:
:0x00 00 '''02''' 00 - ignore the picture name; the displayed picture is set at runtime
 
if popup menu
:0x00 00 '''01''' 00 - use menu width; doesn't work
:0x00 00 '''02''' 00 - ignore the menu name; the menu is set at runtime
 
if text field:
:0x00 00 '''02''' 00 -  horizontal text align <nowiki>=</nowiki> center
:0x00 00 '''04''' 00 -  horizontal text align <nowiki>=</nowiki> right
:0x00 00 '''10''' 00 -  vertical text align <nowiki>=</nowiki> center
:0x00 00 '''80''' 00 -  owner draw (hides text)
 
}}
}}
{{OBDtr| 0x10C | int16    |C87C64| 5E 01      | 350              | x coordinate (relative to the top left corner of the window) }}
{{OBDtr| 0x10C | int16    |C87C64| 5E 01      | 350              | x coordinate (relative to the top left corner of the window) }}
Line 76: Line 117:
:2 - ''italic'' font
:2 - ''italic'' font
}}
}}
{{OBDtr| 0x11C | color32   |64AAAA| 00 7F FF FF | 0, 127, 255; 255 | font color (blue, green, red); transparency }}
{{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| 0x120 | int8      |EBEBEB| 01         | 1                | ignored }}
{{OBDtr| 0x122 | int16   |8C8CCC| 0A 00      | 10              | font y-size (read by DCrText_SetFontInfo) }}
{{OBDtr| 0x121 | int8      |EBEBEB| 00         | 0               | ignored }}
{{OBDtr| 0x122 | int16     |8C8CCC| 0A 00      | 10              | font size (height) }}
|}
|}


Line 95: Line 137:




{{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 (WindowManager) Dialog Data|family=Interface}}
 
{{OBD}}