static void photos_selection_toolbar_init (PhotosSelectionToolbar *self) { PhotosSelectionToolbarPrivate *priv; GtkWidget *toolbar; self->priv = photos_selection_toolbar_get_instance_private (self); priv = self->priv; priv->item_listeners = g_hash_table_new_full (g_direct_hash, g_direct_equal, NULL, g_object_unref); toolbar = gtk_action_bar_new (); gtk_container_add (GTK_CONTAINER (self), toolbar); priv->toolbar_favorite = gd_header_toggle_button_new (); gd_header_button_set_symbolic_icon_name (GD_HEADER_BUTTON (priv->toolbar_favorite), PHOTOS_ICON_FAVORITE_SYMBOLIC); gtk_action_bar_pack_start (GTK_ACTION_BAR (toolbar), priv->toolbar_favorite); g_signal_connect (priv->toolbar_favorite, "clicked", G_CALLBACK (photos_selection_toolbar_favorite_clicked), self); priv->toolbar_open = gd_header_simple_button_new (); gd_header_button_set_label (GD_HEADER_BUTTON (priv->toolbar_open), _("Open")); gtk_action_bar_pack_start (GTK_ACTION_BAR (toolbar), priv->toolbar_open); g_signal_connect (priv->toolbar_open, "clicked", G_CALLBACK (photos_selection_toolbar_open_clicked), self); priv->toolbar_print = gd_header_simple_button_new (); gd_header_button_set_label (GD_HEADER_BUTTON (priv->toolbar_print), _("Print")); gtk_action_bar_pack_start (GTK_ACTION_BAR (toolbar), priv->toolbar_print); g_signal_connect (priv->toolbar_print, "clicked", G_CALLBACK (photos_selection_toolbar_print_clicked), self); priv->toolbar_trash = gd_header_simple_button_new (); gd_header_button_set_label (GD_HEADER_BUTTON (priv->toolbar_trash), _("Delete")); gtk_action_bar_pack_start (GTK_ACTION_BAR (toolbar), priv->toolbar_trash); g_signal_connect (priv->toolbar_trash, "clicked", G_CALLBACK (photos_selection_toolbar_trash_clicked), self); priv->toolbar_properties = gd_header_simple_button_new (); gd_header_button_set_label (GD_HEADER_BUTTON (priv->toolbar_properties), _("Properties")); gtk_action_bar_pack_end (GTK_ACTION_BAR (toolbar), priv->toolbar_properties); g_signal_connect (priv->toolbar_properties, "clicked", G_CALLBACK (photos_selection_toolbar_properties_clicked), self); priv->toolbar_collection = gd_header_simple_button_new (); gd_header_button_set_label (GD_HEADER_BUTTON (priv->toolbar_collection), _("Add to Album")); gtk_action_bar_pack_end (GTK_ACTION_BAR (toolbar), priv->toolbar_collection); g_signal_connect (priv->toolbar_collection, "clicked", G_CALLBACK (photos_selection_toolbar_collection_clicked), self); gtk_widget_show_all (GTK_WIDGET (self)); priv->item_mngr = photos_item_manager_dup_singleton (); priv->sel_cntrlr = photos_selection_controller_dup_singleton (); g_signal_connect (priv->sel_cntrlr, "selection-changed", G_CALLBACK (photos_selection_toolbar_selection_changed), self); g_signal_connect (priv->sel_cntrlr, "selection-mode-changed", G_CALLBACK (photos_selection_toolbar_selection_mode_changed), self); }
static void photos_selection_toolbar_init (PhotosSelectionToolbar *self) { PhotosSelectionToolbarPrivate *priv; GApplication *app; GtkWidget *toolbar; PhotosSearchContextState *state; self->priv = photos_selection_toolbar_get_instance_private (self); priv = self->priv; app = g_application_get_default (); state = photos_search_context_get_state (PHOTOS_SEARCH_CONTEXT (app)); priv->item_listeners = g_hash_table_new_full (g_direct_hash, g_direct_equal, NULL, g_object_unref); toolbar = gtk_action_bar_new (); gtk_container_add (GTK_CONTAINER (self), toolbar); priv->toolbar_favorite = gtk_button_new (); gtk_action_bar_pack_start (GTK_ACTION_BAR (toolbar), priv->toolbar_favorite); g_signal_connect (priv->toolbar_favorite, "clicked", G_CALLBACK (photos_selection_toolbar_favorite_clicked), self); priv->toolbar_open = gtk_button_new_with_label (_("Open")); gtk_action_bar_pack_start (GTK_ACTION_BAR (toolbar), priv->toolbar_open); g_signal_connect (priv->toolbar_open, "clicked", G_CALLBACK (photos_selection_toolbar_open_clicked), self); priv->toolbar_print = gtk_button_new_with_label (_("Print")); gtk_action_bar_pack_start (GTK_ACTION_BAR (toolbar), priv->toolbar_print); g_signal_connect (priv->toolbar_print, "clicked", G_CALLBACK (photos_selection_toolbar_print_clicked), self); priv->toolbar_trash = gtk_button_new_with_label (_("Delete")); gtk_action_bar_pack_start (GTK_ACTION_BAR (toolbar), priv->toolbar_trash); g_signal_connect (priv->toolbar_trash, "clicked", G_CALLBACK (photos_selection_toolbar_trash_clicked), self); priv->toolbar_properties = gtk_button_new_with_label (_("Properties")); gtk_action_bar_pack_end (GTK_ACTION_BAR (toolbar), priv->toolbar_properties); g_signal_connect (priv->toolbar_properties, "clicked", G_CALLBACK (photos_selection_toolbar_properties_clicked), self); priv->toolbar_collection = gtk_button_new_with_label (_("Add to Album")); gtk_action_bar_pack_end (GTK_ACTION_BAR (toolbar), priv->toolbar_collection); g_signal_connect (priv->toolbar_collection, "clicked", G_CALLBACK (photos_selection_toolbar_collection_clicked), self); gtk_widget_show_all (GTK_WIDGET (self)); priv->item_mngr = g_object_ref (state->item_mngr); priv->sel_cntrlr = photos_selection_controller_dup_singleton (); g_signal_connect (priv->sel_cntrlr, "selection-changed", G_CALLBACK (photos_selection_toolbar_selection_changed), self); g_signal_connect (priv->sel_cntrlr, "selection-mode-changed", G_CALLBACK (photos_selection_toolbar_selection_mode_changed), self); }