mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-09-24 02:00:05 +00:00
os -> wm; *_w32_ -> w32_*_, *_lnx_ -> lnx_*_
This commit is contained in:
+122
-122
@@ -212,7 +212,7 @@ RD_VocabInfo rd_vocab_info_table[360] =
|
||||
{str8_lit_comp("open_palette"), str8_lit_comp(""), str8_lit_comp("Open Palette"), str8_lit_comp(""), RD_IconKind_List},
|
||||
{str8_lit_comp("run_command"), str8_lit_comp(""), str8_lit_comp("Run Command"), str8_lit_comp(""), RD_IconKind_Null},
|
||||
{str8_lit_comp("run_ext_driver_text_command"), str8_lit_comp(""), str8_lit_comp("Run External Driver Text Command"), str8_lit_comp(""), RD_IconKind_Null},
|
||||
{str8_lit_comp("os_event"), str8_lit_comp(""), str8_lit_comp("OS Event"), str8_lit_comp(""), RD_IconKind_Null},
|
||||
{str8_lit_comp("wm_event"), str8_lit_comp(""), str8_lit_comp("OS Event"), str8_lit_comp(""), RD_IconKind_Null},
|
||||
{str8_lit_comp("select_thread"), str8_lit_comp(""), str8_lit_comp("Select Thread"), str8_lit_comp(""), RD_IconKind_Thread},
|
||||
{str8_lit_comp("select_unwind"), str8_lit_comp(""), str8_lit_comp("Select Unwind"), str8_lit_comp(""), RD_IconKind_Null},
|
||||
{str8_lit_comp("up_one_frame"), str8_lit_comp(""), str8_lit_comp("Up One Frame"), str8_lit_comp(""), RD_IconKind_UpArrow},
|
||||
@@ -520,7 +520,7 @@ str8_lit_comp("activate_with_single_click"),
|
||||
str8_lit_comp("dir2"),
|
||||
str8_lit_comp("string"),
|
||||
str8_lit_comp("cmd_name"),
|
||||
str8_lit_comp("os_event"),
|
||||
str8_lit_comp("wm_event"),
|
||||
};
|
||||
|
||||
Rng1U64 rd_reg_slot_range_table[49] =
|
||||
@@ -573,7 +573,7 @@ Rng1U64 rd_reg_slot_range_table[49] =
|
||||
{OffsetOf(RD_Regs, dir2), OffsetOf(RD_Regs, dir2) + sizeof(Dir2)},
|
||||
{OffsetOf(RD_Regs, string), OffsetOf(RD_Regs, string) + sizeof(String8)},
|
||||
{OffsetOf(RD_Regs, cmd_name), OffsetOf(RD_Regs, cmd_name) + sizeof(String8)},
|
||||
{OffsetOf(RD_Regs, os_event), OffsetOf(RD_Regs, os_event) + sizeof(OS_Event *)},
|
||||
{OffsetOf(RD_Regs, wm_event), OffsetOf(RD_Regs, wm_event) + sizeof(WM_Event *)},
|
||||
};
|
||||
|
||||
RD_CmdKindInfo rd_cmd_kind_info_table[249] =
|
||||
@@ -615,7 +615,7 @@ RD_CmdKindInfo rd_cmd_kind_info_table[249] =
|
||||
{ str8_lit_comp("open_palette"), str8_lit_comp("Opens the palette."), str8_lit_comp("help,cmd,lister"), str8_lit_comp(""), (RD_CmdKindFlag_ListInUI*1)|(RD_CmdKindFlag_ListInIPCDocs*1)|(RD_CmdKindFlag_ListInTextPt*0)|(RD_CmdKindFlag_ListInTextRng*0), {(RD_QueryFlag_AllowFiles*0)|(RD_QueryFlag_AllowFolders*0)|(RD_QueryFlag_CodeInput*0)|(RD_QueryFlag_KeepOldInput*0)|(RD_QueryFlag_SelectOldInput*0)|(RD_QueryFlag_Floating*0)|(RD_QueryFlag_Required*0), RD_RegSlot_Null, str8_lit_comp(""), str8_lit_comp(""), D_EntityKind_Null}},
|
||||
{ str8_lit_comp("run_command"), str8_lit_comp("Runs a command from the command palette."), str8_lit_comp("help,cmd"), str8_lit_comp(""), (RD_CmdKindFlag_ListInUI*1)|(RD_CmdKindFlag_ListInIPCDocs*1)|(RD_CmdKindFlag_ListInTextPt*0)|(RD_CmdKindFlag_ListInTextRng*0), {(RD_QueryFlag_AllowFiles*0)|(RD_QueryFlag_AllowFolders*0)|(RD_QueryFlag_CodeInput*0)|(RD_QueryFlag_KeepOldInput*0)|(RD_QueryFlag_SelectOldInput*0)|(RD_QueryFlag_Floating*1)|(RD_QueryFlag_Required*1), RD_RegSlot_CmdName, str8_lit_comp("query:commands"), str8_lit_comp("commands"), D_EntityKind_Null}},
|
||||
{ str8_lit_comp("run_ext_driver_text_command"), str8_lit_comp(""), str8_lit_comp(""), str8_lit_comp(""), (RD_CmdKindFlag_ListInUI*0)|(RD_CmdKindFlag_ListInIPCDocs*0)|(RD_CmdKindFlag_ListInTextPt*0)|(RD_CmdKindFlag_ListInTextRng*0), {(RD_QueryFlag_AllowFiles*0)|(RD_QueryFlag_AllowFolders*0)|(RD_QueryFlag_CodeInput*0)|(RD_QueryFlag_KeepOldInput*0)|(RD_QueryFlag_SelectOldInput*0)|(RD_QueryFlag_Floating*1)|(RD_QueryFlag_Required*1), RD_RegSlot_Null, str8_lit_comp(""), str8_lit_comp(""), D_EntityKind_Null}},
|
||||
{ str8_lit_comp("os_event"), str8_lit_comp(""), str8_lit_comp(""), str8_lit_comp(""), (RD_CmdKindFlag_ListInUI*0)|(RD_CmdKindFlag_ListInIPCDocs*0)|(RD_CmdKindFlag_ListInTextPt*0)|(RD_CmdKindFlag_ListInTextRng*0), {(RD_QueryFlag_AllowFiles*0)|(RD_QueryFlag_AllowFolders*0)|(RD_QueryFlag_CodeInput*0)|(RD_QueryFlag_KeepOldInput*0)|(RD_QueryFlag_SelectOldInput*0)|(RD_QueryFlag_Floating*0)|(RD_QueryFlag_Required*0), RD_RegSlot_Null, str8_lit_comp(""), str8_lit_comp(""), D_EntityKind_Null}},
|
||||
{ str8_lit_comp("wm_event"), str8_lit_comp(""), str8_lit_comp(""), str8_lit_comp(""), (RD_CmdKindFlag_ListInUI*0)|(RD_CmdKindFlag_ListInIPCDocs*0)|(RD_CmdKindFlag_ListInTextPt*0)|(RD_CmdKindFlag_ListInTextRng*0), {(RD_QueryFlag_AllowFiles*0)|(RD_QueryFlag_AllowFolders*0)|(RD_QueryFlag_CodeInput*0)|(RD_QueryFlag_KeepOldInput*0)|(RD_QueryFlag_SelectOldInput*0)|(RD_QueryFlag_Floating*0)|(RD_QueryFlag_Required*0), RD_RegSlot_Null, str8_lit_comp(""), str8_lit_comp(""), D_EntityKind_Null}},
|
||||
{ str8_lit_comp("select_thread"), str8_lit_comp("Selects a thread."), str8_lit_comp(""), str8_lit_comp(""), (RD_CmdKindFlag_ListInUI*1)|(RD_CmdKindFlag_ListInIPCDocs*1)|(RD_CmdKindFlag_ListInTextPt*0)|(RD_CmdKindFlag_ListInTextRng*0), {(RD_QueryFlag_AllowFiles*0)|(RD_QueryFlag_AllowFolders*0)|(RD_QueryFlag_CodeInput*0)|(RD_QueryFlag_KeepOldInput*0)|(RD_QueryFlag_SelectOldInput*0)|(RD_QueryFlag_Floating*1)|(RD_QueryFlag_Required*1), RD_RegSlot_Thread, str8_lit_comp("query:threads"), str8_lit_comp(""), D_EntityKind_Thread}},
|
||||
{ str8_lit_comp("select_unwind"), str8_lit_comp("Selects an unwind frame number for the selected thread."), str8_lit_comp(""), str8_lit_comp(""), (RD_CmdKindFlag_ListInUI*0)|(RD_CmdKindFlag_ListInIPCDocs*1)|(RD_CmdKindFlag_ListInTextPt*0)|(RD_CmdKindFlag_ListInTextRng*0), {(RD_QueryFlag_AllowFiles*0)|(RD_QueryFlag_AllowFolders*0)|(RD_QueryFlag_CodeInput*0)|(RD_QueryFlag_KeepOldInput*0)|(RD_QueryFlag_SelectOldInput*0)|(RD_QueryFlag_Floating*0)|(RD_QueryFlag_Required*0), RD_RegSlot_Null, str8_lit_comp("query:call_stack"), str8_lit_comp(""), D_EntityKind_Null}},
|
||||
{ str8_lit_comp("up_one_frame"), str8_lit_comp("Selects the call stack frame above the currently selected."), str8_lit_comp(""), str8_lit_comp(""), (RD_CmdKindFlag_ListInUI*1)|(RD_CmdKindFlag_ListInIPCDocs*1)|(RD_CmdKindFlag_ListInTextPt*0)|(RD_CmdKindFlag_ListInTextRng*0), {(RD_QueryFlag_AllowFiles*0)|(RD_QueryFlag_AllowFolders*0)|(RD_QueryFlag_CodeInput*0)|(RD_QueryFlag_KeepOldInput*0)|(RD_QueryFlag_SelectOldInput*0)|(RD_QueryFlag_Floating*0)|(RD_QueryFlag_Required*0), RD_RegSlot_Null, str8_lit_comp(""), str8_lit_comp(""), D_EntityKind_Null}},
|
||||
@@ -831,124 +831,124 @@ RD_CmdKindInfo rd_cmd_kind_info_table[249] =
|
||||
|
||||
struct {String8 string; CFG_Binding binding;} rd_default_binding_table[118] =
|
||||
{
|
||||
{str8_lit_comp("kill_all"), {OS_Key_F5, 0 |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("step_into_inst"), {OS_Key_F11, 0 |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("step_over_inst"), {OS_Key_F10, 0 |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("step_out"), {OS_Key_F11, 0 |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("halt"), {OS_Key_X, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("halt"), {OS_Key_Pause, 0 }},
|
||||
{str8_lit_comp("run"), {OS_Key_F5, 0 }},
|
||||
{str8_lit_comp("restart"), {OS_Key_F5, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("step_into"), {OS_Key_F11, 0 }},
|
||||
{str8_lit_comp("step_over"), {OS_Key_F10, 0 }},
|
||||
{str8_lit_comp("run_to_line"), {OS_Key_F10, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("set_next_statement"), {OS_Key_F10, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("inc_window_font_size"), {OS_Key_Equal, 0 |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("dec_window_font_size"), {OS_Key_Minus, 0 |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("window"), {OS_Key_N, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("toggle_fullscreen"), {OS_Key_Return, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("new_panel_right"), {OS_Key_P, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("new_panel_down"), {OS_Key_Minus, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("rotate_panel_columns"), {OS_Key_2, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("next_panel"), {OS_Key_Comma, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("prev_panel"), {OS_Key_Comma, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("focus_panel_right"), {OS_Key_Right, 0 |OS_Modifier_Ctrl |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("focus_panel_left"), {OS_Key_Left, 0 |OS_Modifier_Ctrl |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("focus_panel_up"), {OS_Key_Up, 0 |OS_Modifier_Ctrl |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("focus_panel_down"), {OS_Key_Down, 0 |OS_Modifier_Ctrl |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("undo"), {OS_Key_Z, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("redo"), {OS_Key_Y, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("go_back"), {OS_Key_Left, 0 |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("go_forward"), {OS_Key_Right, 0 |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("close_panel"), {OS_Key_P, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("next_tab"), {OS_Key_PageDown, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("prev_tab"), {OS_Key_PageUp, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("next_tab"), {OS_Key_Tab, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("prev_tab"), {OS_Key_Tab, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("move_tab_right"), {OS_Key_PageDown, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("move_tab_left"), {OS_Key_PageUp, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("close_tab"), {OS_Key_W, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("tab_bar_top"), {OS_Key_Up, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("tab_bar_bottom"), {OS_Key_Down, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("open_tab"), {OS_Key_T, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("tab_settings"), {OS_Key_T, 0 |OS_Modifier_Ctrl |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("open"), {OS_Key_O, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("switch"), {OS_Key_I, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("switch_to_partner_file"), {OS_Key_O, 0 |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("open_user"), {OS_Key_N, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("open_project"), {OS_Key_N, 0 |OS_Modifier_Ctrl |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("open_user"), {OS_Key_O, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("open_project"), {OS_Key_O, 0 |OS_Modifier_Ctrl |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("save_user"), {OS_Key_S, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("save_project"), {OS_Key_S, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("edit"), {OS_Key_F2, 0 }},
|
||||
{str8_lit_comp("accept"), {OS_Key_Return, 0 }},
|
||||
{str8_lit_comp("accept"), {OS_Key_Space, 0 }},
|
||||
{str8_lit_comp("cancel"), {OS_Key_Esc, 0 }},
|
||||
{str8_lit_comp("focus_menu"), {OS_Key_D, 0 |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("move_left"), {OS_Key_Left, 0 }},
|
||||
{str8_lit_comp("move_right"), {OS_Key_Right, 0 }},
|
||||
{str8_lit_comp("move_up"), {OS_Key_Up, 0 }},
|
||||
{str8_lit_comp("move_down"), {OS_Key_Down, 0 }},
|
||||
{str8_lit_comp("move_left_select"), {OS_Key_Left, 0 |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("move_right_select"), {OS_Key_Right, 0 |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("move_up_select"), {OS_Key_Up, 0 |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("move_down_select"), {OS_Key_Down, 0 |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("move_left_chunk"), {OS_Key_Left, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("move_right_chunk"), {OS_Key_Right, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("move_up_chunk"), {OS_Key_Up, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("move_down_chunk"), {OS_Key_Down, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("move_up_page"), {OS_Key_PageUp, 0 }},
|
||||
{str8_lit_comp("move_down_page"), {OS_Key_PageDown, 0 }},
|
||||
{str8_lit_comp("move_up_whole"), {OS_Key_Home, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("move_down_whole"), {OS_Key_End, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("move_left_chunk_select"), {OS_Key_Left, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("move_right_chunk_select"), {OS_Key_Right, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("move_up_chunk_select"), {OS_Key_Up, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("move_down_chunk_select"), {OS_Key_Down, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("move_up_page_select"), {OS_Key_PageUp, 0 |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("move_down_page_select"), {OS_Key_PageDown, 0 |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("move_up_whole_select"), {OS_Key_Home, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("move_down_whole_select"), {OS_Key_End, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("move_up_reorder"), {OS_Key_Up, 0 |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("move_down_reorder"), {OS_Key_Down, 0 |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("move_home"), {OS_Key_Home, 0 }},
|
||||
{str8_lit_comp("move_end"), {OS_Key_End, 0 }},
|
||||
{str8_lit_comp("move_home_select"), {OS_Key_Home, 0 |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("move_end_select"), {OS_Key_End, 0 |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("select_all"), {OS_Key_A, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("delete_single"), {OS_Key_Delete, 0 }},
|
||||
{str8_lit_comp("delete_chunk"), {OS_Key_Delete, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("backspace_single"), {OS_Key_Backspace, 0 }},
|
||||
{str8_lit_comp("backspace_chunk"), {OS_Key_Backspace, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("copy"), {OS_Key_C, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("copy"), {OS_Key_Insert, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("cut"), {OS_Key_X, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("paste"), {OS_Key_V, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("paste"), {OS_Key_Insert, 0 |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("insert_text"), {OS_Key_Null, 0 }},
|
||||
{str8_lit_comp("move_next"), {OS_Key_Tab, 0 }},
|
||||
{str8_lit_comp("move_prev"), {OS_Key_Tab, 0 |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("goto_line"), {OS_Key_G, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("goto_address"), {OS_Key_G, 0 |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("search"), {OS_Key_F, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("search_backwards"), {OS_Key_R, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("find_next"), {OS_Key_F3, 0 }},
|
||||
{str8_lit_comp("find_prev"), {OS_Key_F3, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("find_selected_thread"), {OS_Key_F4, 0 }},
|
||||
{str8_lit_comp("goto_name"), {OS_Key_J, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("goto_name_at_cursor"), {OS_Key_F12, 0 }},
|
||||
{str8_lit_comp("toggle_watch_expr_at_cursor"), {OS_Key_W, 0 |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("toggle_watch_expr_at_mouse"), {OS_Key_D, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("toggle_watch_pin"), {OS_Key_F9, 0 |OS_Modifier_Ctrl }},
|
||||
{str8_lit_comp("toggle_breakpoint"), {OS_Key_F9, 0 }},
|
||||
{str8_lit_comp("add_address_breakpoint"), {OS_Key_F9, 0 |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("add_function_breakpoint"), {OS_Key_F9, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("attach"), {OS_Key_F6, 0 |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("open_palette"), {OS_Key_F1, 0 }},
|
||||
{str8_lit_comp("open_palette"), {OS_Key_P, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift }},
|
||||
{str8_lit_comp("log_marker"), {OS_Key_M, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("toggle_dev_menu"), {OS_Key_D, 0 |OS_Modifier_Ctrl |OS_Modifier_Shift |OS_Modifier_Alt}},
|
||||
{str8_lit_comp("kill_all"), {WM_Key_F5, 0 |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("step_into_inst"), {WM_Key_F11, 0 |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("step_over_inst"), {WM_Key_F10, 0 |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("step_out"), {WM_Key_F11, 0 |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("halt"), {WM_Key_X, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("halt"), {WM_Key_Pause, 0 }},
|
||||
{str8_lit_comp("run"), {WM_Key_F5, 0 }},
|
||||
{str8_lit_comp("restart"), {WM_Key_F5, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("step_into"), {WM_Key_F11, 0 }},
|
||||
{str8_lit_comp("step_over"), {WM_Key_F10, 0 }},
|
||||
{str8_lit_comp("run_to_line"), {WM_Key_F10, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("set_next_statement"), {WM_Key_F10, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("inc_window_font_size"), {WM_Key_Equal, 0 |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("dec_window_font_size"), {WM_Key_Minus, 0 |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("window"), {WM_Key_N, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("toggle_fullscreen"), {WM_Key_Return, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("new_panel_right"), {WM_Key_P, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("new_panel_down"), {WM_Key_Minus, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("rotate_panel_columns"), {WM_Key_2, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("next_panel"), {WM_Key_Comma, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("prev_panel"), {WM_Key_Comma, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("focus_panel_right"), {WM_Key_Right, 0 |WM_Modifier_Ctrl |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("focus_panel_left"), {WM_Key_Left, 0 |WM_Modifier_Ctrl |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("focus_panel_up"), {WM_Key_Up, 0 |WM_Modifier_Ctrl |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("focus_panel_down"), {WM_Key_Down, 0 |WM_Modifier_Ctrl |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("undo"), {WM_Key_Z, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("redo"), {WM_Key_Y, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("go_back"), {WM_Key_Left, 0 |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("go_forward"), {WM_Key_Right, 0 |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("close_panel"), {WM_Key_P, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("next_tab"), {WM_Key_PageDown, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("prev_tab"), {WM_Key_PageUp, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("next_tab"), {WM_Key_Tab, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("prev_tab"), {WM_Key_Tab, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("move_tab_right"), {WM_Key_PageDown, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("move_tab_left"), {WM_Key_PageUp, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("close_tab"), {WM_Key_W, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("tab_bar_top"), {WM_Key_Up, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("tab_bar_bottom"), {WM_Key_Down, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("open_tab"), {WM_Key_T, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("tab_settings"), {WM_Key_T, 0 |WM_Modifier_Ctrl |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("open"), {WM_Key_O, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("switch"), {WM_Key_I, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("switch_to_partner_file"), {WM_Key_O, 0 |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("open_user"), {WM_Key_N, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("open_project"), {WM_Key_N, 0 |WM_Modifier_Ctrl |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("open_user"), {WM_Key_O, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("open_project"), {WM_Key_O, 0 |WM_Modifier_Ctrl |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("save_user"), {WM_Key_S, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("save_project"), {WM_Key_S, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("edit"), {WM_Key_F2, 0 }},
|
||||
{str8_lit_comp("accept"), {WM_Key_Return, 0 }},
|
||||
{str8_lit_comp("accept"), {WM_Key_Space, 0 }},
|
||||
{str8_lit_comp("cancel"), {WM_Key_Esc, 0 }},
|
||||
{str8_lit_comp("focus_menu"), {WM_Key_D, 0 |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("move_left"), {WM_Key_Left, 0 }},
|
||||
{str8_lit_comp("move_right"), {WM_Key_Right, 0 }},
|
||||
{str8_lit_comp("move_up"), {WM_Key_Up, 0 }},
|
||||
{str8_lit_comp("move_down"), {WM_Key_Down, 0 }},
|
||||
{str8_lit_comp("move_left_select"), {WM_Key_Left, 0 |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("move_right_select"), {WM_Key_Right, 0 |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("move_up_select"), {WM_Key_Up, 0 |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("move_down_select"), {WM_Key_Down, 0 |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("move_left_chunk"), {WM_Key_Left, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("move_right_chunk"), {WM_Key_Right, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("move_up_chunk"), {WM_Key_Up, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("move_down_chunk"), {WM_Key_Down, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("move_up_page"), {WM_Key_PageUp, 0 }},
|
||||
{str8_lit_comp("move_down_page"), {WM_Key_PageDown, 0 }},
|
||||
{str8_lit_comp("move_up_whole"), {WM_Key_Home, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("move_down_whole"), {WM_Key_End, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("move_left_chunk_select"), {WM_Key_Left, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("move_right_chunk_select"), {WM_Key_Right, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("move_up_chunk_select"), {WM_Key_Up, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("move_down_chunk_select"), {WM_Key_Down, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("move_up_page_select"), {WM_Key_PageUp, 0 |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("move_down_page_select"), {WM_Key_PageDown, 0 |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("move_up_whole_select"), {WM_Key_Home, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("move_down_whole_select"), {WM_Key_End, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("move_up_reorder"), {WM_Key_Up, 0 |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("move_down_reorder"), {WM_Key_Down, 0 |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("move_home"), {WM_Key_Home, 0 }},
|
||||
{str8_lit_comp("move_end"), {WM_Key_End, 0 }},
|
||||
{str8_lit_comp("move_home_select"), {WM_Key_Home, 0 |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("move_end_select"), {WM_Key_End, 0 |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("select_all"), {WM_Key_A, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("delete_single"), {WM_Key_Delete, 0 }},
|
||||
{str8_lit_comp("delete_chunk"), {WM_Key_Delete, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("backspace_single"), {WM_Key_Backspace, 0 }},
|
||||
{str8_lit_comp("backspace_chunk"), {WM_Key_Backspace, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("copy"), {WM_Key_C, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("copy"), {WM_Key_Insert, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("cut"), {WM_Key_X, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("paste"), {WM_Key_V, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("paste"), {WM_Key_Insert, 0 |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("insert_text"), {WM_Key_Null, 0 }},
|
||||
{str8_lit_comp("move_next"), {WM_Key_Tab, 0 }},
|
||||
{str8_lit_comp("move_prev"), {WM_Key_Tab, 0 |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("goto_line"), {WM_Key_G, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("goto_address"), {WM_Key_G, 0 |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("search"), {WM_Key_F, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("search_backwards"), {WM_Key_R, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("find_next"), {WM_Key_F3, 0 }},
|
||||
{str8_lit_comp("find_prev"), {WM_Key_F3, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("find_selected_thread"), {WM_Key_F4, 0 }},
|
||||
{str8_lit_comp("goto_name"), {WM_Key_J, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("goto_name_at_cursor"), {WM_Key_F12, 0 }},
|
||||
{str8_lit_comp("toggle_watch_expr_at_cursor"), {WM_Key_W, 0 |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("toggle_watch_expr_at_mouse"), {WM_Key_D, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("toggle_watch_pin"), {WM_Key_F9, 0 |WM_Modifier_Ctrl }},
|
||||
{str8_lit_comp("toggle_breakpoint"), {WM_Key_F9, 0 }},
|
||||
{str8_lit_comp("add_address_breakpoint"), {WM_Key_F9, 0 |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("add_function_breakpoint"), {WM_Key_F9, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("attach"), {WM_Key_F6, 0 |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("open_palette"), {WM_Key_F1, 0 }},
|
||||
{str8_lit_comp("open_palette"), {WM_Key_P, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift }},
|
||||
{str8_lit_comp("log_marker"), {WM_Key_M, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift |WM_Modifier_Alt}},
|
||||
{str8_lit_comp("toggle_dev_menu"), {WM_Key_D, 0 |WM_Modifier_Ctrl |WM_Modifier_Shift |WM_Modifier_Alt}},
|
||||
};
|
||||
|
||||
String8 rd_binding_version_remap_old_name_table[8] =
|
||||
|
||||
@@ -56,7 +56,7 @@ RD_RegSlot_ActivateWithSingleClick,
|
||||
RD_RegSlot_Dir2,
|
||||
RD_RegSlot_String,
|
||||
RD_RegSlot_CmdName,
|
||||
RD_RegSlot_OSEvent,
|
||||
RD_RegSlot_WMEvent,
|
||||
RD_RegSlot_COUNT,
|
||||
} RD_RegSlot;
|
||||
|
||||
@@ -99,7 +99,7 @@ RD_CmdKind_Exit,
|
||||
RD_CmdKind_OpenPalette,
|
||||
RD_CmdKind_RunCommand,
|
||||
RD_CmdKind_RunExternalDriverTextCommand,
|
||||
RD_CmdKind_OSEvent,
|
||||
RD_CmdKind_WMEvent,
|
||||
RD_CmdKind_SelectThread,
|
||||
RD_CmdKind_SelectUnwind,
|
||||
RD_CmdKind_UpOneFrame,
|
||||
@@ -498,7 +498,7 @@ B32 activate_with_single_click;
|
||||
Dir2 dir2;
|
||||
String8 string;
|
||||
String8 cmd_name;
|
||||
OS_Event * os_event;
|
||||
WM_Event * wm_event;
|
||||
};
|
||||
|
||||
typedef struct RD_Query RD_Query;
|
||||
@@ -598,7 +598,7 @@ Z(getting_started)\
|
||||
.dir2 = rd_regs()->dir2,\
|
||||
.string = rd_regs()->string,\
|
||||
.cmd_name = rd_regs()->cmd_name,\
|
||||
.os_event = rd_regs()->os_event,\
|
||||
.wm_event = rd_regs()->wm_event,\
|
||||
|
||||
C_LINKAGE_BEGIN
|
||||
extern String8 rd_tab_fast_path_view_name_table[25];
|
||||
|
||||
+50
-50
@@ -831,68 +831,68 @@ RD_VocabTable:
|
||||
RD_RegTable:
|
||||
{
|
||||
// rjf: ctrl entities
|
||||
{D_Handle machine Machine }
|
||||
{D_Handle module Module }
|
||||
{D_Handle process Process }
|
||||
{D_Handle thread Thread }
|
||||
{D_Handle ctrl_entity CtrlEntity }
|
||||
{D_Handle machine Machine }
|
||||
{D_Handle module Module }
|
||||
{D_Handle process Process }
|
||||
{D_Handle thread Thread }
|
||||
{D_Handle ctrl_entity CtrlEntity }
|
||||
|
||||
// rjf: cfgs
|
||||
{CFG_ID window Window }
|
||||
{CFG_ID panel Panel }
|
||||
{CFG_ID tab Tab }
|
||||
{CFG_ID view View }
|
||||
{CFG_ID prev_tab PrevTab }
|
||||
{CFG_ID dst_panel DstPanel }
|
||||
{CFG_ID cfg Cfg }
|
||||
{CFG_IDList cfg_list CfgList }
|
||||
{CFG_ID window Window }
|
||||
{CFG_ID panel Panel }
|
||||
{CFG_ID tab Tab }
|
||||
{CFG_ID view View }
|
||||
{CFG_ID prev_tab PrevTab }
|
||||
{CFG_ID dst_panel DstPanel }
|
||||
{CFG_ID cfg Cfg }
|
||||
{CFG_IDList cfg_list CfgList }
|
||||
|
||||
// rjf: evaluation space
|
||||
{E_Space eval_space EvalSpace }
|
||||
{E_Space eval_space EvalSpace }
|
||||
|
||||
// rjf: frame selection
|
||||
{U64 unwind_count UnwindCount }
|
||||
{U64 inline_depth InlineDepth }
|
||||
{U64 unwind_count UnwindCount }
|
||||
{U64 inline_depth InlineDepth }
|
||||
|
||||
// rjf: code / address location info
|
||||
{String8 file_path FilePath }
|
||||
{TxtPt cursor Cursor }
|
||||
{TxtPt mark Mark }
|
||||
{C_Key text_key TextKey }
|
||||
{TXT_LangKind lang_kind LangKind }
|
||||
{D_LineList lines Lines }
|
||||
{DI_Key dbgi_key DbgiKey }
|
||||
{U64 vaddr Vaddr }
|
||||
{U64 voff Voff }
|
||||
{Rng1U64 vaddr_range VaddrRange }
|
||||
{Rng1U64 voff_range VoffRange }
|
||||
{String8 file_path FilePath }
|
||||
{TxtPt cursor Cursor }
|
||||
{TxtPt mark Mark }
|
||||
{C_Key text_key TextKey }
|
||||
{TXT_LangKind lang_kind LangKind }
|
||||
{D_LineList lines Lines }
|
||||
{DI_Key dbgi_key DbgiKey }
|
||||
{U64 vaddr Vaddr }
|
||||
{U64 voff Voff }
|
||||
{Rng1U64 vaddr_range VaddrRange }
|
||||
{Rng1U64 voff_range VoffRange }
|
||||
|
||||
// rjf: evaluation
|
||||
{String8 expr Expr }
|
||||
{String8 expr Expr }
|
||||
|
||||
// rjf: ui context
|
||||
{UI_Key ui_key UIKey }
|
||||
{UI_Key src_ui_key SrcUIKey }
|
||||
{Vec2F32 off_px OffPx }
|
||||
{RD_RegSlot reg_slot RegSlot }
|
||||
{UI_Key ui_key UIKey }
|
||||
{UI_Key src_ui_key SrcUIKey }
|
||||
{Vec2F32 off_px OffPx }
|
||||
{RD_RegSlot reg_slot RegSlot }
|
||||
|
||||
// rjf: general parameters
|
||||
{U32 pid PID }
|
||||
{B32 force_confirm ForceConfirm }
|
||||
{B32 force_focus ForceFocus }
|
||||
{B32 prefer_disasm PreferDisasm }
|
||||
{B32 no_rich_tooltip NoRichTooltip }
|
||||
{B32 do_implicit_root DoImplicitRoot}
|
||||
{B32 do_lister DoLister }
|
||||
{B32 do_big_rows DoBigRows }
|
||||
{B32 all_windows AllWindows }
|
||||
{B32 non_graphical NonGraphical }
|
||||
{B32 prefer_new_tab PreferNewTab }
|
||||
{B32 activate_with_single_click ActivateWithSingleClick }
|
||||
{Dir2 dir2 Dir2 }
|
||||
{String8 string String }
|
||||
{String8 cmd_name CmdName }
|
||||
{`OS_Event *` os_event OSEvent }
|
||||
{U32 pid PID }
|
||||
{B32 force_confirm ForceConfirm }
|
||||
{B32 force_focus ForceFocus }
|
||||
{B32 prefer_disasm PreferDisasm }
|
||||
{B32 no_rich_tooltip NoRichTooltip }
|
||||
{B32 do_implicit_root DoImplicitRoot }
|
||||
{B32 do_lister DoLister }
|
||||
{B32 do_big_rows DoBigRows }
|
||||
{B32 all_windows AllWindows }
|
||||
{B32 non_graphical NonGraphical }
|
||||
{B32 prefer_new_tab PreferNewTab }
|
||||
{B32 activate_with_single_click ActivateWithSingleClick }
|
||||
{Dir2 dir2 Dir2 }
|
||||
{String8 string String }
|
||||
{String8 cmd_name CmdName }
|
||||
{`WM_Event *` wm_event WMEvent }
|
||||
}
|
||||
|
||||
@enum RD_RegSlot:
|
||||
@@ -945,7 +945,7 @@ RD_CmdTable: // | | | |
|
||||
{RunExternalDriverTextCommand 0 0 0 0 "" Null null Nil Null 0 0 0 0 0 1 1 Null "run_ext_driver_text_command" "Run External Driver Text Command" "" "" "" }
|
||||
|
||||
//- rjf: os event passthrough
|
||||
{OSEvent 0 0 0 0 "" Null null Nil Null 0 0 0 0 0 0 0 Null "os_event" "OS Event" "" "" "" }
|
||||
{WMEvent 0 0 0 0 "" Null null Nil Null 0 0 0 0 0 0 0 Null "wm_event" "OS Event" "" "" "" }
|
||||
|
||||
//- rjf: thread/frame selection
|
||||
{SelectThread 1 1 0 0 "query:threads" Thread null Nil Thread 0 0 0 0 0 1 1 Thread "select_thread" "Select Thread" "Selects a thread." "" "" }
|
||||
@@ -1437,7 +1437,7 @@ RD_DefaultBindingTable:
|
||||
|
||||
@data(`struct {String8 string; CFG_Binding binding;}`) @c_file rd_default_binding_table:
|
||||
{
|
||||
@expand(RD_DefaultBindingTable a) ```{str8_lit_comp("$(a.name)"), {OS_Key_$(a.key), 0 $(a.ctrl != 0 -> `|OS_Modifier_Ctrl`) $(a.shift != 0 -> `|OS_Modifier_Shift`) $(a.alt != 0 -> `|OS_Modifier_Alt`)}}```;
|
||||
@expand(RD_DefaultBindingTable a) ```{str8_lit_comp("$(a.name)"), {WM_Key_$(a.key), 0 $(a.ctrl != 0 -> `|WM_Modifier_Ctrl`) $(a.shift != 0 -> `|WM_Modifier_Shift`) $(a.alt != 0 -> `|WM_Modifier_Alt`)}}```;
|
||||
}
|
||||
|
||||
////////////////////////////////
|
||||
|
||||
+146
-146
@@ -2625,7 +2625,7 @@ rd_view_ui(Rng2F32 rect)
|
||||
// rjf: copy
|
||||
if(op.flags & UI_TxtOpFlag_Copy && selection_tbl.min.x == selection_tbl.max.x && selection_tbl.min.y == selection_tbl.max.y)
|
||||
{
|
||||
os_set_clipboard_text(op.copy);
|
||||
wm_set_clipboard_text(op.copy);
|
||||
}
|
||||
|
||||
// rjf: any valid *additive* op & autocomplete hint? -> perform autocomplete first, then re-compute op
|
||||
@@ -2776,7 +2776,7 @@ rd_view_ui(Rng2F32 rect)
|
||||
}
|
||||
}
|
||||
String8 string = str8_list_join(scratch.arena, &strs, 0);
|
||||
os_set_clipboard_text(string);
|
||||
wm_set_clipboard_text(string);
|
||||
}
|
||||
|
||||
//////////////////////////
|
||||
@@ -3221,7 +3221,7 @@ rd_view_ui(Rng2F32 rect)
|
||||
boundary_start_idx*row_height_px,
|
||||
next_cell_x_px + ui_top_font_size()*0.4f,
|
||||
idx*row_height_px);
|
||||
UI_Rect(rect) UI_HoverCursor(OS_Cursor_LeftRight)
|
||||
UI_Rect(rect) UI_HoverCursor(WM_Cursor_LeftRight)
|
||||
{
|
||||
UI_Box *box = ui_build_box_from_stringf(UI_BoxFlag_Clickable|UI_BoxFlag_Floating, "boundary_%I64x_%I64x", row_hash, cell_id);
|
||||
UI_Signal sig = ui_signal_from_box(box);
|
||||
@@ -4381,7 +4381,7 @@ rd_view_ui(Rng2F32 rect)
|
||||
U64 value = e_value_from_string(loc.expr).u64;
|
||||
rd_cmd(RD_CmdKind_FindCodeLocation, .vaddr = value);
|
||||
}
|
||||
else if(str8_match(cfg->string, str8_lit("target"), 0) && sig.event_flags & OS_Modifier_Ctrl)
|
||||
else if(str8_match(cfg->string, str8_lit("target"), 0) && sig.event_flags & WM_Modifier_Ctrl)
|
||||
{
|
||||
rd_cmd(RD_CmdKind_EnableCfg, .cfg = cfg->id);
|
||||
}
|
||||
@@ -4937,7 +4937,7 @@ rd_window_state_from_cfg(CFG_Node *cfg)
|
||||
B32 has_pos = 0;
|
||||
Vec2F32 pos = {0};
|
||||
Vec2F32 size = {0};
|
||||
OS_Monitor preferred_monitor = {0};
|
||||
WM_Monitor preferred_monitor = {0};
|
||||
{
|
||||
CFG_Node *pos_cfg = cfg_node_child_from_string(window_cfg, str8_lit("pos"));
|
||||
has_pos = (pos_cfg != &cfg_nil_node);
|
||||
@@ -4947,10 +4947,10 @@ rd_window_state_from_cfg(CFG_Node *cfg)
|
||||
pos.y = (F32)f64_from_str8(pos_cfg->first->next->string);
|
||||
size.x = (F32)f64_from_str8(size_cfg->first->string);
|
||||
size.y = (F32)f64_from_str8(size_cfg->first->next->string);
|
||||
OS_MonitorArray monitors = os_push_monitors_array(scratch.arena);
|
||||
WM_MonitorArray monitors = wm_push_monitors_array(scratch.arena);
|
||||
for EachIndex(idx, monitors.count)
|
||||
{
|
||||
String8 monitor_name = os_name_from_monitor(scratch.arena, monitors.v[idx]);
|
||||
String8 monitor_name = wm_name_from_monitor(scratch.arena, monitors.v[idx]);
|
||||
if(str8_match(monitor_name, monitor_cfg->first->string, StringMatchFlag_CaseInsensitive))
|
||||
{
|
||||
preferred_monitor = monitors.v[idx];
|
||||
@@ -4976,7 +4976,7 @@ rd_window_state_from_cfg(CFG_Node *cfg)
|
||||
ws->arena = arena_alloc();
|
||||
{
|
||||
String8 title = rd_push_window_title(scratch.arena);
|
||||
ws->os = os_window_open(r2f32p(pos.x, pos.y, pos.x+size.x, pos.y+size.y), (!has_pos*OS_WindowFlag_UseDefaultPosition)|OS_WindowFlag_CustomBorder, title);
|
||||
ws->os = wm_window_open(r2f32p(pos.x, pos.y, pos.x+size.x, pos.y+size.y), (!has_pos*WM_WindowFlag_UseDefaultPosition)|WM_WindowFlag_CustomBorder, title);
|
||||
}
|
||||
ws->r = r_window_equip(ws->os);
|
||||
ws->ui = ui_state_alloc();
|
||||
@@ -4984,19 +4984,19 @@ rd_window_state_from_cfg(CFG_Node *cfg)
|
||||
ws->query_arena = arena_alloc();
|
||||
ws->hover_eval_arena = arena_alloc();
|
||||
ws->autocomp_arena = arena_alloc();
|
||||
ws->last_dpi = os_dpi_from_window(ws->os);
|
||||
OS_Monitor zero_monitor = {0};
|
||||
if(!os_monitor_match(zero_monitor, preferred_monitor))
|
||||
ws->last_dpi = wm_dpi_from_window(ws->os);
|
||||
WM_Monitor zero_monitor = {0};
|
||||
if(!wm_monitor_match(zero_monitor, preferred_monitor))
|
||||
{
|
||||
os_window_set_monitor(ws->os, preferred_monitor);
|
||||
wm_window_set_monitor(ws->os, preferred_monitor);
|
||||
}
|
||||
if(cfg_node_child_from_string(window_cfg, str8_lit("fullscreen")) != &cfg_nil_node)
|
||||
{
|
||||
os_window_set_fullscreen(ws->os, 1);
|
||||
wm_window_set_fullscreen(ws->os, 1);
|
||||
}
|
||||
if(cfg_node_child_from_string(window_cfg, str8_lit("maximized")) != &cfg_nil_node)
|
||||
{
|
||||
os_window_set_maximized(ws->os, 1);
|
||||
wm_window_set_maximized(ws->os, 1);
|
||||
}
|
||||
|
||||
// rjf: hook up window links
|
||||
@@ -5021,7 +5021,7 @@ rd_window_state_from_cfg(CFG_Node *cfg)
|
||||
}
|
||||
|
||||
internal RD_WindowState *
|
||||
rd_window_state_from_os_handle(OS_Window os)
|
||||
rd_window_state_from_os_handle(WM_Window os)
|
||||
{
|
||||
RD_WindowState *ws = &rd_nil_window_state;
|
||||
{
|
||||
@@ -5029,7 +5029,7 @@ rd_window_state_from_os_handle(OS_Window os)
|
||||
w != &rd_nil_window_state;
|
||||
w = w->order_next)
|
||||
{
|
||||
if(os_window_match(w->os, os))
|
||||
if(wm_window_match(w->os, os))
|
||||
{
|
||||
ws = w;
|
||||
break;
|
||||
@@ -5055,7 +5055,7 @@ rd_window_frame(void)
|
||||
CFG_Node *window = cfg_node_from_id(rd_regs()->window);
|
||||
RD_WindowState *ws = rd_window_state_from_cfg(cfg_node_from_id(rd_regs()->window));
|
||||
CFG_PanelTree panel_tree = cfg_panel_tree_from_cfg(scratch.arena, window);
|
||||
B32 window_is_focused = (os_window_is_focused(ws->os) || ws->window_temporarily_focused_ipc);
|
||||
B32 window_is_focused = (wm_window_is_focused(ws->os) || ws->window_temporarily_focused_ipc);
|
||||
B32 popup_is_open = (rd_state->popup_active);
|
||||
B32 query_is_open = (ws->query_is_active);
|
||||
U64 hover_eval_open_delay_us = 400000;
|
||||
@@ -5258,9 +5258,9 @@ rd_window_frame(void)
|
||||
//
|
||||
{
|
||||
Temp scratch = scratch_begin(0, 0);
|
||||
B32 is_fullscreen = os_window_is_fullscreen(ws->os);
|
||||
B32 is_maximized = os_window_is_maximized(ws->os);
|
||||
B32 is_minimized = os_window_is_minimized(ws->os);
|
||||
B32 is_fullscreen = wm_window_is_fullscreen(ws->os);
|
||||
B32 is_maximized = wm_window_is_maximized(ws->os);
|
||||
B32 is_minimized = wm_window_is_minimized(ws->os);
|
||||
if(is_fullscreen)
|
||||
{
|
||||
cfg_node_child_from_string_or_alloc(rd_state->cfg, window, str8_lit("fullscreen"));
|
||||
@@ -5279,7 +5279,7 @@ rd_window_frame(void)
|
||||
}
|
||||
|
||||
//- rjf: DPI changes -> xform font size / window size
|
||||
F32 dpi = os_dpi_from_window(ws->os);
|
||||
F32 dpi = wm_dpi_from_window(ws->os);
|
||||
if(dpi != ws->last_dpi)
|
||||
{
|
||||
fnt_reset();
|
||||
@@ -5292,7 +5292,7 @@ rd_window_frame(void)
|
||||
}
|
||||
|
||||
//- rjf: commit position
|
||||
Rng2F32 window_rect = os_rect_from_window(ws->os);
|
||||
Rng2F32 window_rect = wm_rect_from_window(ws->os);
|
||||
if(!is_fullscreen && !is_maximized && !is_minimized)
|
||||
{
|
||||
Vec2F32 pos = window_rect.p0;
|
||||
@@ -5345,8 +5345,8 @@ rd_window_frame(void)
|
||||
//- rjf: commit monitor
|
||||
if(!is_minimized)
|
||||
{
|
||||
OS_Monitor monitor = os_monitor_from_window(ws->os);
|
||||
String8 monitor_name = os_name_from_monitor(scratch.arena, monitor);
|
||||
WM_Monitor monitor = wm_monitor_from_window(ws->os);
|
||||
String8 monitor_name = wm_name_from_monitor(scratch.arena, monitor);
|
||||
CFG_Node *monitor_root = cfg_node_child_from_string_or_alloc(rd_state->cfg, window, str8_lit("monitor"));
|
||||
if(!str8_match(monitor_root->first->string, monitor_name, 0))
|
||||
{
|
||||
@@ -5422,13 +5422,13 @@ rd_window_frame(void)
|
||||
////////////////////////////
|
||||
//- rjf: @window_ui_part calculate top-level rectangles/sizes
|
||||
//
|
||||
Rng2F32 window_rect = os_client_rect_from_window(ws->os);
|
||||
Rng2F32 window_rect = wm_client_rect_from_window(ws->os);
|
||||
Vec2F32 window_rect_dim = dim_2f32(window_rect);
|
||||
F32 top_bar_dim_px = floor_f32(ui_top_font_size()*3.f);
|
||||
Rng2F32 top_bar_rect = r2f32p(window_rect.x0, window_rect.y0, window_rect.x0+window_rect_dim.x+1, window_rect.y0+top_bar_dim_px);
|
||||
Rng2F32 bottom_bar_rect = r2f32p(window_rect.x0, window_rect_dim.y - top_bar_dim_px, window_rect.x0+window_rect_dim.x, window_rect.y0+window_rect_dim.y);
|
||||
Rng2F32 content_rect = r2f32p(window_rect.x0, top_bar_rect.y1, window_rect.x0+window_rect_dim.x, bottom_bar_rect.y0);
|
||||
F32 window_edge_px = os_dpi_from_window(ws->os)*0.035f;
|
||||
F32 window_edge_px = wm_dpi_from_window(ws->os)*0.035f;
|
||||
content_rect = pad_2f32(content_rect, -window_edge_px);
|
||||
|
||||
////////////////////////////
|
||||
@@ -6436,7 +6436,7 @@ rd_window_frame(void)
|
||||
if(t->force_inside_window_x || t->force_inside_window_y)
|
||||
{
|
||||
B32 axis_mask[] = {t->force_inside_window_x, t->force_inside_window_y};
|
||||
Rng2F32 window_rect = os_client_rect_from_window(ws->os);
|
||||
Rng2F32 window_rect = wm_client_rect_from_window(ws->os);
|
||||
for EachEnumVal(Axis2, axis)
|
||||
{
|
||||
if(!axis_mask[axis]) { continue; }
|
||||
@@ -6497,7 +6497,7 @@ rd_window_frame(void)
|
||||
for(UI_Event *evt = 0; ui_next_event(&evt);)
|
||||
{
|
||||
if(evt->kind == UI_EventKind_Press &&
|
||||
evt->key == OS_Key_LeftMouseButton)
|
||||
evt->key == WM_Key_LeftMouseButton)
|
||||
{
|
||||
if(contains_2f32(container->rect, evt->pos))
|
||||
{
|
||||
@@ -6645,9 +6645,9 @@ rd_window_frame(void)
|
||||
//
|
||||
ProfScope("build top bar")
|
||||
{
|
||||
os_window_clear_custom_border_data(ws->os);
|
||||
os_window_push_custom_edges(ws->os, window_edge_px);
|
||||
os_window_push_custom_title_bar(ws->os, dim_2f32(top_bar_rect).y);
|
||||
wm_window_clear_custom_border_data(ws->os);
|
||||
wm_window_push_custom_edges(ws->os, window_edge_px);
|
||||
wm_window_push_custom_title_bar(ws->os, dim_2f32(top_bar_rect).y);
|
||||
ui_set_next_flags(UI_BoxFlag_DefaultFocusNav|UI_BoxFlag_DisableFocusOverlay);
|
||||
UI_Focus((ws->menu_bar_focused && window_is_focused && !ui_any_ctx_menu_is_open()) ? UI_FocusKind_On : UI_FocusKind_Null)
|
||||
UI_TagF("menu_bar")
|
||||
@@ -6911,7 +6911,7 @@ rd_window_frame(void)
|
||||
if(key_map_nodes.first != 0)
|
||||
{
|
||||
binding = key_map_nodes.first->v->binding;
|
||||
binding_str = os_string_from_modifiers_key(scratch.arena, binding.modifiers, binding.key);
|
||||
binding_str = wm_string_from_modifiers_key(scratch.arena, binding.modifiers, binding.key);
|
||||
}
|
||||
UI_TagF(".")
|
||||
UI_Row
|
||||
@@ -6945,7 +6945,7 @@ rd_window_frame(void)
|
||||
UI_Signal sig = ui_button(str8_lit("Submit request, issue, or bug report"));
|
||||
if(ui_clicked(sig))
|
||||
{
|
||||
os_open_in_browser(url);
|
||||
wm_open_in_browser(url);
|
||||
}
|
||||
}
|
||||
ui_spacer(ui_em(0.5f, 1.f));
|
||||
@@ -6959,18 +6959,18 @@ rd_window_frame(void)
|
||||
{
|
||||
String8 name;
|
||||
U32 codepoint;
|
||||
OS_Key key;
|
||||
WM_Key key;
|
||||
UI_Key menu_key;
|
||||
}
|
||||
items[] =
|
||||
{
|
||||
{str8_lit("File"), 'f', OS_Key_F, file_menu_key},
|
||||
{str8_lit("Window"), 'w', OS_Key_W, window_menu_key},
|
||||
{str8_lit("Panel"), 'p', OS_Key_P, panel_menu_key},
|
||||
{str8_lit("Tab"), 'b', OS_Key_V, tab_menu_key},
|
||||
{str8_lit("Targets"), 't', OS_Key_T, targets_menu_key},
|
||||
{str8_lit("Control"), 'c', OS_Key_C, ctrl_menu_key},
|
||||
{str8_lit("Help"), 'h', OS_Key_H, help_menu_key},
|
||||
{str8_lit("File"), 'f', WM_Key_F, file_menu_key},
|
||||
{str8_lit("Window"), 'w', WM_Key_W, window_menu_key},
|
||||
{str8_lit("Panel"), 'p', WM_Key_P, panel_menu_key},
|
||||
{str8_lit("Tab"), 'b', WM_Key_V, tab_menu_key},
|
||||
{str8_lit("Targets"), 't', WM_Key_T, targets_menu_key},
|
||||
{str8_lit("Control"), 'c', WM_Key_C, ctrl_menu_key},
|
||||
{str8_lit("Help"), 'h', WM_Key_H, help_menu_key},
|
||||
};
|
||||
|
||||
// rjf: determine if one of the menus is already open
|
||||
@@ -7016,7 +7016,7 @@ rd_window_frame(void)
|
||||
{
|
||||
ui_set_next_fastpath_codepoint(items[idx].codepoint);
|
||||
B32 alt_fastpath_key = 0;
|
||||
if(rd_setting_b32_from_name(str8_lit("focus_menu_bar_with_alt")) && ui_key_press(OS_Modifier_Alt, items[idx].key))
|
||||
if(rd_setting_b32_from_name(str8_lit("focus_menu_bar_with_alt")) && ui_key_press(WM_Modifier_Alt, items[idx].key))
|
||||
{
|
||||
alt_fastpath_key = 1;
|
||||
}
|
||||
@@ -7025,7 +7025,7 @@ rd_window_frame(void)
|
||||
ui_set_next_flags(UI_BoxFlag_DrawTextFastpathCodepoint);
|
||||
}
|
||||
UI_Signal sig = rd_menu_bar_button(items[idx].name);
|
||||
os_window_push_custom_title_bar_client_area(ws->os, sig.box->rect);
|
||||
wm_window_push_custom_title_bar_client_area(ws->os, sig.box->rect);
|
||||
if(menu_open)
|
||||
{
|
||||
if((ui_hovering(sig) && !ui_ctx_menu_is_open(items[idx].menu_key)) || (open_menu_idx_prime == idx && open_menu_idx_prime != open_menu_idx))
|
||||
@@ -7086,7 +7086,7 @@ rd_window_frame(void)
|
||||
{
|
||||
String8 cmd_name = center_button_tasks[idx].cmd_name;
|
||||
UI_Signal sig = ui_button(rd_icon_kind_text_table[rd_icon_kind_from_code_name(cmd_name)]);
|
||||
os_window_push_custom_title_bar_client_area(ws->os, sig.box->rect);
|
||||
wm_window_push_custom_title_bar_client_area(ws->os, sig.box->rect);
|
||||
if(ui_hovering(sig))
|
||||
{
|
||||
RD_RegsScope(.cmd_name = cmd_name, .ui_key = sig.box->key) rd_set_hover_regs(RD_RegSlot_CmdName);
|
||||
@@ -7119,7 +7119,7 @@ rd_window_frame(void)
|
||||
UI_BoxFlag_DrawHotEffects|
|
||||
UI_BoxFlag_DrawActiveEffects,
|
||||
"###loaded_user_button");
|
||||
os_window_push_custom_title_bar_client_area(ws->os, user_box->rect);
|
||||
wm_window_push_custom_title_bar_client_area(ws->os, user_box->rect);
|
||||
UI_Parent(user_box) UI_PrefWidth(ui_text_dim(10, 0)) UI_TextAlignment(UI_TextAlign_Center)
|
||||
{
|
||||
String8 user_path = rd_state->user_path;
|
||||
@@ -7153,7 +7153,7 @@ rd_window_frame(void)
|
||||
UI_BoxFlag_DrawHotEffects|
|
||||
UI_BoxFlag_DrawActiveEffects,
|
||||
"###loaded_project_button");
|
||||
os_window_push_custom_title_bar_client_area(ws->os, prof_box->rect);
|
||||
wm_window_push_custom_title_bar_client_area(ws->os, prof_box->rect);
|
||||
UI_Parent(prof_box) UI_PrefWidth(ui_text_dim(10, 0)) UI_TextAlignment(UI_TextAlign_Center) UI_Padding(ui_em(0.5f, 1.f))
|
||||
{
|
||||
CFG_Node *root = cfg_node_root();
|
||||
@@ -7207,7 +7207,7 @@ rd_window_frame(void)
|
||||
UI_FontSize(ui_top_font_size()*0.75f)
|
||||
{
|
||||
min_sig = rd_icon_buttonf(RD_IconKind_WindowMinimize, 0, "##minimize");
|
||||
max_sig = rd_icon_buttonf(os_window_is_maximized(ws->os) ? RD_IconKind_WindowRestore : RD_IconKind_Window, 0, "##maximize");
|
||||
max_sig = rd_icon_buttonf(wm_window_is_maximized(ws->os) ? RD_IconKind_WindowRestore : RD_IconKind_Window, 0, "##maximize");
|
||||
}
|
||||
UI_PrefWidth(ui_px(button_dim, 1.f))
|
||||
UI_TagF("bad_pop")
|
||||
@@ -7216,11 +7216,11 @@ rd_window_frame(void)
|
||||
}
|
||||
if(ui_clicked(min_sig))
|
||||
{
|
||||
os_window_set_minimized(ws->os, 1);
|
||||
wm_window_set_minimized(ws->os, 1);
|
||||
}
|
||||
if(ui_clicked(max_sig))
|
||||
{
|
||||
os_window_set_maximized(ws->os, !os_window_is_maximized(ws->os));
|
||||
wm_window_set_maximized(ws->os, !wm_window_is_maximized(ws->os));
|
||||
}
|
||||
if(ui_clicked(cls_sig))
|
||||
{
|
||||
@@ -7234,9 +7234,9 @@ rd_window_frame(void)
|
||||
rd_cmd(RD_CmdKind_Exit);
|
||||
}
|
||||
}
|
||||
os_window_push_custom_title_bar_client_area(ws->os, min_sig.box->rect);
|
||||
os_window_push_custom_title_bar_client_area(ws->os, max_sig.box->rect);
|
||||
os_window_push_custom_title_bar_client_area(ws->os, pad_2f32(cls_sig.box->rect, 2.f));
|
||||
wm_window_push_custom_title_bar_client_area(ws->os, min_sig.box->rect);
|
||||
wm_window_push_custom_title_bar_client_area(ws->os, max_sig.box->rect);
|
||||
wm_window_push_custom_title_bar_client_area(ws->os, pad_2f32(cls_sig.box->rect, 2.f));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -7629,7 +7629,7 @@ rd_window_frame(void)
|
||||
|
||||
UI_Rect(boundary_rect)
|
||||
{
|
||||
ui_set_next_hover_cursor(split_axis == Axis2_X ? OS_Cursor_LeftRight : OS_Cursor_UpDown);
|
||||
ui_set_next_hover_cursor(split_axis == Axis2_X ? WM_Cursor_LeftRight : WM_Cursor_UpDown);
|
||||
UI_Box *box = ui_build_box_from_stringf(UI_BoxFlag_Clickable, "###%p_%p", min_child->cfg, max_child->cfg);
|
||||
UI_Signal sig = ui_signal_from_box(box);
|
||||
if(ui_double_clicked(sig))
|
||||
@@ -8569,7 +8569,7 @@ rd_window_frame(void)
|
||||
//
|
||||
for(UI_Event *evt = 0; ui_next_event(&evt);)
|
||||
{
|
||||
if(evt->kind == UI_EventKind_Scroll && evt->modifiers == OS_Modifier_Ctrl)
|
||||
if(evt->kind == UI_EventKind_Scroll && evt->modifiers == WM_Modifier_Ctrl)
|
||||
{
|
||||
ui_eat_event(evt);
|
||||
if(evt->delta_2f32.y < 0)
|
||||
@@ -8614,7 +8614,7 @@ rd_window_frame(void)
|
||||
{
|
||||
Temp scratch = scratch_begin(0, 0);
|
||||
F32 box_squish_epsilon = 0.001f;
|
||||
Rng2F32 window_rect = os_client_rect_from_window(ws->os);
|
||||
Rng2F32 window_rect = wm_client_rect_from_window(ws->os);
|
||||
|
||||
//- rjf: unpack settings
|
||||
F32 rounded_corner_amount = rd_setting_f32_from_name(str8_lit("rounded_corner_amount"));
|
||||
@@ -8634,7 +8634,7 @@ rd_window_frame(void)
|
||||
U64 heatmap_bucket_count = 0;
|
||||
if(DEV_draw_ui_box_heatmap)
|
||||
{
|
||||
Rng2F32 rect = os_client_rect_from_window(ws->os);
|
||||
Rng2F32 rect = wm_client_rect_from_window(ws->os);
|
||||
Vec2F32 size = dim_2f32(rect);
|
||||
Vec2S32 buckets_dim = {(S32)(size.x/heatmap_bucket_size), (S32)(size.y/heatmap_bucket_size)};
|
||||
heatmap_bucket_pitch = buckets_dim.x;
|
||||
@@ -8644,12 +8644,12 @@ rd_window_frame(void)
|
||||
|
||||
//- rjf: draw background color
|
||||
{
|
||||
dr_rect(os_client_rect_from_window(ws->os), base_background_color, 0, 0, 0);
|
||||
dr_rect(wm_client_rect_from_window(ws->os), base_background_color, 0, 0, 0);
|
||||
}
|
||||
|
||||
//- rjf: draw window border
|
||||
{
|
||||
dr_rect(os_client_rect_from_window(ws->os), base_border_color, 0, 1.f, border_softness*0.5f);
|
||||
dr_rect(wm_client_rect_from_window(ws->os), base_border_color, 0, 1.f, border_softness*0.5f);
|
||||
}
|
||||
|
||||
//- rjf: recurse & draw
|
||||
@@ -9117,7 +9117,7 @@ rd_window_frame(void)
|
||||
{
|
||||
Vec4F32 color = ui_color_from_name(str8_lit("text"));
|
||||
color.w *= ws->error_t;
|
||||
Rng2F32 rect = os_client_rect_from_window(ws->os);
|
||||
Rng2F32 rect = wm_client_rect_from_window(ws->os);
|
||||
dr_rect(pad_2f32(rect, 24.f), color, 0, 16.f, 12.f);
|
||||
dr_rect(rect, v4f32(color.x, color.y, color.z, color.w*0.025f), 0, 0, 0);
|
||||
}
|
||||
@@ -9126,7 +9126,7 @@ rd_window_frame(void)
|
||||
if(rd_state->bind_change_active) UI_TagF("pop")
|
||||
{
|
||||
Vec4F32 color = ui_color_from_name(str8_lit("background"));
|
||||
Rng2F32 rect = os_client_rect_from_window(ws->os);
|
||||
Rng2F32 rect = wm_client_rect_from_window(ws->os);
|
||||
dr_rect(pad_2f32(rect, 24.f), color, 0, 16.f, 12.f);
|
||||
dr_rect(rect, v4f32(color.x, color.y, color.z, color.w*0.025f), 0, 0, 0);
|
||||
}
|
||||
@@ -9138,7 +9138,7 @@ rd_window_frame(void)
|
||||
//- rjf: @window_frame_part update per-window frame counters/info
|
||||
//
|
||||
ws->frames_alive += 1;
|
||||
ws->last_window_rect = os_client_rect_from_window(ws->os);
|
||||
ws->last_window_rect = wm_client_rect_from_window(ws->os);
|
||||
|
||||
ProfEnd();
|
||||
scratch_end(scratch);
|
||||
@@ -10707,7 +10707,7 @@ rd_frame(void)
|
||||
B32 any_window_is_focused = 0;
|
||||
for(RD_WindowState *w = rd_state->first_window_state; w != &rd_nil_window_state; w = w->order_next)
|
||||
{
|
||||
if(os_window_is_focused(w->os))
|
||||
if(wm_window_is_focused(w->os))
|
||||
{
|
||||
any_window_is_focused = 1;
|
||||
break;
|
||||
@@ -10757,10 +10757,10 @@ rd_frame(void)
|
||||
//////////////////////////////
|
||||
//- rjf: get events from the OS
|
||||
//
|
||||
OS_EventList events = {0};
|
||||
WM_EventList events = {0};
|
||||
if(rd_state->frame_depth == 1)
|
||||
{
|
||||
events = os_get_events(scratch.arena, rd_state->num_frames_requested == 0 && !DEV_always_refresh);
|
||||
events = wm_get_events(scratch.arena, rd_state->num_frames_requested == 0 && !DEV_always_refresh);
|
||||
}
|
||||
|
||||
//////////////////////////////
|
||||
@@ -10794,7 +10794,7 @@ rd_frame(void)
|
||||
//
|
||||
// TODO(rjf): maximize target, given all windows and their monitors
|
||||
//
|
||||
F32 target_hz = os_get_gfx_info()->default_refresh_rate;
|
||||
F32 target_hz = wm_get_system_info()->default_refresh_rate;
|
||||
if(rd_state->frame_index > 32)
|
||||
{
|
||||
F32 possible_alternate_hz_targets[] = {target_hz, 60.f, 75.f, 120.f, 144.f, 165.f, 240.f, 360.f};
|
||||
@@ -10847,30 +10847,30 @@ rd_frame(void)
|
||||
//
|
||||
if(!rd_state->popup_active && rd_state->bind_change_active)
|
||||
{
|
||||
if(os_key_press(&events, os_window_zero(), 0, OS_Key_Esc))
|
||||
if(wm_key_press(&events, wm_window_zero(), 0, WM_Key_Esc))
|
||||
{
|
||||
rd_request_frame();
|
||||
rd_state->bind_change_active = 0;
|
||||
}
|
||||
if(os_key_press(&events, os_window_zero(), 0, OS_Key_Delete))
|
||||
if(wm_key_press(&events, wm_window_zero(), 0, WM_Key_Delete))
|
||||
{
|
||||
rd_request_frame();
|
||||
cfg_node_release(rd_state->cfg, cfg_node_from_id(rd_state->bind_change_binding_id));
|
||||
rd_state->bind_change_active = 0;
|
||||
}
|
||||
for(OS_Event *event = events.first, *next = 0; event != 0; event = next)
|
||||
for(WM_Event *event = events.first, *next = 0; event != 0; event = next)
|
||||
{
|
||||
if(event->kind == OS_EventKind_Press &&
|
||||
event->key != OS_Key_Esc &&
|
||||
event->key != OS_Key_Return &&
|
||||
event->key != OS_Key_Backspace &&
|
||||
event->key != OS_Key_Delete &&
|
||||
event->key != OS_Key_LeftMouseButton &&
|
||||
event->key != OS_Key_RightMouseButton &&
|
||||
event->key != OS_Key_MiddleMouseButton &&
|
||||
event->key != OS_Key_Ctrl &&
|
||||
event->key != OS_Key_Alt &&
|
||||
event->key != OS_Key_Shift)
|
||||
if(event->kind == WM_EventKind_Press &&
|
||||
event->key != WM_Key_Esc &&
|
||||
event->key != WM_Key_Return &&
|
||||
event->key != WM_Key_Backspace &&
|
||||
event->key != WM_Key_Delete &&
|
||||
event->key != WM_Key_LeftMouseButton &&
|
||||
event->key != WM_Key_RightMouseButton &&
|
||||
event->key != WM_Key_MiddleMouseButton &&
|
||||
event->key != WM_Key_Ctrl &&
|
||||
event->key != WM_Key_Alt &&
|
||||
event->key != WM_Key_Shift)
|
||||
{
|
||||
rd_state->bind_change_active = 0;
|
||||
CFG_Node *binding = cfg_node_from_id(rd_state->bind_change_binding_id);
|
||||
@@ -10882,13 +10882,13 @@ rd_frame(void)
|
||||
}
|
||||
cfg_node_release_all_children(rd_state->cfg, binding);
|
||||
cfg_node_new(rd_state->cfg, binding, rd_state->bind_change_cmd_name);
|
||||
cfg_node_new(rd_state->cfg, binding, os_g_key_cfg_string_table[event->key]);
|
||||
if(event->modifiers & OS_Modifier_Ctrl) { cfg_node_new(rd_state->cfg, binding, str8_lit("ctrl")); }
|
||||
if(event->modifiers & OS_Modifier_Shift) { cfg_node_new(rd_state->cfg, binding, str8_lit("shift")); }
|
||||
if(event->modifiers & OS_Modifier_Alt) { cfg_node_new(rd_state->cfg, binding, str8_lit("alt")); }
|
||||
U32 codepoint = os_codepoint_from_modifiers_and_key(event->modifiers, event->key);
|
||||
os_text(&events, event->window, codepoint);
|
||||
os_eat_event(&events, event);
|
||||
cfg_node_new(rd_state->cfg, binding, wm_key_cfg_name_table[event->key]);
|
||||
if(event->modifiers & WM_Modifier_Ctrl) { cfg_node_new(rd_state->cfg, binding, str8_lit("ctrl")); }
|
||||
if(event->modifiers & WM_Modifier_Shift) { cfg_node_new(rd_state->cfg, binding, str8_lit("shift")); }
|
||||
if(event->modifiers & WM_Modifier_Alt) { cfg_node_new(rd_state->cfg, binding, str8_lit("alt")); }
|
||||
U32 codepoint = wm_codepoint_from_modifiers_and_key(event->modifiers, event->key);
|
||||
wm_text(&events, event->window, codepoint);
|
||||
wm_eat_event(&events, event);
|
||||
rd_request_frame();
|
||||
break;
|
||||
}
|
||||
@@ -10928,7 +10928,7 @@ rd_frame(void)
|
||||
//
|
||||
ProfScope("consume events")
|
||||
{
|
||||
for(OS_Event *event = events.first, *next = 0;
|
||||
for(WM_Event *event = events.first, *next = 0;
|
||||
event != 0;
|
||||
event = next)
|
||||
RD_RegsScope()
|
||||
@@ -10948,13 +10948,13 @@ rd_frame(void)
|
||||
B32 take = 0;
|
||||
|
||||
//- rjf: try drag/drop drop-kickoff
|
||||
if(rd_drag_is_active() && event->kind == OS_EventKind_Release && event->key == OS_Key_LeftMouseButton)
|
||||
if(rd_drag_is_active() && event->kind == WM_EventKind_Release && event->key == WM_Key_LeftMouseButton)
|
||||
{
|
||||
rd_state->drag_drop_state = RD_DragDropState_Dropping;
|
||||
}
|
||||
|
||||
//- rjf: try window close
|
||||
if(!take && event->kind == OS_EventKind_WindowClose && ws != 0)
|
||||
if(!take && event->kind == WM_EventKind_WindowClose && ws != 0)
|
||||
{
|
||||
take = 1;
|
||||
rd_cmd(RD_CmdKind_Exit);
|
||||
@@ -10963,7 +10963,7 @@ rd_frame(void)
|
||||
//- rjf: try menu bar operations
|
||||
if(rd_state->alt_menu_bar_enabled)
|
||||
{
|
||||
if(!take && event->kind == OS_EventKind_Press && event->key == OS_Key_Alt && event->modifiers == 0 && event->is_repeat == 0)
|
||||
if(!take && event->kind == WM_EventKind_Press && event->key == WM_Key_Alt && event->modifiers == 0 && event->is_repeat == 0)
|
||||
{
|
||||
take = 1;
|
||||
rd_request_frame();
|
||||
@@ -10971,26 +10971,26 @@ rd_frame(void)
|
||||
ws->menu_bar_key_held = 1;
|
||||
ws->menu_bar_focus_press_started = 1;
|
||||
}
|
||||
if(!take && event->kind == OS_EventKind_Release && event->key == OS_Key_Alt && event->modifiers == 0 && event->is_repeat == 0)
|
||||
if(!take && event->kind == WM_EventKind_Release && event->key == WM_Key_Alt && event->modifiers == 0 && event->is_repeat == 0)
|
||||
{
|
||||
take = 1;
|
||||
rd_request_frame();
|
||||
ws->menu_bar_key_held = 0;
|
||||
}
|
||||
if(ws->menu_bar_focused && event->kind == OS_EventKind_Press && event->key == OS_Key_Alt && event->modifiers == 0 && event->is_repeat == 0)
|
||||
if(ws->menu_bar_focused && event->kind == WM_EventKind_Press && event->key == WM_Key_Alt && event->modifiers == 0 && event->is_repeat == 0)
|
||||
{
|
||||
take = 1;
|
||||
rd_request_frame();
|
||||
ws->menu_bar_focused = 0;
|
||||
}
|
||||
else if(ws->menu_bar_focus_press_started && !ws->menu_bar_focused && event->kind == OS_EventKind_Release && event->modifiers == 0 && event->key == OS_Key_Alt && event->is_repeat == 0)
|
||||
else if(ws->menu_bar_focus_press_started && !ws->menu_bar_focused && event->kind == WM_EventKind_Release && event->modifiers == 0 && event->key == WM_Key_Alt && event->is_repeat == 0)
|
||||
{
|
||||
take = 1;
|
||||
rd_request_frame();
|
||||
ws->menu_bar_focused = !ws->menu_bar_focused_on_press;
|
||||
ws->menu_bar_focus_press_started = 0;
|
||||
}
|
||||
else if(event->kind == OS_EventKind_Press && event->key == OS_Key_Esc && ws->menu_bar_focused && !ui_any_ctx_menu_is_open())
|
||||
else if(event->kind == WM_EventKind_Press && event->key == WM_Key_Esc && ws->menu_bar_focused && !ui_any_ctx_menu_is_open())
|
||||
{
|
||||
take = 1;
|
||||
rd_request_frame();
|
||||
@@ -10999,13 +10999,13 @@ rd_frame(void)
|
||||
}
|
||||
|
||||
//- rjf: try hotkey presses
|
||||
if(!take && event->kind == OS_EventKind_Press)
|
||||
if(!take && event->kind == WM_EventKind_Press)
|
||||
{
|
||||
CFG_Binding binding = {event->key, event->modifiers};
|
||||
CFG_KeyMapNodePtrList key_map_nodes = cfg_key_map_node_ptr_list_from_binding(scratch.arena, rd_state->key_map, binding);
|
||||
if(key_map_nodes.first != 0)
|
||||
{
|
||||
U32 hit_char = os_codepoint_from_modifiers_and_key(event->modifiers, event->key);
|
||||
U32 hit_char = wm_codepoint_from_modifiers_and_key(event->modifiers, event->key);
|
||||
if(hit_char == 0 || allow_text_hotkeys)
|
||||
{
|
||||
String8 cmd_name = key_map_nodes.first->v->name;
|
||||
@@ -11019,17 +11019,17 @@ rd_frame(void)
|
||||
rd_cmd(RD_CmdKind_RunCommand, .cmd_name = cmd_name);
|
||||
if(allow_text_hotkeys)
|
||||
{
|
||||
os_text(&events, event->window, hit_char);
|
||||
wm_text(&events, event->window, hit_char);
|
||||
next = event->next;
|
||||
}
|
||||
take = 1;
|
||||
if(event->modifiers & OS_Modifier_Alt)
|
||||
if(event->modifiers & WM_Modifier_Alt)
|
||||
{
|
||||
ws->menu_bar_focus_press_started = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if(OS_Key_F1 <= event->key && event->key <= OS_Key_F19)
|
||||
else if(WM_Key_F1 <= event->key && event->key <= WM_Key_F19)
|
||||
{
|
||||
ws->menu_bar_focus_press_started = 0;
|
||||
}
|
||||
@@ -11037,14 +11037,14 @@ rd_frame(void)
|
||||
}
|
||||
|
||||
//- rjf: try text events
|
||||
if(!take && event->kind == OS_EventKind_Text)
|
||||
if(!take && event->kind == WM_EventKind_Text)
|
||||
{
|
||||
String32 insertion32 = str32(&event->character, 1);
|
||||
String8 insertion8 = str8_from_32(scratch.arena, insertion32);
|
||||
rd_cmd(RD_CmdKind_InsertText, .string = insertion8);
|
||||
rd_request_frame();
|
||||
take = 1;
|
||||
if(event->modifiers & OS_Modifier_Alt)
|
||||
if(event->modifiers & WM_Modifier_Alt)
|
||||
{
|
||||
ws->menu_bar_focus_press_started = 0;
|
||||
}
|
||||
@@ -11054,13 +11054,13 @@ rd_frame(void)
|
||||
if(!take)
|
||||
{
|
||||
take = 1;
|
||||
rd_cmd(RD_CmdKind_OSEvent, .os_event = event);
|
||||
rd_cmd(RD_CmdKind_WMEvent, .wm_event = event);
|
||||
}
|
||||
|
||||
//- rjf: take
|
||||
if(take)
|
||||
{
|
||||
os_eat_event(&events, event);
|
||||
wm_eat_event(&events, event);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -12146,7 +12146,7 @@ rd_frame(void)
|
||||
// rjf: run -> refocus pre-stop focused window
|
||||
if(kind == RD_CmdKind_Run)
|
||||
{
|
||||
os_focus_external_window(rd_state->prestop_focused_window);
|
||||
wm_focus_external_window(rd_state->prestop_focused_window);
|
||||
}
|
||||
|
||||
// rjf: run -> no active targets, no processes, but we only have one target? -> just launch it, then select it
|
||||
@@ -12278,7 +12278,7 @@ rd_frame(void)
|
||||
{
|
||||
current_path_string = path_normalized_from_string(scratch.arena, get_current_path(scratch.arena));
|
||||
}
|
||||
String8 file_path = os_graphical_pick_file(scratch.arena, current_path_string);
|
||||
String8 file_path = wm_graphical_pick_file(scratch.arena, current_path_string);
|
||||
file_path = path_normalized_from_string(scratch.arena, file_path);
|
||||
if(file_path.size != 0)
|
||||
{
|
||||
@@ -12418,7 +12418,7 @@ rd_frame(void)
|
||||
RD_WindowState *ws = rd_window_state_from_cfg(wcfg);
|
||||
if(ws != &rd_nil_window_state)
|
||||
{
|
||||
os_window_set_fullscreen(ws->os, !os_window_is_fullscreen(ws->os));
|
||||
wm_window_set_fullscreen(ws->os, !wm_window_is_fullscreen(ws->os));
|
||||
}
|
||||
}break;
|
||||
case RD_CmdKind_BringToFront:
|
||||
@@ -12431,8 +12431,8 @@ rd_frame(void)
|
||||
}
|
||||
if(last_focused_ws != &rd_nil_window_state)
|
||||
{
|
||||
os_window_set_minimized(last_focused_ws->os, 0);
|
||||
os_window_focus(last_focused_ws->os);
|
||||
wm_window_set_minimized(last_focused_ws->os, 0);
|
||||
wm_window_focus(last_focused_ws->os);
|
||||
}
|
||||
}break;
|
||||
|
||||
@@ -12468,10 +12468,10 @@ rd_frame(void)
|
||||
CFG_Binding binding = rd_default_binding_table[idx].binding;
|
||||
CFG_Node *binding_root = cfg_node_new(rd_state->cfg, keybindings, str8_zero());
|
||||
cfg_node_new(rd_state->cfg, binding_root, name);
|
||||
cfg_node_new(rd_state->cfg, binding_root, os_g_key_cfg_string_table[binding.key]);
|
||||
if(binding.modifiers & OS_Modifier_Ctrl) {cfg_node_newf(rd_state->cfg, binding_root, "ctrl");}
|
||||
if(binding.modifiers & OS_Modifier_Shift) {cfg_node_newf(rd_state->cfg, binding_root, "shift");}
|
||||
if(binding.modifiers & OS_Modifier_Alt) {cfg_node_newf(rd_state->cfg, binding_root, "alt");}
|
||||
cfg_node_new(rd_state->cfg, binding_root, wm_key_cfg_name_table[binding.key]);
|
||||
if(binding.modifiers & WM_Modifier_Ctrl) {cfg_node_newf(rd_state->cfg, binding_root, "ctrl");}
|
||||
if(binding.modifiers & WM_Modifier_Shift) {cfg_node_newf(rd_state->cfg, binding_root, "shift");}
|
||||
if(binding.modifiers & WM_Modifier_Alt) {cfg_node_newf(rd_state->cfg, binding_root, "alt");}
|
||||
}
|
||||
}break;
|
||||
|
||||
@@ -12583,10 +12583,10 @@ rd_frame(void)
|
||||
CFG_NodePtrList all_user_windows = cfg_node_child_list_from_string(scratch.arena, file_root, str8_lit("window"));
|
||||
if(all_user_windows.count == 0)
|
||||
{
|
||||
OS_Monitor monitor = os_primary_monitor();
|
||||
String8 monitor_name = os_name_from_monitor(scratch.arena, monitor);
|
||||
Vec2F32 monitor_dim = os_dim_from_monitor(monitor);
|
||||
F32 monitor_dpi = os_dpi_from_monitor(monitor);
|
||||
WM_Monitor monitor = wm_primary_monitor();
|
||||
String8 monitor_name = wm_name_from_monitor(scratch.arena, monitor);
|
||||
Vec2F32 monitor_dim = wm_dim_from_monitor(monitor);
|
||||
F32 monitor_dpi = wm_dpi_from_monitor(monitor);
|
||||
Vec2F32 window_dim = v2f32(monitor_dim.x*4/5, monitor_dim.y*4/5);
|
||||
if(window_dim.x == 0 || window_dim.y == 0)
|
||||
{
|
||||
@@ -13546,7 +13546,7 @@ rd_frame(void)
|
||||
CFG_Node *tab = cfg_node_from_id(rd_regs()->tab);
|
||||
String8 expr = rd_expr_from_cfg(tab);
|
||||
String8 full_path = rd_file_path_from_eval_string(scratch.arena, expr);
|
||||
os_set_clipboard_text(full_path);
|
||||
wm_set_clipboard_text(full_path);
|
||||
}break;
|
||||
case RD_CmdKind_CloseTab:
|
||||
{
|
||||
@@ -13720,7 +13720,7 @@ rd_frame(void)
|
||||
if(rd_regs()->file_path.size != 0)
|
||||
{
|
||||
String8 full_path = rd_regs()->file_path;
|
||||
os_show_in_filesystem_ui(full_path);
|
||||
wm_show_in_filesystem_ui(full_path);
|
||||
}break;
|
||||
|
||||
//- rjf: source <-> disasm
|
||||
@@ -15580,34 +15580,34 @@ rd_frame(void)
|
||||
}break;
|
||||
|
||||
//- rjf: os event passthrough
|
||||
case RD_CmdKind_OSEvent:
|
||||
case RD_CmdKind_WMEvent:
|
||||
{
|
||||
OS_Event *os_event = rd_regs()->os_event;
|
||||
RD_WindowState *ws = rd_window_state_from_os_handle(os_event->window);
|
||||
if(os_event != 0 && ws != &rd_nil_window_state)
|
||||
WM_Event *wm_event = rd_regs()->wm_event;
|
||||
RD_WindowState *ws = rd_window_state_from_os_handle(wm_event->window);
|
||||
if(wm_event != 0 && ws != &rd_nil_window_state)
|
||||
{
|
||||
UI_Event ui_event = zero_struct;
|
||||
UI_EventKind kind = UI_EventKind_Null;
|
||||
{
|
||||
switch(os_event->kind)
|
||||
switch(wm_event->kind)
|
||||
{
|
||||
default:{}break;
|
||||
case OS_EventKind_Press: {kind = UI_EventKind_Press;}break;
|
||||
case OS_EventKind_Release: {kind = UI_EventKind_Release;}break;
|
||||
case OS_EventKind_MouseMove: {kind = UI_EventKind_MouseMove;}break;
|
||||
case OS_EventKind_Text: {kind = UI_EventKind_Text;}break;
|
||||
case OS_EventKind_Scroll: {kind = UI_EventKind_Scroll;}break;
|
||||
case OS_EventKind_FileDrop: {kind = UI_EventKind_FileDrop;}break;
|
||||
case WM_EventKind_Press: {kind = UI_EventKind_Press;}break;
|
||||
case WM_EventKind_Release: {kind = UI_EventKind_Release;}break;
|
||||
case WM_EventKind_MouseMove: {kind = UI_EventKind_MouseMove;}break;
|
||||
case WM_EventKind_Text: {kind = UI_EventKind_Text;}break;
|
||||
case WM_EventKind_Scroll: {kind = UI_EventKind_Scroll;}break;
|
||||
case WM_EventKind_FileDrop: {kind = UI_EventKind_FileDrop;}break;
|
||||
}
|
||||
}
|
||||
ui_event.kind = kind;
|
||||
ui_event.key = os_event->key;
|
||||
ui_event.modifiers = os_event->modifiers;
|
||||
ui_event.string = os_event->character ? str8_from_32(ui_build_arena(), str32(&os_event->character, 1)) : str8_zero();
|
||||
ui_event.paths = str8_list_copy(ui_build_arena(), &os_event->strings);
|
||||
ui_event.pos = os_event->pos;
|
||||
ui_event.delta_2f32 = os_event->delta;
|
||||
ui_event.timestamp_us = os_event->timestamp_us;
|
||||
ui_event.key = wm_event->key;
|
||||
ui_event.modifiers = wm_event->modifiers;
|
||||
ui_event.string = wm_event->character ? str8_from_32(ui_build_arena(), str32(&wm_event->character, 1)) : str8_zero();
|
||||
ui_event.paths = str8_list_copy(ui_build_arena(), &wm_event->strings);
|
||||
ui_event.pos = wm_event->pos;
|
||||
ui_event.delta_2f32 = wm_event->delta;
|
||||
ui_event.timestamp_us = wm_event->timestamp_us;
|
||||
ui_event_list_push(scratch.arena, &ws->ui_events, &ui_event);
|
||||
}
|
||||
}break;
|
||||
@@ -16138,7 +16138,7 @@ rd_frame(void)
|
||||
UI_Event evt = zero_struct;
|
||||
evt.kind = UI_EventKind_Text;
|
||||
evt.flags = UI_EventFlag_Paste;
|
||||
evt.string = os_get_clipboard_text(scratch.arena);
|
||||
evt.string = wm_get_clipboard_text(scratch.arena);
|
||||
ui_event_list_push(scratch.arena, &ws->ui_events, &evt);
|
||||
}break;
|
||||
case RD_CmdKind_InsertText:
|
||||
@@ -16483,7 +16483,7 @@ rd_frame(void)
|
||||
B32 any_window_is_focused = 0;
|
||||
for(RD_WindowState *ws = rd_state->first_window_state; ws != &rd_nil_window_state; ws = ws->order_next)
|
||||
{
|
||||
if(os_window_is_focused(ws->os))
|
||||
if(wm_window_is_focused(ws->os))
|
||||
{
|
||||
any_window_is_focused = 1;
|
||||
break;
|
||||
@@ -16499,10 +16499,10 @@ rd_frame(void)
|
||||
}
|
||||
if(ws != &rd_nil_window_state)
|
||||
{
|
||||
rd_state->prestop_focused_window = os_focused_external_window();
|
||||
os_window_set_minimized(ws->os, 0);
|
||||
os_window_bring_to_front(ws->os);
|
||||
os_window_focus(ws->os);
|
||||
rd_state->prestop_focused_window = wm_focused_external_window();
|
||||
wm_window_set_minimized(ws->os, 0);
|
||||
wm_window_bring_to_front(ws->os);
|
||||
wm_window_focus(ws->os);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -16538,7 +16538,7 @@ rd_frame(void)
|
||||
{
|
||||
for(RD_WindowState *ws = rd_state->first_window_state; ws != &rd_nil_window_state; ws = ws->order_next)
|
||||
{
|
||||
os_window_set_title(ws->os, window_title);
|
||||
wm_window_set_title(ws->os, window_title);
|
||||
}
|
||||
}
|
||||
rd_state->last_window_title = str8_copy(rd_frame_arena(), window_title);
|
||||
@@ -16689,7 +16689,7 @@ rd_frame(void)
|
||||
{
|
||||
CFG_Node *window = n->v;
|
||||
RD_WindowState *w = rd_window_state_from_cfg(window);
|
||||
B32 window_is_focused = os_window_is_focused(w->os);
|
||||
B32 window_is_focused = wm_window_is_focused(w->os);
|
||||
if(window_is_focused)
|
||||
{
|
||||
rd_state->last_focused_window = w->cfg_id;
|
||||
@@ -16720,7 +16720,7 @@ rd_frame(void)
|
||||
{
|
||||
ui_state_release(ws->ui);
|
||||
r_window_unequip(ws->os, ws->r);
|
||||
os_window_close(ws->os);
|
||||
wm_window_close(ws->os);
|
||||
arena_release(ws->drop_completion_arena);
|
||||
arena_release(ws->query_arena);
|
||||
arena_release(ws->hover_eval_arena);
|
||||
@@ -16800,7 +16800,7 @@ rd_frame(void)
|
||||
{
|
||||
CFG_Node *window = cfg_node_from_id(n->v);
|
||||
RD_WindowState *ws = rd_window_state_from_cfg(window);
|
||||
os_window_first_paint(ws->os);
|
||||
wm_window_first_paint(ws->os);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -283,7 +283,7 @@ struct RD_WindowState
|
||||
|
||||
// rjf: top-level info & handles
|
||||
Arena *arena;
|
||||
OS_Window os;
|
||||
WM_Window os;
|
||||
R_Handle r;
|
||||
UI_State *ui;
|
||||
F32 last_dpi;
|
||||
@@ -543,7 +543,7 @@ struct RD_State
|
||||
String8 bind_change_cmd_name;
|
||||
|
||||
// rjf: pre-stop focused window
|
||||
OS_ExternalWindow prestop_focused_window;
|
||||
WM_ExtWindow prestop_focused_window;
|
||||
};
|
||||
|
||||
////////////////////////////////
|
||||
@@ -730,7 +730,7 @@ internal void rd_store_view_paramf(String8 key, char *fmt, ...);
|
||||
internal String8 rd_push_window_title(Arena *arena);
|
||||
internal CFG_Node *rd_window_from_cfg(CFG_Node *cfg);
|
||||
internal RD_WindowState *rd_window_state_from_cfg(CFG_Node *cfg);
|
||||
internal RD_WindowState *rd_window_state_from_os_handle(OS_Window os);
|
||||
internal RD_WindowState *rd_window_state_from_os_handle(WM_Window os);
|
||||
internal void rd_window_frame(void);
|
||||
|
||||
////////////////////////////////
|
||||
|
||||
@@ -46,7 +46,7 @@ E_TYPE_EXPAND_INFO_FUNCTION_DEF(commands)
|
||||
CFG_KeyMapNodePtrList bindings = cfg_key_map_node_ptr_list_from_name(scratch.arena, rd_state->key_map, code_name);
|
||||
for(CFG_KeyMapNodePtr *n = bindings.first; n != 0; n = n->next)
|
||||
{
|
||||
String8 binding_text = os_string_from_modifiers_key(scratch.arena, n->v->binding.modifiers, n->v->binding.key);
|
||||
String8 binding_text = wm_string_from_modifiers_key(scratch.arena, n->v->binding.modifiers, n->v->binding.key);
|
||||
FuzzyMatchRangeList matches = fuzzy_match_find(scratch.arena, filter, binding_text);
|
||||
if(matches.count == matches.needle_part_count)
|
||||
{
|
||||
|
||||
@@ -250,7 +250,7 @@
|
||||
|
||||
#define DMN_INIT_MANUAL 1
|
||||
#define D_INIT_MANUAL 1
|
||||
#define OS_GFX_INIT_MANUAL 1
|
||||
#define WM_INIT_MANUAL 1
|
||||
#define FP_INIT_MANUAL 1
|
||||
#define R_INIT_MANUAL 1
|
||||
#define FNT_INIT_MANUAL 1
|
||||
@@ -430,7 +430,7 @@ ipc_signaler_thread__entry_point(void *p)
|
||||
cond_var_wait(ipc_s2m_ring_cv, ipc_s2m_ring_mutex, max_U64);
|
||||
}
|
||||
cond_var_broadcast(ipc_s2m_ring_cv);
|
||||
os_send_wakeup_event();
|
||||
wm_send_wakeup_event();
|
||||
ipc_info->msg_size = 0;
|
||||
semaphore_drop(ipc_sender2main_lock_semaphore);
|
||||
}
|
||||
@@ -443,7 +443,7 @@ ipc_signaler_thread__entry_point(void *p)
|
||||
|
||||
internal D_WAKEUP_FUNCTION_DEF(wakeup_hook_ctrl)
|
||||
{
|
||||
os_send_wakeup_event();
|
||||
wm_send_wakeup_event();
|
||||
}
|
||||
|
||||
////////////////////////////////
|
||||
@@ -544,7 +544,7 @@ entry_point(CmdLine *cmd_line)
|
||||
{
|
||||
dmn_init();
|
||||
d_init();
|
||||
os_gfx_init();
|
||||
wm_init();
|
||||
fp_init();
|
||||
r_init(cmd_line);
|
||||
fnt_init();
|
||||
@@ -621,7 +621,7 @@ entry_point(CmdLine *cmd_line)
|
||||
RD_WindowState *dst_ws = rd_state->first_window_state;
|
||||
for(RD_WindowState *ws = dst_ws; ws != &rd_nil_window_state; ws = ws->order_next)
|
||||
{
|
||||
if(os_window_is_focused(ws->os))
|
||||
if(wm_window_is_focused(ws->os))
|
||||
{
|
||||
dst_ws = ws;
|
||||
break;
|
||||
@@ -810,7 +810,7 @@ entry_point(CmdLine *cmd_line)
|
||||
//- rjf: help message box
|
||||
case ExecMode_Help:
|
||||
{
|
||||
os_graphical_message(0,
|
||||
wm_graphical_message(0,
|
||||
str8_lit("The RAD Debugger - Help"),
|
||||
str8_lit("The following options may be used when starting the RAD Debugger from the command line:\n\n"
|
||||
"--user:<path>\n"
|
||||
|
||||
@@ -641,7 +641,7 @@ rd_code_view_build(Arena *arena, RD_CodeViewState *cv, RD_CodeViewBuildFlags fla
|
||||
}
|
||||
|
||||
//- rjf: ctrl+pressed? -> go to name
|
||||
if(ui_pressed(sig.base) && sig.base.event_flags & OS_Modifier_Ctrl)
|
||||
if(ui_pressed(sig.base) && sig.base.event_flags & WM_Modifier_Ctrl)
|
||||
{
|
||||
ui_kill_action();
|
||||
rd_cmd(RD_CmdKind_GoToName, .string = txt_string_from_info_data_txt_rng(text_info, text_data, sig.mouse_expr_rng));
|
||||
@@ -792,7 +792,7 @@ rd_code_view_build(Arena *arena, RD_CodeViewState *cv, RD_CodeViewBuildFlags fla
|
||||
{
|
||||
for(UI_Event *evt = 0; ui_next_event(&evt);)
|
||||
{
|
||||
if(evt->kind == UI_EventKind_Scroll && evt->modifiers & OS_Modifier_Ctrl && evt->modifiers & OS_Modifier_Shift)
|
||||
if(evt->kind == UI_EventKind_Scroll && evt->modifiers & WM_Modifier_Ctrl && evt->modifiers & WM_Modifier_Shift)
|
||||
{
|
||||
ui_eat_event(evt);
|
||||
if(evt->delta_2f32.y < 0)
|
||||
@@ -2888,7 +2888,7 @@ RD_VIEW_UI_FUNCTION_DEF(memory)
|
||||
}
|
||||
}
|
||||
String8 data_textified = str8_list_join(scratch.arena, &data_textified_parts, 0);
|
||||
os_set_clipboard_text(data_textified);
|
||||
wm_set_clipboard_text(data_textified);
|
||||
}
|
||||
good_action = 1;
|
||||
}
|
||||
@@ -4089,7 +4089,7 @@ RD_VIEW_UI_FUNCTION_DEF(memory)
|
||||
{
|
||||
for(UI_Event *evt = 0; ui_next_event(&evt);)
|
||||
{
|
||||
if(evt->kind == UI_EventKind_Scroll && evt->modifiers & OS_Modifier_Ctrl)
|
||||
if(evt->kind == UI_EventKind_Scroll && evt->modifiers & WM_Modifier_Ctrl)
|
||||
{
|
||||
ui_eat_event(evt);
|
||||
if(evt->delta_2f32.y < 0)
|
||||
|
||||
+15
-15
@@ -783,9 +783,9 @@ rd_cmd_binding_buttons(String8 name, String8 filter, B32 add_new)
|
||||
//- rjf: form binding string
|
||||
String8 keybinding_str = {0};
|
||||
{
|
||||
if(binding.key != OS_Key_Null)
|
||||
if(binding.key != WM_Key_Null)
|
||||
{
|
||||
keybinding_str = os_string_from_modifiers_key(scratch.arena, binding.modifiers, binding.key);
|
||||
keybinding_str = wm_string_from_modifiers_key(scratch.arena, binding.modifiers, binding.key);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -820,7 +820,7 @@ rd_cmd_binding_buttons(String8 name, String8 filter, B32 add_new)
|
||||
// rjf: click => toggle activity
|
||||
if(!rd_state->bind_change_active && ui_clicked(sig))
|
||||
{
|
||||
if((binding.key == OS_Key_Esc || binding.key == OS_Key_Delete) && binding.modifiers == 0)
|
||||
if((binding.key == WM_Key_Esc || binding.key == WM_Key_Delete) && binding.modifiers == 0)
|
||||
{
|
||||
log_user_error(str8_lit("Cannot rebind; this command uses a reserved keybinding."));
|
||||
}
|
||||
@@ -1262,7 +1262,7 @@ rd_code_slice(RD_CodeSliceParams *params, TxtPt *cursor, TxtPt *mark, S64 *prefe
|
||||
D_Event stop_event = d_ctrl_last_stop_event();
|
||||
D_Entity *stopper_thread = d_entity_from_handle(&d_user_state->ctrl_entity_store->ctx, stop_event.entity);
|
||||
B32 is_focused = ui_is_focus_active();
|
||||
B32 ctrlified = (os_get_modifiers() & OS_Modifier_Ctrl);
|
||||
B32 ctrlified = (wm_get_modifiers() & WM_Modifier_Ctrl);
|
||||
Vec4F32 code_line_bgs[] =
|
||||
{
|
||||
ui_color_from_name(str8_lit("line_info_0")),
|
||||
@@ -1406,7 +1406,7 @@ rd_code_slice(RD_CodeSliceParams *params, TxtPt *cursor, TxtPt *mark, S64 *prefe
|
||||
line_num += 1, line_idx += 1)
|
||||
{
|
||||
D_EntityList line_ips = params->line_ips[line_idx];
|
||||
ui_set_next_hover_cursor(OS_Cursor_HandPoint);
|
||||
ui_set_next_hover_cursor(WM_Cursor_HandPoint);
|
||||
UI_Box *line_margin_box = ui_build_box_from_stringf(UI_BoxFlag_Clickable*!!(params->flags & RD_CodeSliceFlag_Clickable)|UI_BoxFlag_DrawActiveEffects, "line_margin_%I64x", line_num);
|
||||
UI_Parent(line_margin_box)
|
||||
{
|
||||
@@ -1455,7 +1455,7 @@ rd_code_slice(RD_CodeSliceParams *params, TxtPt *cursor, TxtPt *mark, S64 *prefe
|
||||
}
|
||||
|
||||
// rjf: build thread box
|
||||
ui_set_next_hover_cursor(OS_Cursor_UpDownLeftRight);
|
||||
ui_set_next_hover_cursor(WM_Cursor_UpDownLeftRight);
|
||||
ui_set_next_font(rd_font_from_slot(RD_FontSlot_Icons));
|
||||
ui_set_next_font_size(params->font_size);
|
||||
ui_set_next_text_raster_flags(FNT_RasterFlag_Smooth);
|
||||
@@ -1561,7 +1561,7 @@ rd_code_slice(RD_CodeSliceParams *params, TxtPt *cursor, TxtPt *mark, S64 *prefe
|
||||
D_EntityList line_ips = params->line_ips[line_idx];
|
||||
CFG_NodePtrList line_bps = params->line_bps[line_idx];
|
||||
CFG_NodePtrList line_pins = params->line_pins[line_idx];
|
||||
ui_set_next_hover_cursor(OS_Cursor_HandPoint);
|
||||
ui_set_next_hover_cursor(WM_Cursor_HandPoint);
|
||||
ui_set_next_background_color(v4f32(0, 0, 0, 0));
|
||||
UI_Box *line_margin_box = ui_build_box_from_stringf(UI_BoxFlag_Clickable*!!(params->flags & RD_CodeSliceFlag_Clickable)|UI_BoxFlag_DrawBackground|UI_BoxFlag_DrawActiveEffects, "line_margin_%I64x", line_num);
|
||||
UI_Parent(line_margin_box)
|
||||
@@ -1611,7 +1611,7 @@ rd_code_slice(RD_CodeSliceParams *params, TxtPt *cursor, TxtPt *mark, S64 *prefe
|
||||
}
|
||||
|
||||
// rjf: build thread box
|
||||
ui_set_next_hover_cursor(OS_Cursor_UpDownLeftRight);
|
||||
ui_set_next_hover_cursor(WM_Cursor_UpDownLeftRight);
|
||||
ui_set_next_font(rd_font_from_slot(RD_FontSlot_Icons));
|
||||
ui_set_next_font_size(params->font_size);
|
||||
ui_set_next_text_raster_flags(FNT_RasterFlag_Smooth);
|
||||
@@ -1760,7 +1760,7 @@ rd_code_slice(RD_CodeSliceParams *params, TxtPt *cursor, TxtPt *mark, S64 *prefe
|
||||
}
|
||||
|
||||
// rjf: shift+click => enable breakpoint
|
||||
if(ui_clicked(bp_sig) && bp_sig.event_flags & OS_Modifier_Shift)
|
||||
if(ui_clicked(bp_sig) && bp_sig.event_flags & WM_Modifier_Shift)
|
||||
{
|
||||
rd_cmd(bp_is_disabled ? RD_CmdKind_EnableCfg : RD_CmdKind_DisableCfg, .cfg = bp->id);
|
||||
}
|
||||
@@ -1914,7 +1914,7 @@ rd_code_slice(RD_CodeSliceParams *params, TxtPt *cursor, TxtPt *mark, S64 *prefe
|
||||
UI_Box *text_container_box = &ui_nil_box;
|
||||
UI_Parent(top_container_box) UI_Focus(UI_FocusKind_Off)
|
||||
{
|
||||
ui_set_next_hover_cursor(ctrlified ? OS_Cursor_HandPoint : OS_Cursor_IBar);
|
||||
ui_set_next_hover_cursor(ctrlified ? WM_Cursor_HandPoint : WM_Cursor_IBar);
|
||||
ui_set_next_pref_height(ui_px(params->line_height_px*(dim_1s64(params->line_num_range)+1), 1.f));
|
||||
text_container_box = ui_build_box_from_string(UI_BoxFlag_Clickable*!!(params->flags & RD_CodeSliceFlag_Clickable), str8_lit("text_container"));
|
||||
}
|
||||
@@ -3049,7 +3049,7 @@ rd_do_txt_controls(TXT_TextInfo *info, String8 data, U64 line_count_per_page, Tx
|
||||
if(evt->flags & UI_EventFlag_Copy)
|
||||
{
|
||||
String8 text = txt_string_from_info_data_txt_rng(info, data, txt_rng(*cursor, *mark));
|
||||
os_set_clipboard_text(text);
|
||||
wm_set_clipboard_text(text);
|
||||
taken = 1;
|
||||
}
|
||||
|
||||
@@ -3447,7 +3447,7 @@ rd_cell(RD_CellParams *params, String8 string)
|
||||
//
|
||||
if(is_focus_active || is_focus_active_disabled)
|
||||
{
|
||||
ui_set_next_hover_cursor(OS_Cursor_IBar);
|
||||
ui_set_next_hover_cursor(WM_Cursor_IBar);
|
||||
}
|
||||
UI_Box *box = ui_build_box_from_key(UI_BoxFlag_MouseClickable|
|
||||
(!!build_lhs_name_desc*UI_BoxFlag_DisableFocusBorder)|
|
||||
@@ -3807,7 +3807,7 @@ rd_cell(RD_CellParams *params, String8 string)
|
||||
{
|
||||
F32 extratoggler_padding_px = floor_f32(ui_top_font_size()*0.35f);
|
||||
F32 toggler_size_px = ceil_f32(height_px - extratoggler_padding_px*2.f) - 1.f;
|
||||
ui_set_next_hover_cursor(OS_Cursor_LeftRight);
|
||||
ui_set_next_hover_cursor(WM_Cursor_LeftRight);
|
||||
UI_Box *slider_box = ui_build_box_from_stringf(UI_BoxFlag_DrawHotEffects|UI_BoxFlag_DrawBorder|UI_BoxFlag_DrawBackground|UI_BoxFlag_Clickable, "slider");
|
||||
UI_Parent(slider_box) UI_TagF("pop")
|
||||
{
|
||||
@@ -3883,7 +3883,7 @@ rd_cell(RD_CellParams *params, String8 string)
|
||||
{
|
||||
if(evt->flags & UI_EventFlag_Copy)
|
||||
{
|
||||
os_set_clipboard_text(params->pre_edit_value);
|
||||
wm_set_clipboard_text(params->pre_edit_value);
|
||||
}
|
||||
if(evt->flags & UI_EventFlag_Delete)
|
||||
{
|
||||
@@ -4003,7 +4003,7 @@ rd_cell(RD_CellParams *params, String8 string)
|
||||
// rjf: perform copy
|
||||
if(op.flags & UI_TxtOpFlag_Copy)
|
||||
{
|
||||
os_set_clipboard_text(op.copy);
|
||||
wm_set_clipboard_text(op.copy);
|
||||
}
|
||||
|
||||
// rjf: commit op's changed cursor & mark to caller-provided state
|
||||
|
||||
Reference in New Issue
Block a user