Make sandbox menu inherit from newmenu
This commit is contained in:
parent
df1ee5e671
commit
9edbf27300
|
@ -2645,13 +2645,19 @@ public:
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
static int sandbox_menuset(newmenu *, const d_event &event, sandbox_menu_items *items)
|
struct sandbox_menu : sandbox_menu_items, newmenu
|
||||||
|
{
|
||||||
|
sandbox_menu(grs_canvas &src) :
|
||||||
|
newmenu(menu_title{nullptr}, menu_subtitle{"Coder's sandbox"}, menu_filename{nullptr}, tiny_mode_flag::normal, tab_processing_flag::ignore, adjusted_citem::create(m, 0), src)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
virtual int subfunction_handler(const d_event &event) override;
|
||||||
|
};
|
||||||
|
|
||||||
|
int sandbox_menu::subfunction_handler(const d_event &event)
|
||||||
{
|
{
|
||||||
switch (event.type)
|
switch (event.type)
|
||||||
{
|
{
|
||||||
case EVENT_NEWMENU_CHANGED:
|
|
||||||
break;
|
|
||||||
|
|
||||||
case EVENT_NEWMENU_SELECTED:
|
case EVENT_NEWMENU_SELECTED:
|
||||||
{
|
{
|
||||||
auto &citem = static_cast<const d_select_event &>(event).citem;
|
auto &citem = static_cast<const d_select_event &>(event).citem;
|
||||||
|
@ -2666,13 +2672,6 @@ static int sandbox_menuset(newmenu *, const d_event &event, sandbox_menu_items *
|
||||||
}
|
}
|
||||||
return 1; // stay in menu until escape
|
return 1; // stay in menu until escape
|
||||||
}
|
}
|
||||||
|
|
||||||
case EVENT_WINDOW_CLOSE:
|
|
||||||
{
|
|
||||||
std::default_delete<sandbox_menu_items>()(items);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -2681,8 +2680,8 @@ static int sandbox_menuset(newmenu *, const d_event &event, sandbox_menu_items *
|
||||||
|
|
||||||
void do_sandbox_menu()
|
void do_sandbox_menu()
|
||||||
{
|
{
|
||||||
auto items = new sandbox_menu_items;
|
auto menu = window_create<sandbox_menu>(grd_curscreen->sc_canvas);
|
||||||
newmenu_do3(menu_title{nullptr}, menu_subtitle{"Coder's sandbox"}, items->m, sandbox_menuset, items, 0, menu_filename{nullptr});
|
(void)menu;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue