diff options
author | John Mark Bell <jmb@netsurf-browser.org> | 2004-06-29 17:26:42 +0000 |
---|---|---|
committer | John Mark Bell <jmb@netsurf-browser.org> | 2004-06-29 17:26:42 +0000 |
commit | afd366ecae80b4edbe0c45b7ef528849b940ff39 (patch) | |
tree | 2eddd006b65fc839924abf3a262529ee3bc62d28 /riscos | |
parent | 6efe47b59dbb3b8c61938c8eaaf20ffe0ca5afe8 (diff) | |
download | netsurf-afd366ecae80b4edbe0c45b7ef528849b940ff39.tar.gz netsurf-afd366ecae80b4edbe0c45b7ef528849b940ff39.tar.bz2 |
[project @ 2004-06-29 17:26:42 by jmb]
Reinstate Object->reload menu entry and make it work.
svn path=/import/netsurf/; revision=1028
Diffstat (limited to 'riscos')
-rw-r--r-- | riscos/menus.c | 40 |
1 files changed, 27 insertions, 13 deletions
diff --git a/riscos/menus.c b/riscos/menus.c index 295d03d4c..b9fec20a9 100644 --- a/riscos/menus.c +++ b/riscos/menus.c @@ -47,6 +47,7 @@ static void ro_gui_menu_prepare_help(int forced); static void ro_gui_menu_pageinfo(wimp_message_menu_warning *warning); static void ro_gui_menu_objectinfo(wimp_message_menu_warning *warning); static struct box *ro_gui_menu_find_object_box(void); +static void ro_gui_menu_object_reload(void); wimp_menu *current_menu; static int current_menu_x, current_menu_y; @@ -123,14 +124,14 @@ static wimp_MENU(2) object_export_menu = { /* Object submenu */ -static wimp_MENU(4) object_menu = { +static wimp_MENU(5) object_menu = { { "Object" }, 7,2,7,0, 300, 44, 0, { { wimp_MENU_GIVE_WARNING, (wimp_menu *)1, DEFAULT_FLAGS, { "ObjInfo" } }, { wimp_MENU_GIVE_WARNING, (wimp_menu *)1, DEFAULT_FLAGS, { "ObjSave" } }, { 0, (wimp_menu *)&object_export_menu, DEFAULT_FLAGS, { "Export" } }, - { wimp_MENU_LAST /*wimp_MENU_SEPARATE*/, (wimp_menu *)&link_menu, DEFAULT_FLAGS, { "SaveURL" } }, -// { wimp_MENU_LAST, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "ObjReload" } } + { wimp_MENU_SEPARATE, (wimp_menu *)&link_menu, DEFAULT_FLAGS, { "SaveURL" } }, + { wimp_MENU_LAST, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "ObjReload" } } } }; @@ -480,6 +481,9 @@ void ro_gui_menu_selection(wimp_selection *selection) break; } break; + case 4: /* Reload */ + ro_gui_menu_object_reload(); + break; } break; case MENU_SELECTION: @@ -856,19 +860,19 @@ void ro_gui_prepare_navigate(gui_window *gui) { int menu_changed = 0; unsigned int i; wimp_selection selection; - + if (!gui) { LOG(("Attempt to update a NULL gui_window icon status")); return; } - + /* Get the data we need to work with */ bw = gui->data.browser.bw; h = bw->history; c = bw->current_content; t = gui->data.browser.toolbar; - + /* Get the initial menu state to check for changes */ if (update_menu) { @@ -890,7 +894,7 @@ void ro_gui_prepare_navigate(gui_window *gui) { if (history_forward_available(h)) { browser_navigate_menu->entries[2].icon_flags &= ~wimp_ICON_SHADED; } else { - browser_navigate_menu->entries[2].icon_flags |= wimp_ICON_SHADED; + browser_navigate_menu->entries[2].icon_flags |= wimp_ICON_SHADED; } } if (t) { @@ -901,7 +905,7 @@ void ro_gui_prepare_navigate(gui_window *gui) { !history_forward_available(h)); ro_gui_set_icon_shaded_state(t->toolbar_handle, ICON_TOOLBAR_HISTORY, false); } else { - + ro_gui_set_icon_shaded_state(t->toolbar_handle, ICON_TOOLBAR_BACK, true); ro_gui_set_icon_shaded_state(t->toolbar_handle, ICON_TOOLBAR_FORWARD, true); ro_gui_set_icon_shaded_state(t->toolbar_handle, ICON_TOOLBAR_HISTORY, true); @@ -926,7 +930,7 @@ void ro_gui_prepare_navigate(gui_window *gui) { ro_gui_set_icon_shaded_state(t->toolbar_handle, ICON_TOOLBAR_STOP, true); } - + /* Check if we've changed our menu state */ if (update_menu) { @@ -935,7 +939,7 @@ void ro_gui_prepare_navigate(gui_window *gui) { menu_changed -= (1 << i); } } - + /* Re-open the submenu */ if (menu_changed != 0) { @@ -944,7 +948,7 @@ void ro_gui_prepare_navigate(gui_window *gui) { if (selection.items[0] == MENU_NAVIGATE) { ro_gui_create_menu(current_menu, 0, 0, current_gui); } - + } } } @@ -982,7 +986,7 @@ static void ro_gui_menu_prepare_window(void) { if ((option_window_screen_width != 0) && (option_window_screen_height != 0)) { browser_window_menu->entries[1].icon_flags &= ~wimp_ICON_SHADED; browser_window_menu->entries[3].icon_flags &= ~wimp_ICON_SHADED; - + /* Check if we are staggered */ if (option_window_stagger) { @@ -995,7 +999,7 @@ static void ro_gui_menu_prepare_window(void) { browser_window_menu->entries[1].icon_flags |= wimp_ICON_SHADED; browser_window_menu->entries[3].icon_flags |= wimp_ICON_SHADED; } - + /* Set if we are cloing the window size */ if (option_window_size_clone) { @@ -1171,3 +1175,13 @@ struct box *ro_gui_menu_find_object_box(void) return box; } +void ro_gui_menu_object_reload(void) +{ + struct box *box = ro_gui_menu_find_object_box(); + + if (box) { + box->object->fresh = false; + browser_window_reload(current_gui->data.browser.bw); + } +} + |