diff options
author | Richard Wilson <rjw@netsurf-browser.org> | 2004-05-04 22:23:44 +0000 |
---|---|---|
committer | Richard Wilson <rjw@netsurf-browser.org> | 2004-05-04 22:23:44 +0000 |
commit | e7da747f5f51a71254113552087e07d67efe0851 (patch) | |
tree | a031b0e1683678fc4c6f4c95bc181a8b8429cb1f /riscos/menus.c | |
parent | 1692e9c33d59ba8794d134d5f40cdad9c1572522 (diff) | |
download | netsurf-e7da747f5f51a71254113552087e07d67efe0851.tar.gz netsurf-e7da747f5f51a71254113552087e07d67efe0851.tar.bz2 |
[project @ 2004-05-04 22:21:37 by rjw]
Revised GUI.
svn path=/import/netsurf/; revision=823
Diffstat (limited to 'riscos/menus.c')
-rw-r--r-- | riscos/menus.c | 349 |
1 files changed, 274 insertions, 75 deletions
diff --git a/riscos/menus.c b/riscos/menus.c index bff407067..a287dadba 100644 --- a/riscos/menus.c +++ b/riscos/menus.c @@ -26,8 +26,20 @@ #include "netsurf/utils/utils.h" +/* Menu index definitions used by menu decoding code so that entries can + be quickly commented out. Use -ve numbers below -1 to hide an entry. +*/ +#define MENU_PAGE 0 +#define MENU_OBJECT -2 +#define MENU_SELECTION -2 +#define MENU_NAVIGATE 1 +#define MENU_VIEW 2 +#define MENU_UTILITIES -2 +#define MENU_HELP 3 + static void translate_menu(wimp_menu *menu); static void ro_gui_menu_prepare_images(void); +static void ro_gui_menu_prepare_toolbars(void); static void ro_gui_menu_pageinfo(wimp_message_menu_warning *warning); @@ -36,13 +48,16 @@ static int current_menu_x, current_menu_y; gui_window *current_gui; -/* default menu item flags */ +/* Default menu item flags +*/ #define DEFAULT_FLAGS (wimp_ICON_TEXT | wimp_ICON_FILLED | \ (wimp_COLOUR_BLACK << wimp_ICON_FG_COLOUR_SHIFT) | \ (wimp_COLOUR_WHITE << wimp_ICON_BG_COLOUR_SHIFT)) -/* iconbar menu */ -wimp_menu *iconbar_menu = (wimp_menu *) & (wimp_MENU(4)) { + +/* Iconbar menu +*/ +wimp_menu *iconbar_menu = (wimp_menu *)&(wimp_MENU(4)) { { "NetSurf" }, 7,2,7,0, 200, 44, 0, { { 0, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "Info" } }, @@ -53,70 +68,149 @@ wimp_menu *iconbar_menu = (wimp_menu *) & (wimp_MENU(4)) { }; int iconbar_menu_height = 4 * 44; -/* browser window menu structure - based on Style Guide */ + +/* Export submenu +*/ static wimp_MENU(2) export_menu = { { "ExportAs" }, 7,2,7,0, 200, 44, 0, { - { wimp_MENU_GIVE_WARNING, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "Draw" } }, - { wimp_MENU_LAST | wimp_MENU_GIVE_WARNING, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "Text" } } + { wimp_MENU_GIVE_WARNING, (wimp_menu *)1, DEFAULT_FLAGS, { "Draw" } }, + { wimp_MENU_LAST | wimp_MENU_GIVE_WARNING, (wimp_menu *)1, DEFAULT_FLAGS, { "Text" } } } }; -static wimp_menu *browser_export_menu = (wimp_menu *) &export_menu; -static wimp_MENU(5) page_menu = { + +/* Page submenu +*/ +static wimp_MENU(7) page_menu = { { "Page" }, 7,2,7,0, 200, 44, 0, { - { wimp_MENU_GIVE_WARNING, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "PageInfo" } }, - { wimp_MENU_GIVE_WARNING, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "Save" } }, - { wimp_MENU_GIVE_WARNING, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "SaveComp" } }, - { 0, (wimp_menu *) &export_menu, DEFAULT_FLAGS, { "Export" } }, - { wimp_MENU_LAST, wimp_NO_SUB_MENU, DEFAULT_FLAGS | wimp_ICON_SHADED, { "Print" } } + { wimp_MENU_GIVE_WARNING, (wimp_menu *)1, DEFAULT_FLAGS, { "PageInfo" } }, + { wimp_MENU_GIVE_WARNING, (wimp_menu *)1, DEFAULT_FLAGS, { "Save" } }, + { wimp_MENU_GIVE_WARNING, (wimp_menu *)1, DEFAULT_FLAGS, { "SaveComp" } }, + { 0, (wimp_menu *)&export_menu, DEFAULT_FLAGS, { "Export" } }, + { wimp_MENU_GIVE_WARNING, (wimp_menu *)1, DEFAULT_FLAGS, { "SaveURL" } }, + { wimp_MENU_SEPARATE, wimp_NO_SUB_MENU, DEFAULT_FLAGS | wimp_ICON_SHADED, { "Print" } }, + { wimp_MENU_LAST, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "ViewSrc" } } + } +}; + + +/* Object export submenu +*/ +static wimp_MENU(2) object_export_menu = { + { "ExportAs" }, 7,2,7,0, 200, 44, 0, + { + { wimp_MENU_LAST | wimp_MENU_GIVE_WARNING, (wimp_menu *)1, DEFAULT_FLAGS, { "Sprite" } } } }; -static wimp_menu *browser_page_menu = (wimp_menu *) &page_menu; + +/* Object submenu +*/ +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_GIVE_WARNING | wimp_MENU_SEPARATE, (wimp_menu *)1, DEFAULT_FLAGS, { "SaveURL" } }, + { wimp_MENU_LAST, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "ObjReload" } } + } +}; + + +/* Selection submenu +*/ static wimp_MENU(3) selection_menu = { { "Selection" }, 7,2,7,0, 300, 44, 0, { - { 0, wimp_NO_SUB_MENU, DEFAULT_FLAGS | wimp_ICON_SHADED, { "Copy" } }, - { 0, wimp_NO_SUB_MENU, DEFAULT_FLAGS | wimp_ICON_SHADED, { "SelectAll" } }, - { wimp_MENU_LAST, wimp_NO_SUB_MENU, DEFAULT_FLAGS | wimp_ICON_SHADED, { "Clear" } } + { wimp_MENU_SEPARATE, wimp_NO_SUB_MENU, DEFAULT_FLAGS | wimp_ICON_SHADED, { "Copy" } }, + { 0, wimp_NO_SUB_MENU, DEFAULT_FLAGS | wimp_ICON_SHADED, { "SelectAll" } }, + { wimp_MENU_LAST, wimp_NO_SUB_MENU, DEFAULT_FLAGS | wimp_ICON_SHADED, { "Clear" } } } }; -static wimp_menu *browser_selection_menu = (wimp_menu *) &selection_menu; + +/* Navigate submenu +*/ static wimp_MENU(5) navigate_menu = { { "Navigate" }, 7,2,7,0, 300, 44, 0, { - { 0, wimp_NO_SUB_MENU, DEFAULT_FLAGS | wimp_ICON_SHADED, { "OpenURL" } }, - { 0, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "Home" } }, - { 0, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "Back" } }, - { 0, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "Forward" } }, - { wimp_MENU_LAST, wimp_NO_SUB_MENU, DEFAULT_FLAGS | wimp_ICON_SHADED, { "Reload" } } + { 0, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "Home" } }, + { 0, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "Back" } }, + { wimp_MENU_SEPARATE, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "Forward" } }, + { wimp_MENU_LAST, wimp_NO_SUB_MENU, DEFAULT_FLAGS | wimp_ICON_SHADED, { "Reload" } } } }; -static wimp_menu *browser_navigate_menu = (wimp_menu *) &navigate_menu; -static wimp_MENU(2) image_menu = { + +/* Image submenu +*/ +static wimp_MENU(5) image_menu = { { "Images" }, 7,2,7,0, 300, 44, 0, { - { 0, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "DitherImg" } }, - { wimp_MENU_LAST, wimp_NO_SUB_MENU, DEFAULT_FLAGS | wimp_ICON_SHADED, { "FilterImg" } } + { 0, wimp_NO_SUB_MENU, DEFAULT_FLAGS | wimp_ICON_SHADED, { "ForeImg" } }, + { 0, wimp_NO_SUB_MENU, DEFAULT_FLAGS | wimp_ICON_SHADED, { "BackImg" } }, + { wimp_MENU_SEPARATE, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "AnimImg" } }, + { 0, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "DitherImg" } }, + { wimp_MENU_LAST, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "FilterImg" } } } }; -static wimp_menu *browser_image_menu = (wimp_menu *) &image_menu; -static wimp_MENU(3) view_menu = { + +/* Toolbar submenu +*/ +static wimp_MENU(4) toolbar_menu = { + { "Toolbars" }, 7,2,7,0, 300, 44, 0, + { + { 0, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "ToolButtons" } }, + { 0, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "ToolAddress" } }, + { wimp_MENU_SEPARATE, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "ToolThrob" } }, + { wimp_MENU_LAST, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "ToolStatus" } } + } +}; + + +/* View submenu +*/ +static wimp_MENU(4) view_menu = { { "View" }, 7,2,7,0, 300, 44, 0, { - { 0, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "ScaleView" } }, - { wimp_MENU_SEPARATE | wimp_MENU_GIVE_WARNING, (wimp_menu *) &image_menu, DEFAULT_FLAGS, { "Images" } }, - { wimp_MENU_LAST, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "ViewSrc" } } + { wimp_MENU_GIVE_WARNING, (wimp_menu *)1, DEFAULT_FLAGS, { "ScaleView" } }, + { wimp_MENU_GIVE_WARNING, (wimp_menu *)&image_menu, DEFAULT_FLAGS, { "Images" } }, + { wimp_MENU_SEPARATE | wimp_MENU_GIVE_WARNING, (wimp_menu *)&toolbar_menu, DEFAULT_FLAGS, { "Toolbars" } }, + { wimp_MENU_LAST, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "OptDefault" } } } }; -static wimp_menu *browser_view_menu = (wimp_menu *) &view_menu; +/* Hotlist submenu +*/ +static wimp_MENU(2) hotlist_menu = { + { "Hotlist" }, 7,2,7,0, 300, 44, 0, + { + { 0, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "HotlistAdd" } }, + { wimp_MENU_LAST, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "HotlistShow" } } + } +}; + + +/* Utilities submenu +*/ +static wimp_MENU(4) utilities_menu = { + { "Utilities" }, 7,2,7,0, 300, 44, 0, + { + { wimp_MENU_SEPARATE, (wimp_menu *)&hotlist_menu, DEFAULT_FLAGS, { "Hotlist" } }, + { 0, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "FindText" } }, + { 0, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "HistLocal" } }, + { wimp_MENU_LAST, wimp_NO_SUB_MENU, DEFAULT_FLAGS, { "HistGlobal" } } + } +}; + + +/* Help submenu +*/ static wimp_MENU(4) help_menu = { { "Help" }, 7,2,7,0, 300, 44, 0, { @@ -126,22 +220,39 @@ static wimp_MENU(4) help_menu = { { wimp_MENU_LAST, wimp_NO_SUB_MENU, DEFAULT_FLAGS | wimp_ICON_SHADED, { "HelpInter" } } } }; -static wimp_menu *browser_help_menu = (wimp_menu *) &help_menu; +/* Main browser menu +*/ static wimp_MENU(5) menu = { { "NetSurf" }, 7,2,7,0, 200, 44, 0, { - { 0, (wimp_menu *) &page_menu, DEFAULT_FLAGS, { "Page" } }, - { wimp_MENU_SUB_MENU_WHEN_SHADED, (wimp_menu *) &selection_menu, DEFAULT_FLAGS | wimp_ICON_SHADED, { "Selection" } }, - { 0, (wimp_menu *) &navigate_menu, DEFAULT_FLAGS, { "Navigate" } }, - { 0, (wimp_menu *) &view_menu, DEFAULT_FLAGS, { "View" } }, - { wimp_MENU_LAST, (wimp_menu *) &help_menu, DEFAULT_FLAGS, { "Help" } } + { 0, (wimp_menu *)&page_menu, DEFAULT_FLAGS, { "Page" } }, +// { 0, (wimp_menu *)&object_menu, DEFAULT_FLAGS, { "Object" } }, +// { 0, (wimp_menu *)&selection_menu, DEFAULT_FLAGS, { "Selection" } }, + { 0, (wimp_menu *)&navigate_menu, DEFAULT_FLAGS, { "Navigate" } }, + { 0, (wimp_menu *)&view_menu, DEFAULT_FLAGS, { "View" } }, +// { 0, (wimp_menu *)&utilities_menu, DEFAULT_FLAGS, { "Utilities" } }, + { wimp_MENU_LAST, (wimp_menu *)&help_menu, DEFAULT_FLAGS, { "Help" } } } }; wimp_menu *browser_menu = (wimp_menu *) &menu; +static wimp_menu *browser_page_menu = (wimp_menu *)&page_menu; +static wimp_menu *browser_export_menu = (wimp_menu *)&export_menu; +static wimp_menu *browser_object_menu = (wimp_menu *)&object_menu; +static wimp_menu *browser_object_export_menu = (wimp_menu *)&object_export_menu; +static wimp_menu *browser_selection_menu = (wimp_menu *)&selection_menu; +static wimp_menu *browser_navigate_menu = (wimp_menu *)&navigate_menu; +static wimp_menu *browser_view_menu = (wimp_menu *)&view_menu; +static wimp_menu *browser_image_menu = (wimp_menu *)&image_menu; +static wimp_menu *browser_toolbar_menu = (wimp_menu *)&toolbar_menu; +static wimp_menu *browser_utilities_menu = (wimp_menu *)&utilities_menu; +static wimp_menu *browser_hotlist_menu = (wimp_menu *)&hotlist_menu; +static wimp_menu *browser_help_menu = (wimp_menu *)&help_menu; + + /** * Create menu structures. */ @@ -152,19 +263,24 @@ void ro_gui_menus_init(void) translate_menu(browser_menu); translate_menu(browser_page_menu); translate_menu(browser_export_menu); + translate_menu(browser_object_menu); + translate_menu(browser_object_export_menu); translate_menu(browser_selection_menu); translate_menu(browser_navigate_menu); translate_menu(browser_view_menu); translate_menu(browser_image_menu); + translate_menu(browser_toolbar_menu); + translate_menu(browser_utilities_menu); + translate_menu(browser_hotlist_menu); translate_menu(browser_help_menu); iconbar_menu->entries[0].sub_menu = (wimp_menu *) dialog_info; browser_page_menu->entries[0].sub_menu = (wimp_menu*) dialog_pageinfo; - browser_page_menu->entries[1].sub_menu = (wimp_menu *) dialog_saveas; - browser_page_menu->entries[2].sub_menu = (wimp_menu *) dialog_saveas; - browser_export_menu->entries[0].sub_menu = (wimp_menu *) dialog_saveas; - browser_export_menu->entries[1].sub_menu = (wimp_menu *) dialog_saveas; - browser_view_menu->entries[0].sub_menu = (wimp_menu *) dialog_zoom; +// browser_page_menu->entries[1].sub_menu = (wimp_menu *) dialog_saveas; +// browser_page_menu->entries[2].sub_menu = (wimp_menu *) dialog_saveas; +// browser_export_menu->entries[0].sub_menu = (wimp_menu *) dialog_saveas; +// browser_export_menu->entries[1].sub_menu = (wimp_menu *) dialog_saveas; +// browser_view_menu->entries[0].sub_menu = (wimp_menu *) dialog_zoom; } @@ -272,21 +388,26 @@ void ro_gui_menu_selection(wimp_selection *selection) } else if (current_menu == browser_menu) { struct content *c = current_gui->data.browser.bw->current_content; switch (selection->items[0]) { - case 0: /* Page -> */ + case MENU_PAGE: switch (selection->items[1]) { case 0: /* Info */ break; case 1: /* Save */ break; - case 2: /* Save complete */ + case 2: /* Full save */ break; case 3: /* Export */ break; - case 4: /* Print */ + case 4: /* Save location */ + break; + case 5: /* Print */ + break; + case 6: /* Page source */ + ro_gui_view_source(c); break; } break; - case 1: /* Selection -> */ + case MENU_SELECTION: switch (selection->items[1]) { case 0: /* Copy to clipboard */ ro_gui_copy_selection(current_gui); @@ -299,43 +420,72 @@ void ro_gui_menu_selection(wimp_selection *selection) break; } break; - case 2: /* Navigate -> */ + case MENU_NAVIGATE: switch (selection->items[1]) { - case 0: /* Open URL... */ - break; - case 1: /* Home */ + case 0: /* Home */ break; - case 2: /* Back */ + case 1: /* Back */ history_back(current_gui->data.browser.bw, current_gui->data.browser.bw->history); break; - case 3: /* Forward */ + case 2: /* Forward */ history_forward(current_gui->data.browser.bw, current_gui->data.browser.bw->history); break; - case 4: /* Reload */ + case 3: /* Reload */ break; } break; - case 3: /* View -> */ + case MENU_VIEW: switch (selection->items[1]) { case 0: /* Scale view */ break; case 1: /* Images -> */ - if (selection->items[2] == 0) option_dither_sprites = !option_dither_sprites; - if (selection->items[2] == 1) option_filter_sprites = !option_filter_sprites; - if (selection->items[2] >= 0) { + if (selection->items[2] == 2) current_gui->option_animate_images = + !current_gui->option_animate_images; + if (selection->items[2] == 3) current_gui->option_dither_sprites = + !current_gui->option_dither_sprites; + if (selection->items[2] == 4) current_gui->option_filter_sprites = + !current_gui->option_filter_sprites; + if (selection->items[2] >= 2) { ro_gui_menu_prepare_images(); -/* content_broadcast(c, CONTENT_MSG_REDRAW, 0); */ - + gui_window_redraw_window(current_gui); +// content_broadcast(c, CONTENT_MSG_REDRAW, 0); } break; - case 2: /* Page source */ - ro_gui_view_source(c); + case 2: /* Toolbars -> */ + switch (selection->items[2]) { + case 0: + current_gui->data.browser.toolbar->standard_buttons = + !current_gui->data.browser.toolbar->standard_buttons; + break; + case 1: + current_gui->data.browser.toolbar->url_bar = + !current_gui->data.browser.toolbar->url_bar; + break; + case 2: + current_gui->data.browser.toolbar->throbber = + !current_gui->data.browser.toolbar->throbber; + break; + case 3: + current_gui->data.browser.toolbar->status_window = + !current_gui->data.browser.toolbar->status_window; + } + if (ro_theme_update_toolbar(current_gui) || true) { + wimp_window_state state; + state.w = current_gui->window; + wimp_get_window_state(&state); + current_gui->data.browser.old_height = 0xffffffff; + ro_gui_window_open(current_gui, (wimp_open *)&state); + } + ro_gui_menu_prepare_toolbars(); + break; + case 3: /* Make default */ + gui_window_default_options(current_gui->data.browser.bw); break; } break; - case 4: /* Help -> */ + case MENU_HELP: switch (selection->items[1]) { case -1: /* No sub-item */ case 0: /* Contents */ @@ -373,11 +523,8 @@ void ro_gui_menu_warning(wimp_message_menu_warning *warning) struct content *c = current_gui->data.browser.bw->current_content; os_error *error = NULL; // No warnings -// if ((warning->selection.items[0] != 0) && (warning->selection.items[0] != 3)) -// return; - switch (warning->selection.items[0]) { - case 0: /* Page -> */ + case MENU_PAGE: /* Page -> */ switch (warning->selection.items[1]) { case 3: /* Export as -> */ switch (warning->selection.items[2]) { @@ -409,13 +556,23 @@ void ro_gui_menu_warning(wimp_message_menu_warning *warning) error = xwimp_create_sub_menu((wimp_menu *) dialog_saveas, warning->pos.x, warning->pos.y); break; - case 3: /* View -> */ + case MENU_VIEW: /* View -> */ switch (warning->selection.items[1]) { + case 0: /* Scale view -> */ + ro_gui_menu_prepare_scale(); + error = xwimp_create_sub_menu((wimp_menu *) dialog_zoom, + warning->pos.x, warning->pos.y); + break; case 1: /* Images -> */ ro_gui_menu_prepare_images(); error = xwimp_create_sub_menu(browser_image_menu, warning->pos.x, warning->pos.y); break; + case 2: /* Toolbars -> */ + ro_gui_menu_prepare_toolbars(); + error = xwimp_create_sub_menu(browser_toolbar_menu, + warning->pos.x, warning->pos.y); + break; } break; } @@ -473,22 +630,64 @@ void ro_gui_menu_prepare_save(struct content *c) ro_gui_set_icon_string(dialog_saveas, ICON_SAVE_PATH, name); } + /** * Update image menu status */ - static void ro_gui_menu_prepare_images(void) { if (current_menu != browser_menu) return; /* We don't currently have any local options so we update from the global ones */ - browser_image_menu->entries[0].menu_flags &= ~wimp_MENU_TICKED; - if (option_dither_sprites) browser_image_menu->entries[0].menu_flags |= wimp_MENU_TICKED; - browser_image_menu->entries[1].menu_flags &= ~wimp_MENU_TICKED; - if (option_filter_sprites) browser_image_menu->entries[1].menu_flags |= wimp_MENU_TICKED; + browser_image_menu->entries[2].menu_flags &= ~wimp_MENU_TICKED; + if (current_gui->option_animate_images) browser_image_menu->entries[2].menu_flags |= wimp_MENU_TICKED; + browser_image_menu->entries[3].menu_flags &= ~wimp_MENU_TICKED; + if (current_gui->option_dither_sprites) browser_image_menu->entries[3].menu_flags |= wimp_MENU_TICKED; + browser_image_menu->entries[4].menu_flags &= ~wimp_MENU_TICKED; + if (current_gui->option_filter_sprites) browser_image_menu->entries[4].menu_flags |= wimp_MENU_TICKED; +} + +/** + * Update toolbar menu status + */ +static void ro_gui_menu_prepare_toolbars(void) { + int index; + struct toolbar *toolbar; + if (current_menu != browser_menu) return; -// content_broadcast(c, CONTENT_MSG_REDRAW, 0); + /* Check we have a toolbar + */ + toolbar = current_gui->data.browser.toolbar; + + /* Set our ticks, or shade everything if there's no toolbar + */ + if (toolbar) { + for (index = 0; index < 4; index++) { + browser_toolbar_menu->entries[index].icon_flags &= ~wimp_ICON_SHADED; + browser_toolbar_menu->entries[index].menu_flags &= ~wimp_MENU_TICKED; + } + if (toolbar->standard_buttons) browser_toolbar_menu->entries[0].menu_flags |= wimp_MENU_TICKED; + if (toolbar->url_bar) browser_toolbar_menu->entries[1].menu_flags |= wimp_MENU_TICKED; + if (toolbar->throbber) browser_toolbar_menu->entries[2].menu_flags |= wimp_MENU_TICKED; + if (toolbar->status_window) browser_toolbar_menu->entries[3].menu_flags |= wimp_MENU_TICKED; + } else { + for (index = 0; index < 4; index++) { + browser_toolbar_menu->entries[index].icon_flags |= wimp_ICON_SHADED; + browser_toolbar_menu->entries[index].menu_flags &= ~wimp_MENU_TICKED; + } + } +} + + +/** + * Update scale to current document value + */ +void ro_gui_menu_prepare_scale(void) { + char scale_buffer[8]; + if (current_menu != browser_menu) return; + sprintf(scale_buffer, "%.0f", current_gui->scale * 100); + ro_gui_set_icon_string(dialog_zoom, ICON_ZOOM_VALUE, scale_buffer); } void ro_gui_menu_pageinfo(wimp_message_menu_warning *warning) |