GtkActionGroup * nautilus_window_create_toolbar_action_group (NautilusWindow *window) { NautilusNavigationState *navigation_state; GtkActionGroup *action_group; GtkAction *action; action_group = gtk_action_group_new ("ToolbarActions"); gtk_action_group_set_translation_domain (action_group, GETTEXT_PACKAGE); action = g_object_new (NAUTILUS_TYPE_NAVIGATION_ACTION, "name", NAUTILUS_ACTION_BACK, "label", _("_Back"), "stock_id", GTK_STOCK_GO_BACK, "tooltip", _("Go to the previous visited location"), "arrow-tooltip", _("Back history"), "window", window, "direction", NAUTILUS_NAVIGATION_DIRECTION_BACK, "sensitive", FALSE, NULL); g_signal_connect (action, "activate", G_CALLBACK (action_back_callback), window); gtk_action_group_add_action (action_group, action); g_object_unref (action); action = g_object_new (NAUTILUS_TYPE_NAVIGATION_ACTION, "name", NAUTILUS_ACTION_FORWARD, "label", _("_Forward"), "stock_id", GTK_STOCK_GO_FORWARD, "tooltip", _("Go to the next visited location"), "arrow-tooltip", _("Forward history"), "window", window, "direction", NAUTILUS_NAVIGATION_DIRECTION_FORWARD, "sensitive", FALSE, NULL); g_signal_connect (action, "activate", G_CALLBACK (action_forward_callback), window); gtk_action_group_add_action (action_group, action); g_object_unref (action); action = GTK_ACTION (gtk_toggle_action_new (NAUTILUS_ACTION_SEARCH, _("Search"), _("Search documents and folders by name"), NULL)); gtk_action_group_add_action (action_group, action); gtk_action_set_icon_name (GTK_ACTION (action), "edit-find-symbolic"); gtk_action_set_is_important (GTK_ACTION (action), TRUE); g_object_unref (action); navigation_state = nautilus_window_get_navigation_state (window); nautilus_navigation_state_add_group (navigation_state, action_group); return action_group; }
static void gtk_action_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) { GtkAction *action; action = GTK_ACTION (object); switch (prop_id) { case PROP_NAME: action->private_data->name = g_intern_string (g_value_get_string (value)); break; case PROP_LABEL: gtk_action_set_label (action, g_value_get_string (value)); break; case PROP_SHORT_LABEL: gtk_action_set_short_label (action, g_value_get_string (value)); break; case PROP_TOOLTIP: gtk_action_set_tooltip (action, g_value_get_string (value)); break; case PROP_STOCK_ID: gtk_action_set_stock_id (action, g_value_get_string (value)); break; case PROP_GICON: gtk_action_set_gicon (action, g_value_get_object (value)); break; case PROP_ICON_NAME: gtk_action_set_icon_name (action, g_value_get_string (value)); break; case PROP_VISIBLE_HORIZONTAL: gtk_action_set_visible_horizontal (action, g_value_get_boolean (value)); break; case PROP_VISIBLE_VERTICAL: gtk_action_set_visible_vertical (action, g_value_get_boolean (value)); break; case PROP_VISIBLE_OVERFLOWN: action->private_data->visible_overflown = g_value_get_boolean (value); break; case PROP_IS_IMPORTANT: gtk_action_set_is_important (action, g_value_get_boolean (value)); break; case PROP_HIDE_IF_EMPTY: action->private_data->hide_if_empty = g_value_get_boolean (value); break; case PROP_SENSITIVE: gtk_action_set_sensitive (action, g_value_get_boolean (value)); break; case PROP_VISIBLE: gtk_action_set_visible (action, g_value_get_boolean (value)); break; case PROP_ACTION_GROUP: gtk_action_set_action_group (action, g_value_get_object (value)); break; case PROP_ALWAYS_SHOW_IMAGE: gtk_action_set_always_show_image (action, g_value_get_boolean (value)); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; } }
GtkActionGroup * nemo_window_create_toolbar_action_group (NemoWindow *window) { gboolean show_label_search_icon_toolbar; NemoNavigationState *navigation_state; GtkActionGroup *action_group; GtkAction *action; action_group = gtk_action_group_new ("ToolbarActions"); gtk_action_group_set_translation_domain (action_group, GETTEXT_PACKAGE); action = g_object_new (NEMO_TYPE_NAVIGATION_ACTION, "name", NEMO_ACTION_BACK, "label", _("_Back"), "stock_id", GTK_STOCK_GO_BACK, "tooltip", _("Go to the previous visited location"), "arrow-tooltip", _("Back history"), "window", window, "direction", NEMO_NAVIGATION_DIRECTION_BACK, "sensitive", FALSE, NULL); g_signal_connect (action, "activate", G_CALLBACK (action_back_callback), window); gtk_action_group_add_action (action_group, action); g_object_unref (action); action = g_object_new (NEMO_TYPE_NAVIGATION_ACTION, "name", NEMO_ACTION_FORWARD, "label", _("_Forward"), "stock_id", GTK_STOCK_GO_FORWARD, "tooltip", _("Go to the next visited location"), "arrow-tooltip", _("Forward history"), "window", window, "direction", NEMO_NAVIGATION_DIRECTION_FORWARD, "sensitive", FALSE, NULL); g_signal_connect (action, "activate", G_CALLBACK (action_forward_callback), window); gtk_action_group_add_action (action_group, action); g_object_unref (action); /** * Nemo 2.30/2.32 type actions */ action = g_object_new (NEMO_TYPE_NAVIGATION_ACTION, "name", NEMO_ACTION_UP, "label", _("_Up"), "stock_id", GTK_STOCK_GO_UP, "tooltip", _("Go to parent folder"), "arrow-tooltip", _("Forward history"), "window", window, "direction", NEMO_NAVIGATION_DIRECTION_UP, NULL); g_signal_connect (action, "activate", G_CALLBACK (action_up_callback), window); gtk_action_group_add_action (action_group, action); g_object_unref (action); action = g_object_new (NEMO_TYPE_NAVIGATION_ACTION, "name", NEMO_ACTION_RELOAD, "label", _("_Reload"), "stock_id", GTK_STOCK_REFRESH, "tooltip", _("Reload the current location"), "window", window, "direction", NEMO_NAVIGATION_DIRECTION_RELOAD, NULL); g_signal_connect (action, "activate", G_CALLBACK (action_reload_callback), window); gtk_action_group_add_action (action_group, action); g_object_unref (action); action = g_object_new (NEMO_TYPE_NAVIGATION_ACTION, "name", NEMO_ACTION_HOME, "label", _("_Home"), "stock_id", GTK_STOCK_HOME, "tooltip", _("Go to home directory"), "window", window, "direction", NEMO_NAVIGATION_DIRECTION_HOME, NULL); g_signal_connect (action, "activate", G_CALLBACK (action_home_callback), window); gtk_action_group_add_action (action_group, action); g_object_unref (action); action = g_object_new (NEMO_TYPE_NAVIGATION_ACTION, "name", NEMO_ACTION_COMPUTER, "label", _("_Computer"), "icon_name", "computer", "tooltip", _("Go to Computer"), "window", window, "direction", NEMO_NAVIGATION_DIRECTION_COMPUTER, NULL); g_signal_connect (action, "activate", G_CALLBACK (action_go_to_computer_callback), window); gtk_action_group_add_action (action_group, action); g_object_unref (action); action = g_object_new (NEMO_TYPE_NAVIGATION_ACTION, "name", NEMO_ACTION_EDIT_LOCATION, "label", _("Location"), "stock_id", GTK_STOCK_EDIT, "tooltip", _("Toggle Location bar / Path bar"), "window", window, "direction", NEMO_NAVIGATION_DIRECTION_EDIT, NULL); g_signal_connect (action, "activate", G_CALLBACK (action_edit_location_callback), window); gtk_action_group_add_action (action_group, action); g_object_unref (action); action = GTK_ACTION (gtk_toggle_action_new (NEMO_ACTION_SEARCH, _("Search"),_("Search documents and folders by name"), NULL)); gtk_action_group_add_action (action_group, action); gtk_action_set_icon_name (GTK_ACTION (action), "edit-find"); show_label_search_icon_toolbar = g_settings_get_boolean (nemo_preferences, NEMO_PREFERENCES_SHOW_LABEL_SEARCH_ICON_TOOLBAR); gtk_action_set_is_important (GTK_ACTION (action), show_label_search_icon_toolbar); g_object_unref (action); navigation_state = nemo_window_get_navigation_state (window); nemo_navigation_state_add_group (navigation_state, action_group); return action_group; }