diff options
author | Christian Persch <chpe@cvs.gnome.org> | 2005-01-05 05:31:06 +0800 |
---|---|---|
committer | Christian Persch <chpe@src.gnome.org> | 2005-01-05 05:31:06 +0800 |
commit | c22cb479dbb9879f1b153f391b57e972f53c1b9f (patch) | |
tree | ea08d36b6d6d04b04ea3edca057831c33f3d2cf7 /src/bookmarks/ephy-bookmarks-editor.c | |
parent | af3fc43e417a96bc31b5bda39153980486da1ca9 (diff) | |
download | gsoc2013-epiphany-c22cb479dbb9879f1b153f391b57e972f53c1b9f.tar gsoc2013-epiphany-c22cb479dbb9879f1b153f391b57e972f53c1b9f.tar.gz gsoc2013-epiphany-c22cb479dbb9879f1b153f391b57e972f53c1b9f.tar.bz2 gsoc2013-epiphany-c22cb479dbb9879f1b153f391b57e972f53c1b9f.tar.lz gsoc2013-epiphany-c22cb479dbb9879f1b153f391b57e972f53c1b9f.tar.xz gsoc2013-epiphany-c22cb479dbb9879f1b153f391b57e972f53c1b9f.tar.zst gsoc2013-epiphany-c22cb479dbb9879f1b153f391b57e972f53c1b9f.zip |
Use ngettext to get the Open in New Tab[s]/Window[s] label.
2005-01-04 Christian Persch <chpe@cvs.gnome.org>
* lib/widgets/ephy-node-view.c:
* lib/widgets/ephy-node-view.h:
* src/bookmarks/ephy-bookmarks-editor.c:
(ephy_bookmarks_editor_update_menu):
* src/ephy-history-window.c: (ephy_history_window_update_menu):
Use ngettext to get the Open in New Tab[s]/Window[s] label.
2005-01-04 Christian Persch <chpe@cvs.gnome.org>
Diffstat (limited to 'src/bookmarks/ephy-bookmarks-editor.c')
-rw-r--r-- | src/bookmarks/ephy-bookmarks-editor.c | 53 |
1 files changed, 26 insertions, 27 deletions
diff --git a/src/bookmarks/ephy-bookmarks-editor.c b/src/bookmarks/ephy-bookmarks-editor.c index 947d31911..e7cfb6b38 100644 --- a/src/bookmarks/ephy-bookmarks-editor.c +++ b/src/bookmarks/ephy-bookmarks-editor.c @@ -1069,15 +1069,15 @@ ephy_bookmarks_editor_update_menu (EphyBookmarksEditor *editor) rename, delete, properties; const gchar *open_in_window_label, *open_in_tab_label, *copy_label; gboolean bmk_focus, key_focus; - gboolean key_selection, bmk_selection; + gboolean key_selection, bmk_selection, single_bmk_selected; gboolean key_normal = FALSE; - gboolean bmk_multiple_selection; gboolean cut, copy, paste, select_all; gboolean can_show_in_bookmarks_bar, show_in_bookmarks_bar = FALSE; GtkActionGroup *action_group; GtkAction *action; GList *selected; GtkWidget *focus_widget; + int num_bmk_selected; LOG ("Update menu sensitivity") @@ -1086,11 +1086,14 @@ ephy_bookmarks_editor_update_menu (EphyBookmarksEditor *editor) key_focus = ephy_node_view_is_target (EPHY_NODE_VIEW (editor->priv->key_view)); focus_widget = gtk_window_get_focus (GTK_WINDOW (editor)); - bmk_selection = ephy_node_view_has_selection - (EPHY_NODE_VIEW (editor->priv->bm_view), - &bmk_multiple_selection); - key_selection = ephy_node_view_has_selection - (EPHY_NODE_VIEW (editor->priv->key_view), NULL); + + num_bmk_selected = gtk_tree_selection_count_selected_rows + (gtk_tree_view_get_selection (GTK_TREE_VIEW (editor->priv->bm_view))); + bmk_selection = num_bmk_selected > 0; + single_bmk_selected = num_bmk_selected == 1; + + key_selection = gtk_tree_selection_count_selected_rows + (gtk_tree_view_get_selection (GTK_TREE_VIEW (editor->priv->key_view))) > 0; if (GTK_IS_EDITABLE (focus_widget)) { @@ -1107,7 +1110,7 @@ ephy_bookmarks_editor_update_menu (EphyBookmarksEditor *editor) else { cut = FALSE; - copy = (bmk_focus && !bmk_multiple_selection && bmk_selection); + copy = (bmk_focus && single_bmk_selected); paste = FALSE; select_all = bmk_focus; } @@ -1146,16 +1149,12 @@ ephy_bookmarks_editor_update_menu (EphyBookmarksEditor *editor) g_list_free (selected); } - if (bmk_multiple_selection) - { - open_in_window_label = N_("_Open in New Windows"); - open_in_tab_label = N_("Open in New _Tabs"); - } - else - { - open_in_window_label = _("_Open in New Window"); - open_in_tab_label = _("Open in New _Tab"); - } + open_in_window_label = ngettext ("_Open in New Window", + "_Open in New Windows", + num_bmk_selected); + open_in_tab_label = ngettext ("Open in New _Tab", + "Open in New _Tabs", + num_bmk_selected); if (bmk_focus) { @@ -1168,21 +1167,21 @@ ephy_bookmarks_editor_update_menu (EphyBookmarksEditor *editor) open_in_window = (bmk_focus && bmk_selection); open_in_tab = (bmk_focus && bmk_selection); - rename = (bmk_focus && bmk_selection && !bmk_multiple_selection) || + rename = (bmk_focus && single_bmk_selected) || (key_selection && key_focus && key_normal); delete = (bmk_focus && bmk_selection) || (key_selection && key_focus && key_normal); - properties = (bmk_focus && bmk_selection && !bmk_multiple_selection); - can_show_in_bookmarks_bar = (bmk_focus && bmk_selection && !bmk_multiple_selection) || + properties = (bmk_focus && single_bmk_selected); + can_show_in_bookmarks_bar = (bmk_focus && single_bmk_selected) || (key_selection && key_focus); action_group = editor->priv->action_group; action = gtk_action_group_get_action (action_group, "OpenInWindow"); - g_object_set (action, "sensitive", open_in_window, NULL); - g_object_set (action, "label", open_in_window_label, NULL); + g_object_set (action, "sensitive", open_in_window, + "label", open_in_window_label, NULL); action = gtk_action_group_get_action (action_group, "OpenInTab"); - g_object_set (action, "sensitive", open_in_tab, NULL); - g_object_set (action, "label", open_in_tab_label, NULL); + g_object_set (action, "sensitive", open_in_tab, + "label", open_in_tab_label, NULL); action = gtk_action_group_get_action (action_group, "Rename"); g_object_set (action, "sensitive", rename, NULL); action = gtk_action_group_get_action (action_group, "Delete"); @@ -1192,8 +1191,8 @@ ephy_bookmarks_editor_update_menu (EphyBookmarksEditor *editor) action = gtk_action_group_get_action (action_group, "Cut"); g_object_set (action, "sensitive", cut, NULL); action = gtk_action_group_get_action (action_group, "Copy"); - g_object_set (action, "sensitive", copy, NULL); - g_object_set (action, "label", copy_label, NULL); + g_object_set (action, "sensitive", copy, + "label", copy_label, NULL); action = gtk_action_group_get_action (action_group, "Paste"); g_object_set (action, "sensitive", paste, NULL); action = gtk_action_group_get_action (action_group, "SelectAll"); |