From ad1e5a3b6a708bac960111f9e9d63d18d2058df6 Mon Sep 17 00:00:00 2001 From: Christopher James Lahey Date: Tue, 4 Jun 2002 22:12:08 +0000 Subject: Added this function to let you disable the define views dialog. 2002-06-04 Christopher James Lahey * menus/gal-view-menus.c, menus/gal-view-menus.h (gal_view_menus_set_show_define_views): Added this function to let you disable the define views dialog. svn path=/trunk/; revision=17111 --- widgets/menus/gal-view-menus.c | 81 +++++++++++++++++++++++++++--------------- 1 file changed, 52 insertions(+), 29 deletions(-) (limited to 'widgets/menus/gal-view-menus.c') diff --git a/widgets/menus/gal-view-menus.c b/widgets/menus/gal-view-menus.c index 6e703c0cce..aa73e8ac32 100644 --- a/widgets/menus/gal-view-menus.c +++ b/widgets/menus/gal-view-menus.c @@ -32,6 +32,8 @@ struct _GalViewMenusPrivate { BonoboUIComponent *component; EList *listenerClosures; GtkWidget *define_views_dialog; + + guint show_define_views : 1; }; typedef struct { @@ -177,6 +179,7 @@ gvm_init (GalViewMenus *gvm) gvm->priv->component = NULL; gvm->priv->listenerClosures = NULL; gvm->priv->define_views_dialog = NULL; + gvm->priv->show_define_views = TRUE; } E_MAKE_TYPE(gal_view_menus, "GalViewMenus", GalViewMenus, gvm_class_init, gvm_init, PARENT_TYPE); @@ -337,47 +340,49 @@ build_menus(GalViewMenus *menus) closure_free (closure, menus); } - if (!found) { + if (menus->priv->show_define_views) { + if (!found) { - menuitem = bonobo_ui_node_new_child(submenu, "separator"); - bonobo_ui_node_set_attr(menuitem, "name", "GalView:first_sep"); - bonobo_ui_node_set_attr(menuitem, "f", ""); + menuitem = bonobo_ui_node_new_child(submenu, "separator"); + bonobo_ui_node_set_attr(menuitem, "name", "GalView:first_sep"); + bonobo_ui_node_set_attr(menuitem, "f", ""); - menuitem = bonobo_ui_node_new_child(submenu, "menuitem"); - bonobo_ui_node_set_attr(menuitem, "name", "custom_view"); - bonobo_ui_node_set_attr(menuitem, "id", "custom_view"); - bonobo_ui_node_set_attr(menuitem, "group", "GalViewMenus"); - bonobo_ui_node_set_attr(menuitem, "type", "radio"); - /* bonobo displays this string so it must be in locale */ - bonobo_ui_node_set_attr(menuitem, "_label", N_("Custom View")); + menuitem = bonobo_ui_node_new_child(submenu, "menuitem"); + bonobo_ui_node_set_attr(menuitem, "name", "custom_view"); + bonobo_ui_node_set_attr(menuitem, "id", "custom_view"); + bonobo_ui_node_set_attr(menuitem, "group", "GalViewMenus"); + bonobo_ui_node_set_attr(menuitem, "type", "radio"); + /* bonobo displays this string so it must be in locale */ + bonobo_ui_node_set_attr(menuitem, "_label", N_("Custom View")); - command = bonobo_ui_node_new_child (commands, "cmd"); - bonobo_ui_node_set_attr(command, "name", "custom_view"); - bonobo_ui_node_set_attr(command, "group", "GalViewMenus"); + command = bonobo_ui_node_new_child (commands, "cmd"); + bonobo_ui_node_set_attr(command, "name", "custom_view"); + bonobo_ui_node_set_attr(command, "group", "GalViewMenus"); + menuitem = bonobo_ui_node_new_child(submenu, "menuitem"); + bonobo_ui_node_set_attr(menuitem, "name", "SaveCurrentView"); + bonobo_ui_node_set_attr(menuitem, "_label", N_("Save Custom View")); + bonobo_ui_node_set_attr(menuitem, "verb", ""); + + command = bonobo_ui_node_new_child(commands, "cmd"); + bonobo_ui_node_set_attr(command, "name", "SaveCurrentView"); + } + + menuitem = bonobo_ui_node_new_child(submenu, "separator"); + bonobo_ui_node_set_attr(menuitem, "name", "GalView:second_sep"); + bonobo_ui_node_set_attr(menuitem, "f", ""); + menuitem = bonobo_ui_node_new_child(submenu, "menuitem"); - bonobo_ui_node_set_attr(menuitem, "name", "SaveCurrentView"); - bonobo_ui_node_set_attr(menuitem, "_label", N_("Save Custom View")); + bonobo_ui_node_set_attr(menuitem, "name", "DefineViews"); + bonobo_ui_node_set_attr(menuitem, "_label", N_("Define Views")); bonobo_ui_node_set_attr(menuitem, "verb", ""); command = bonobo_ui_node_new_child(commands, "cmd"); - bonobo_ui_node_set_attr(command, "name", "SaveCurrentView"); + bonobo_ui_node_set_attr(command, "name", "DefineViews"); } - menuitem = bonobo_ui_node_new_child(submenu, "separator"); - bonobo_ui_node_set_attr(menuitem, "name", "GalView:second_sep"); - bonobo_ui_node_set_attr(menuitem, "f", ""); - - menuitem = bonobo_ui_node_new_child(submenu, "menuitem"); - bonobo_ui_node_set_attr(menuitem, "name", "DefineViews"); - bonobo_ui_node_set_attr(menuitem, "_label", N_("Define Views")); - bonobo_ui_node_set_attr(menuitem, "verb", ""); - - command = bonobo_ui_node_new_child(commands, "cmd"); - bonobo_ui_node_set_attr(command, "name", "DefineViews"); - string = bonobo_ui_node_to_string(root, TRUE); xml = g_strdup(string); bonobo_ui_node_free_string(string); @@ -441,6 +446,24 @@ build_stuff (GalViewMenus *gvm, set_radio (gvm, ev); } +void +gal_view_menus_set_show_define_views (GalViewMenus *gvm, + gboolean show_define_views) +{ + if (gvm->priv->show_define_views == show_define_views) + return; + + gvm->priv->show_define_views = show_define_views; + + if (gvm->priv->component) { + CORBA_Environment ev; + + CORBA_exception_init (&ev); + build_stuff(gvm, &ev); + CORBA_exception_free (&ev); + } +} + void gal_view_menus_apply (GalViewMenus *gvm, BonoboUIComponent *component, -- cgit v1.2.3