OBD talk:WMDD: Difference between revisions
Paradox-01 (talk | contribs) mNo edit summary |
Paradox-01 (talk | contribs) mNo edit summary |
||
Line 1: | Line 1: | ||
{{Template:XMLModdingHints}} | |||
{| border=0 cellspacing=20 cellpadding=0 align=center | |||
| The xml code on this page is compatible with onisplit '''v0.9.61.0''' | |||
|} | |||
=[[OBD:WMDD|WMDD]]: blue windows= | =[[OBD:WMDD|WMDD]]: blue windows= | ||
'''general information''' | '''general information''' | ||
* | * WMDD file are global (edition/GameDataFolder/level0_...) | ||
* A WMDD file contains either a page plus dialogs or a "pop-up" page like "WMDDdialog_ChangeRestart.xml" with dialogs. | * A WMDD file contains either a page plus dialogs or a "pop-up" page like "WMDDdialog_ChangeRestart.xml" with dialogs. | ||
* interfering WMDD ? : WMDDdialog_text_console.xml (might define size of "text consoles", | * interfering WMDD ? : WMDDdialog_text_console.xml (might define size of "text consoles", there: 460x410) | ||
* Oni's out-of-game windows are [http://i305.photobucket.com/albums/nn207/unknownfuture/Oni_Galore_Images/XML_modding/Changed_Load_Menu.png overlaying.] The ''parent'' window becomes visible if you remove the background. | * Oni's out-of-game windows are [http://i305.photobucket.com/albums/nn207/unknownfuture/Oni_Galore_Images/XML_modding/Changed_Load_Menu.png overlaying.] The ''parent'' window becomes visible if you remove the background. | ||
Line 13: | Line 17: | ||
'''XML structure''' | '''XML structure''' | ||
<?xml version="1.0" encoding="utf-8"?> | <?xml version="1.0" encoding="utf-8"?> | ||
<Oni | <Oni> | ||
< | <WMDD id="0"> | ||
<nowiki><Caption>Options</Caption></nowiki> | <nowiki><Caption>Options</Caption></nowiki> | ||
<Id>152</Id> | <Id>152</Id> | ||
Line 51: | Line 55: | ||
'''</WMDDControl>''' | '''</WMDDControl>''' | ||
*TXMB note: | * TXMB note: | ||
: If you add <WMDDControl> blocks then don't add them under the <WMDDControl> block with TXMB or else your new blocks will be hidden. | : If you add <WMDDControl> blocks then don't add them under the <WMDDControl> block with TXMB or else your new blocks will be hidden. | ||
*Always the same if <Text> contains "outline" | * Always the same if <Text> contains "outline" | ||
<Text>outline</Text> | <Text>outline</Text> | ||
<Class>Title</Class> | <Class>Title</Class> | ||
Line 63: | Line 67: | ||
===header=== | |||
{{Table}} | {{Table}} | ||
!XML tag | !width=80px| XML tag | ||
! | !width=60px| type | ||
! | ! flags and descriptions | ||
|- | |- | ||
| <nowiki><Caption></nowiki> | |||
| char[256] | |||
| page name/title | |||
|<nowiki><Caption></nowiki> | |||
| | |||
| | |||
|- | |- | ||
|<Id> | |<Id> | ||
|page Id; page is looked up by exe | | int16 | ||
| page Id; page is looked up by exe | |||
|- | |- | ||
|valign=top|<State> | |valign=top| <State> | ||
|valign=top| flag | |||
| | | | ||
: Visible | |||
:Visible | : Disabled | ||
:Disabled | : State04 | ||
:State04 | |||
|- | |- | ||
|valign=top|<Style> | |valign=top| <Style> | ||
|valign=top| flag/int32 | |||
| | | | ||
: ThinBorder (01 00 00 00) | |||
:ThinBorder (01 00 00 00) | : ThickBorder (02 00 00 00) | ||
:ThickBorder (02 00 00 00) | : TitleBar (04 00 00 00) | ||
:TitleBar (04 00 00 00) | : Title (08 00 00 00) | ||
:Title (08 00 00 00) | : CloseButton (10 00 00 00) | ||
:CloseButton (10 00 00 00) | : RestoreButton (20 00 00 00) | ||
:RestoreButton (20 00 00 00) | : MinimizeButton (40 00 00 00) | ||
:MinimizeButton (40 00 00 00) | : Center (00 00 01 00) | ||
:Center (00 00 01 00) | ---- | ||
: 65536 (00 00 01 00) | |||
: 131072 (00 00 02 00) | |||
: 262144 (00 00 04 00) | |||
: 524288 (00 00 08 00) | |||
: 1048576 (00 00 10 00) | |||
: 2097152 (00 00 20 00) | |||
: 4194304 (00 00 40 00) | |||
: 8388608 (00 00 80 00) | |||
|- | |- | ||
|<X> | | <X> | ||
|align (in header always 0) | | int16 | ||
| align (in header always 0) | |||
|- | |- | ||
|<Y> | | <Y> | ||
|align (in header always 0) | | int16 | ||
| align (in header always 0) | |||
|- | |- | ||
|<Width> | | <Width> | ||
|X dimention (in header always 640 ?) | | int16 | ||
| X dimention (in header always 640 ?) | |||
|- | |- | ||
|<Height> | | <Height> | ||
|Y dimention (in header always 480 ?) | | int16 | ||
| | | Y dimention (in header always 480 ?) | ||
|} | |||
| | ===<WMDDControl>=== | ||
| | {{Table}} | ||
!width=80px| XML tag | |||
!width=60px| type | |||
! flags and descriptions | |||
|- | |- | ||
|valign=top|<Text> | |valign=top|<Text> | ||
|valign=top| char[256] | |||
| | | | ||
*can contain text | * can contain text | ||
*"outline" was always used by bungie for <Class>Title</Class> (it's invisible) | * "outline" was always used by bungie for <Class>Title</Class> (it's invisible) | ||
*"WMM_''filename''" | * "WMM_''filename''" | ||
|- | |- | ||
|valign=top|<Class> | |valign=top| <Class> | ||
|valign=top| flag | |||
| | | | ||
: Desktop (01 00) | |||
:Desktop (01 00) | : Title (03 00) | ||
:Title (03 00) | : Button (04 00) (button text like "OK" or "Close") | ||
:Button (04 00) (button text like "OK" or "Close") | : Checkbox (05 00) | ||
:Checkbox (05 00) | : Dialog (06 00) | ||
:Dialog (06 00) | : Textbox (07 00) | ||
:Textbox (07 00) | : Listbox (08 00) | ||
:Listbox (08 00) | : MenuBar (09 00) | ||
:MenuBar (09 00) | : Menu (0A 00) | ||
:Menu (0A 00) | : Image (0B 00) (TXMB / TXMP / PSpc) | ||
:Image (0B 00) (TXMB / TXMP / PSpc) | : Dropdown (0C 00) (WMM_ drop-down menu) | ||
:Dropdown (0C 00) (WMM_ drop-down menu) | : ProgressBar (0D 00) | ||
:ProgressBar (0D 00) | : RadioButton (0E 00) | ||
:RadioButton (0E 00) | : 16 (10 00) (scrollbar; not used in dialogs) | ||
:16 (10 00) (scrollbar; not used in dialogs) | : Slider (11 00) | ||
:Slider (11 00) | : Label (14 00) (page caption; too low <Width> value forces line break) | ||
:Label (14 00) (page caption; too low <Width> value forces line break) | |||
|- | |- | ||
|<Id> | | <Id> | ||
|page Id; page is looked up by exe | | int16 | ||
| page Id; page is looked up by exe | |||
|- | |- | ||
|valign=top|<State> | |valign=top| <State> | ||
| | |valign=top| flag | ||
| | | | ||
:1 (visible) | :1 (visible) | ||
Line 171: | Line 172: | ||
:4 (unknown, propably "change texture on click" (used by checkbox)) | :4 (unknown, propably "change texture on click" (used by checkbox)) | ||
|- | |- | ||
|valign=top|<Style> | |valign=top| <Style> | ||
|valign=top| flag | |||
| | | | ||
: ThinBorder (01 00 00 00) | |||
:ThinBorder (01 00 00 00) | : ThickBorder (02 00 00 00) | ||
:ThickBorder (02 00 00 00) | : TitleBar (04 00 00 00) | ||
:TitleBar (04 00 00 00) | : Title (08 00 00 00) | ||
:Title (08 00 00 00) | : CloseButton (10 00 00 00) | ||
:CloseButton (10 00 00 00) | : RestoreButton (20 00 00 00) | ||
:RestoreButton (20 00 00 00) | : MinimizeButton (40 00 00 00) | ||
:MinimizeButton (40 00 00 00) | : Center (00 00 01 00) | ||
:Center (00 00 01 00) | |||
Line 187: | Line 188: | ||
if box: | if box: | ||
:131072 (00 00 02 00) (draw text background) | : 131072 (00 00 02 00) (draw text background) | ||
:262144 (00 00 04 00) (draw text) | : 262144 (00 00 04 00) (draw text) | ||
if button: | if button: | ||
:65536 (00 00 01 00) (draw button) | : 65536 (00 00 01 00) (draw button) | ||
:131072 (00 00 02 00) (draw button text) | : 131072 (00 00 02 00) (draw button text) | ||
:524288 (00 00 08 00) (toggle button like the ones used "in game" for help, diary, etc.) | : 524288 (00 00 08 00) (toggle button like the ones used "in game" for help, diary, etc.) | ||
:1048576 (00 00 10 00) (default button, it corresponds to the Enter key) | : 1048576 (00 00 10 00) (default button, it corresponds to the Enter key) | ||
if checkbox: | if checkbox: | ||
:65536 (00 00 01 00) (draw label) | : 65536 (00 00 01 00) (draw label) | ||
if radiobutton: | if radiobutton: | ||
:65536 (00 00 01 00) (draw label) | : 65536 (00 00 01 00) (draw label) | ||
if edit field: | if edit field: | ||
:65536 (00 00 01 00) (number only) | : 65536 (00 00 01 00) (number only) | ||
if listbox: | if listbox: | ||
:65536 (00 00 01 00) (draw scrollbar) | : 65536 (00 00 01 00) (draw scrollbar) | ||
:131072 (00 00 02 00) (alphabetical order) | : 131072 (00 00 02 00) (alphabetical order) | ||
:262144 (00 00 04 00) (unselecable) | : 262144 (00 00 04 00) (unselecable) | ||
:524288 (00 00 08 00) (contains text, without this it contains only "custom" data) | : 524288 (00 00 08 00) (contains text, without this it contains only "custom" data) | ||
:1048576 (00 00 10 00) (owner draw, the owner window will draw the list item) | : 1048576 (00 00 10 00) (owner draw, the owner window will draw the list item) | ||
:2097152 (00 00 20 00) (draw file/folder icons) | : 2097152 (00 00 20 00) (draw file/folder icons) | ||
if picture: | if picture: | ||
:131072 (00 00 02 00) (ignore the picture name; the displayed picture is set at runtime) | : 131072 (00 00 02 00) (ignore the picture name; the displayed picture is set at runtime) | ||
if popup menu: | if popup menu: | ||
:65536 (00 00 01 00) (use menu width; doesn't work) | : 65536 (00 00 01 00) (use menu width; doesn't work) | ||
:131072 (00 00 02 00) (ignore the menu name; the menu is set at runtime) | : 131072 (00 00 02 00) (ignore the menu name; the menu is set at runtime) | ||
if text field: | if text field: | ||
:131072 (00 00 02 00) (horizontal text align = center) | : 131072 (00 00 02 00) (horizontal text align = center) | ||
:262144 (00 00 04 00) (horizontal text align = right) | : 262144 (00 00 04 00) (horizontal text align = right) | ||
:1048576 (00 00 10 00) (vertical text align = center) | : 1048576 (00 00 10 00) (vertical text align = center) | ||
:8388608 (00 00 80 00) (owner draw (hides text)) | : 8388608 (00 00 80 00) (owner draw (hides text)) | ||
if text field: | if text field: | ||
:131072 (00 00 02 00) (horizontal text align = center) | : 131072 (00 00 02 00) (horizontal text align = center) | ||
:262144 (00 00 04 00) (horizontal text align = right) | : 262144 (00 00 04 00) (horizontal text align = right) | ||
:1048576 (00 00 10 00) (vertical text align = center) | : 1048576 (00 00 10 00) (vertical text align = center) | ||
:8388608 (00 00 80 00) (owner draw (hides text)) | : 8388608 (00 00 80 00) (owner draw (hides text)) | ||
---- | ---- | ||
:65536 (00 00 01 00) | : 65536 (00 00 01 00) | ||
:131072 (00 00 02 00) | : 131072 (00 00 02 00) | ||
:262144 (00 00 04 00) | : 262144 (00 00 04 00) | ||
:524288 (00 00 08 00) | : 524288 (00 00 08 00) | ||
:1048576 (00 00 10 00) | : 1048576 (00 00 10 00) | ||
:2097152 (00 00 20 00) | : 2097152 (00 00 20 00) | ||
:4194304 (00 00 40 00) | : 4194304 (00 00 40 00) | ||
:8388608 (00 00 80 00) | : 8388608 (00 00 80 00) | ||
|- | |- | ||
|<X> | | <X> | ||
|align (relative to the top left corner of the window) | | int16 | ||
| align (relative to the top left corner of the window) | |||
|- | |- | ||
|<Y> | | <Y> | ||
|align (relative to the top left corner of the window) | | int16 | ||
| align (relative to the top left corner of the window) | |||
|- | |- | ||
|<Width> | | <Width> | ||
|X dimention | | int16 | ||
| X dimention | |||
|- | |- | ||
|<Height> | | <Height> | ||
|Y dimention | | int16 | ||
| Y dimention | |||
|- | |- | ||
| | | <Family> | ||
| | | link32 | ||
| | | link to TSFF, usually "TSFFTahoma" | ||
|- | |- | ||
|< | | <Style> | ||
| | |valign=top| flag | ||
| | |||
| | | | ||
: Normal (00 00 00 00) | : Normal (00 00 00 00) | ||
Line 273: | Line 270: | ||
: Italic (02 00 00 00) | : Italic (02 00 00 00) | ||
|- | |- | ||
|<Color> | | <Color> | ||
|R G B range, e.g. 255 127 0 (for orange) | | color32 | ||
| R G B range, e.g. 255 127 0 (for orange) | |||
|- | |- | ||
|<Size> | | <Size> | ||
|usually 10; 7 for "<Text>outline</Text>" | | int16 | ||
| font size is usually 10; 7 for "<Text>outline</Text>" | |||
|} | |} | ||
Revision as of 08:03, 15 April 2012
The xml code on this page is compatible with onisplit v0.9.61.0 |
WMDD: blue windows
general information
- WMDD file are global (edition/GameDataFolder/level0_...)
- A WMDD file contains either a page plus dialogs or a "pop-up" page like "WMDDdialog_ChangeRestart.xml" with dialogs.
- interfering WMDD ? : WMDDdialog_text_console.xml (might define size of "text consoles", there: 460x410)
- Oni's out-of-game windows are overlaying. The parent window becomes visible if you remove the background.
XML structure
<?xml version="1.0" encoding="utf-8"?> <Oni> <WMDD id="0"> <Caption>Options</Caption> <Id>152</Id> <State>Visible</State> <Style>Center</Style> <X>0</X> <Y>0</Y> <Width>640</Width> <Height>480</Height> <Controls> [...] </Controls> </Instance> </Oni>
[...] means at least one WMDDControl block.
example
<WMDDControl> <Text>Options</Text> <Class>Label</Class> <Id>0</Id> <State>1</State> <Style>1114112</Style> <X>5</X> <Y>10</Y> <Width>70</Width> <Height>20</Height> <Font> <Family>TSFFTahoma</Family> <Style>Bold</Style> <Color>255 127 0</Color> <Size>10</Size> </Font> </WMDDControl>
- TXMB note:
- If you add <WMDDControl> blocks then don't add them under the <WMDDControl> block with TXMB or else your new blocks will be hidden.
- Always the same if <Text> contains "outline"
<Text>outline</Text> <Class>Title</Class> <Id>0</Id> <State>5</State> <Style>65536</Style>
header
XML tag | type | flags and descriptions |
---|---|---|
<Caption> | char[256] | page name/title |
<Id> | int16 | page Id; page is looked up by exe |
<State> | flag |
|
<Style> | flag/int32 |
|
<X> | int16 | align (in header always 0) |
<Y> | int16 | align (in header always 0) |
<Width> | int16 | X dimention (in header always 640 ?) |
<Height> | int16 | Y dimention (in header always 480 ?) |
<WMDDControl>
XML tag | type | flags and descriptions |
---|---|---|
<Text> | char[256] |
|
<Class> | flag |
|
<Id> | int16 | page Id; page is looked up by exe |
<State> | flag |
|
<Style> | flag |
if box:
if button:
if checkbox:
if radiobutton:
if edit field:
if listbox:
if picture:
if popup menu:
if text field:
if text field:
|
<X> | int16 | align (relative to the top left corner of the window) |
<Y> | int16 | align (relative to the top left corner of the window) |
<Width> | int16 | X dimention |
<Height> | int16 | Y dimention |
<Family> | link32 | link to TSFF, usually "TSFFTahoma" |
<Style> | flag |
|
<Color> | color32 | R G B range, e.g. 255 127 0 (for orange) |
<Size> | int16 | font size is usually 10; 7 for "<Text>outline</Text>" |
talk
there's is no such thing as "show background" for text fields, that 01 flag is in fact the "draw default background" window style
So why did you delete it? It changes the style as well: Left image "player name" with 0x00001100. Right image with 0x01001100.
Ssg 13:29, 25 July 2008 (CEST)
Because it's not control specific:
style; dialog styles and the following control specific styles can be used here:
It's already listed under dialog styles. If you want to add this flag to text field then you need to add it to picture fields too for example. And you also need to add the "resizable window" flag and pretty much all the other dialog styles to all the controls.
style; dialog styles and the following control specific styles can be used here:
Ahhhhh... "dialog styles" refers to the "sytle"-section above. Now I got it. Thanks. Ssg 19:56, 27 July 2008 (CEST)