summaryrefslogtreecommitdiff
path: root/src/editor/editor_window.cpp
diff options
context:
space:
mode:
authoraura <nw@moneybot.cc>2026-08-11 19:10:16 +0200
committeraura <nw@moneybot.cc>2026-08-11 19:10:16 +0200
commit17c07b5f884453130d8be3a6d91d730d80d4f8ae (patch)
tree6ec11e5e5f7f0be9ed899196c2897aa76a907de2 /src/editor/editor_window.cpp
parent1aa17de9188790f049c0edc4281597cb4e535627 (diff)
parent0a9d7ce6a0764a87766ebb23cc1ece4c26c8c678 (diff)
Merge remote-tracking branch 'origin/day'
Diffstat (limited to 'src/editor/editor_window.cpp')
-rw-r--r--src/editor/editor_window.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/editor/editor_window.cpp b/src/editor/editor_window.cpp
index f81b1a8..5cb04c8 100644
--- a/src/editor/editor_window.cpp
+++ b/src/editor/editor_window.cpp
@@ -7,7 +7,7 @@ void gui_editorwindow_draw_fn( void* ptr ) {
editor_raise_header_toolbar( editor );
GUI_BASE* contextmenu = ( editor && editor->map ) ? (GUI_BASE*)editor->gui.contextmenu : 0;
- U8 menu_open = editor_contextmenu_open();
+ U8 menu_open = gui_contextmenu_open( (GUI_CONTEXTMENU*)contextmenu );
F32 saved_mx = input.mouse.pos.x;
F32 saved_my = input.mouse.pos.y;
@@ -34,11 +34,12 @@ void gui_editorwindow_draw_fn( void* ptr ) {
else dlog( "gui_editorwindow_draw_fn(): child %p has no draw_fn", it );
} );
+ input.mouse.pos.x = saved_mx;
+ input.mouse.pos.y = saved_my;
+
if( contextmenu && contextmenu->enabled && contextmenu->draw_fn )
contextmenu->draw_fn( contextmenu );
- input.mouse.pos.x = saved_mx;
- input.mouse.pos.y = saved_my;
editor_menu_hover_mask_active = 0;
}
@@ -48,14 +49,14 @@ static void gui_editorwindow_input_fn( void* ptr ) {
GUI_BASE* toolbar = ( editor && editor->map ) ? editor->gui.header_toolbar : 0;
GUI_BASE* contextmenu = ( editor && editor->map ) ? (GUI_BASE*)editor->gui.contextmenu : 0;
- U8 menu_was_open = editor_contextmenu_open();
+ U8 menu_was_open = gui_contextmenu_open( (GUI_CONTEXTMENU*)contextmenu );
if( toolbar && toolbar->enabled && toolbar->input_fn )
toolbar->input_fn( toolbar );
if( menu_was_open && editor && editor->gui.contextmenu && editor->gui.contextmenu->input_fn )
editor->gui.contextmenu->input_fn( editor->gui.contextmenu );
- if( menu_was_open || editor_contextmenu_open() )
+ if( menu_was_open || gui_contextmenu_open( editor ? editor->gui.contextmenu : 0 ) )
return;
wnd->children.each( fn( GUI_BASE** childptr ) {
@@ -88,6 +89,7 @@ GUI_EDITORWINDOW* gui_editorwindow( I32 w, I32 h ) {
GUI_EDITORWINDOW* wnd = gui_editorwindow_create( w, h );
GAME_EDITOR* e = editor;
LIST<GUI_LIST_ENTRY>* map_list = editor_get_map_list( e );
+
gui_list( wnd->w / 2 - 100, EDITOR_LAYOUT_CONTENT_Y, 200, 200, "map list", map_list, &editor->gui.map_select );
gui_button( wnd->w / 2 - 100, EDITOR_LAYOUT_CONTENT_Y + 220, 95, 25, "new map", editor_new_map_cb );
gui_button( wnd->w / 2 + 5, EDITOR_LAYOUT_CONTENT_Y + 220, 95, 25, "load map", editor_load_map_cb );