From 4f3691d183f6393f05e08ffc00e53102b5d65753 Mon Sep 17 00:00:00 2001 From: John Mark Bell Date: Thu, 5 Aug 2004 20:32:00 +0000 Subject: [project @ 2004-08-05 20:32:00 by jmb] Text search. Press F4 to access it svn path=/import/netsurf/; revision=1182 --- riscos/dialog.c | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) (limited to 'riscos/dialog.c') diff --git a/riscos/dialog.c b/riscos/dialog.c index 3bd0fffa4..d98cf1127 100644 --- a/riscos/dialog.c +++ b/riscos/dialog.c @@ -38,7 +38,7 @@ wimp_w dialog_info, dialog_saveas, dialog_config, dialog_config_br, #endif dialog_zoom, dialog_pageinfo, dialog_objinfo, dialog_tooltip, dialog_warning, dialog_config_th_pane, dialog_debug, - dialog_folder, dialog_entry; + dialog_folder, dialog_entry, dialog_search; static int ro_gui_choices_font_size; static int ro_gui_choices_font_min_size; @@ -102,6 +102,7 @@ void ro_gui_dialog_init(void) dialog_debug = ro_gui_dialog_create("debug"); dialog_folder = ro_gui_dialog_create("new_folder"); dialog_entry = ro_gui_dialog_create("new_entry"); + dialog_search = ro_gui_dialog_create("search"); } @@ -345,6 +346,8 @@ void ro_gui_dialog_close_persistant(wimp_w parent) { bool ro_gui_dialog_keypress(wimp_key *key) { wimp_pointer pointer; + int i; + if (key->c == wimp_KEY_ESCAPE) { ro_gui_dialog_close(key->w); return true; @@ -358,6 +361,20 @@ bool ro_gui_dialog_keypress(wimp_key *key) ro_gui_hotlist_dialog_click(&pointer); return true; } + else if (key->w == dialog_search) { + pointer.w = key->w; + pointer.i = ICON_SEARCH_FIND; + pointer.buttons = wimp_CLICK_SELECT; + for (i = 0; i < MAX_PERSISTANT; i++) { + if (persistant_dialog[i].dialog == + dialog_search) { + ro_gui_search_click(&pointer, + persistant_dialog[i].parent); + break; + } + } + return true; + } } #ifdef WITH_AUTH if (key->w == dialog_401li) @@ -373,6 +390,8 @@ bool ro_gui_dialog_keypress(wimp_key *key) void ro_gui_dialog_click(wimp_pointer *pointer) { + int i; + if (pointer->buttons == wimp_CLICK_MENU) return; @@ -396,6 +415,15 @@ void ro_gui_dialog_click(wimp_pointer *pointer) ro_gui_dialog_click_warning(pointer); else if ((pointer->w == dialog_folder) || (pointer->w == dialog_entry)) ro_gui_hotlist_dialog_click(pointer); + else if (pointer->w == dialog_search) { + for (i = 0; i < MAX_PERSISTANT; i++) { + if (persistant_dialog[i].dialog == dialog_search) { + ro_gui_search_click(pointer, + persistant_dialog[i].parent); + break; + } + } + } } -- cgit v1.2.3