2026-01-01 22:18:40 -05:00
|
|
|
type menu [display="Menu"]
|
|
|
|
|
{
|
2026-01-07 16:36:40 -05:00
|
|
|
// windowDef_t embedded structure (156 bytes)
|
|
|
|
|
window = parse_here("windowdef");
|
2026-01-01 22:18:40 -05:00
|
|
|
|
2026-01-07 16:36:40 -05:00
|
|
|
i32 font_ptr [ui, readonly, display="Font Ptr"];
|
|
|
|
|
i32 full_screen [ui, readonly, display="Full Screen"];
|
|
|
|
|
i32 item_count [ui, readonly, display="Item Count"];
|
|
|
|
|
i32 font_index [ui, readonly, display="Font Index"];
|
|
|
|
|
i32 cursor_item [ui, readonly, display="Cursor Item"];
|
|
|
|
|
i32 fade_cycle [ui, readonly, display="Fade Cycle"];
|
|
|
|
|
|
|
|
|
|
// Fade values (3 floats = 12 bytes)
|
|
|
|
|
fade_values = read(12) [ui, readonly, display="Fade Clamp/Amount/InAmount"];
|
|
|
|
|
|
|
|
|
|
// Blur radius (float = 4 bytes)
|
|
|
|
|
blur_radius = read(4) [ui, readonly, display="Blur Radius"];
|
|
|
|
|
|
|
|
|
|
// Event handler pointers
|
|
|
|
|
i32 on_open_ptr [ui, readonly, display="OnOpen Ptr"];
|
|
|
|
|
i32 on_close_ptr [ui, readonly, display="OnClose Ptr"];
|
|
|
|
|
i32 on_esc_ptr [ui, readonly, display="OnESC Ptr"];
|
|
|
|
|
i32 on_key_ptr [ui, readonly, display="OnKey Ptr"];
|
|
|
|
|
|
|
|
|
|
i32 sound_name_ptr [ui, readonly, display="Sound Name Ptr"];
|
|
|
|
|
i32 items_ptr [ui, readonly, display="Items Ptr"];
|
|
|
|
|
i32 allowed_binding_ptr [ui, readonly, display="Allowed Binding Ptr"];
|
|
|
|
|
i32 sound_loop_ptr [ui, readonly, display="Sound Loop Ptr"];
|
|
|
|
|
i32 image_track [ui, readonly, display="Image Track"];
|
|
|
|
|
|
|
|
|
|
// Parse inline font
|
|
|
|
|
if (font_ptr == -1) {
|
|
|
|
|
font = cstring() [ui, readonly, display="Font"];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Parse inline strings
|
|
|
|
|
if (on_open_ptr == -1) {
|
|
|
|
|
on_open = cstring() [ui, readonly, display="OnOpen"];
|
|
|
|
|
}
|
|
|
|
|
if (on_close_ptr == -1) {
|
|
|
|
|
on_close = cstring() [ui, readonly, display="OnClose"];
|
|
|
|
|
}
|
|
|
|
|
if (on_esc_ptr == -1) {
|
|
|
|
|
on_esc = cstring() [ui, readonly, display="OnESC"];
|
|
|
|
|
}
|
|
|
|
|
if (on_key_ptr == -1) {
|
|
|
|
|
on_key = parse_here("itemkeyhandler");
|
|
|
|
|
}
|
|
|
|
|
if (sound_name_ptr == -1) {
|
|
|
|
|
sound_name = cstring() [ui, readonly, display="Sound Name"];
|
|
|
|
|
}
|
|
|
|
|
if (allowed_binding_ptr == -1) {
|
|
|
|
|
allowed_binding = cstring() [ui, readonly, display="Allowed Binding"];
|
|
|
|
|
}
|
|
|
|
|
if (sound_loop_ptr == -1) {
|
|
|
|
|
sound_loop = cstring() [ui, readonly, display="Sound Loop"];
|
2026-01-01 22:18:40 -05:00
|
|
|
}
|
|
|
|
|
|
2026-01-07 16:36:40 -05:00
|
|
|
// Parse inline items
|
|
|
|
|
if (items_ptr == -1 && item_count > 0) {
|
|
|
|
|
items = 0;
|
|
|
|
|
repeat(item_count) {
|
|
|
|
|
_item = parse_here("itemdef");
|
|
|
|
|
items = push("items", _item);
|
|
|
|
|
}
|
|
|
|
|
}
|
2026-01-01 22:18:40 -05:00
|
|
|
}
|