[gnome-photos] selection-toolbar: Port to templates
- From: Debarshi Ray <debarshir src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-photos] selection-toolbar: Port to templates
- Date: Mon, 30 Nov 2015 15:23:43 +0000 (UTC)
commit 5a7831dc1b641b2ee66722109f58e8069ac5cc1c
Author: Alessandro Bono <abono gnome org>
Date: Sun Nov 29 18:10:44 2015 +0100
selection-toolbar: Port to templates
https://bugzilla.gnome.org/show_bug.cgi?id=758809
po/POTFILES.in | 1 +
src/Makefile.am | 1 +
src/photos-selection-toolbar.c | 60 +++++++++------------------------
src/photos-selection-toolbar.ui | 71 +++++++++++++++++++++++++++++++++++++++
src/photos.gresource.xml | 1 +
5 files changed, 90 insertions(+), 44 deletions(-)
---
diff --git a/po/POTFILES.in b/po/POTFILES.in
index a447d46..c809317 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -30,6 +30,7 @@ src/photos-search-match-manager.c
src/photos-search-type-manager.c
[type: gettext/glade]src/photos-selection-menu.ui
src/photos-selection-toolbar.c
+[type: gettext/glade]src/photos-selection-toolbar.ui
src/photos-source-manager.c
src/photos-spinner-box.c
src/photos-tool-colors.c
diff --git a/src/Makefile.am b/src/Makefile.am
index fff4154..5bd946b 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -248,6 +248,7 @@ EXTRA_DIST = \
photos-menus.ui \
photos-preview-menu.ui \
photos-selection-menu.ui \
+ photos-selection-toolbar.ui \
photos-gom-miner.xml \
photos-tracker-extract-priority.xml \
photos-tracker-resources.xml \
diff --git a/src/photos-selection-toolbar.c b/src/photos-selection-toolbar.c
index bc73e87..bb7c686 100644
--- a/src/photos-selection-toolbar.c
+++ b/src/photos-selection-toolbar.c
@@ -1,5 +1,6 @@
/*
* Photos - access, organize and share your photos on GNOME
+ * Copyright © 2015 Alessandro Bono
* Copyright © 2014 Pranav Kant
* Copyright © 2012, 2013, 2014, 2015 Red Hat, Inc.
*
@@ -443,50 +444,7 @@ photos_selection_toolbar_init (PhotosSelectionToolbar *self)
priv->item_listeners = g_hash_table_new_full (g_direct_hash, g_direct_equal, NULL, g_object_unref);
- priv->toolbar_favorite = gtk_button_new ();
- gtk_widget_show (GTK_WIDGET (priv->toolbar_favorite));
- gtk_action_bar_pack_start (GTK_ACTION_BAR (self), 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_widget_show (GTK_WIDGET (priv->toolbar_open));
- gtk_action_bar_pack_start (GTK_ACTION_BAR (self), 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_widget_show (GTK_WIDGET (priv->toolbar_print));
- gtk_action_bar_pack_start (GTK_ACTION_BAR (self), 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_widget_show (GTK_WIDGET (priv->toolbar_trash));
- gtk_actionable_set_action_name (GTK_ACTIONABLE (priv->toolbar_trash), "app.delete");
- gtk_action_bar_pack_start (GTK_ACTION_BAR (self), priv->toolbar_trash);
-
- priv->toolbar_properties = gtk_button_new_with_label (_("Properties"));
- gtk_widget_show (GTK_WIDGET (priv->toolbar_properties));
- gtk_action_bar_pack_end (GTK_ACTION_BAR (self), 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_widget_show (GTK_WIDGET (priv->toolbar_collection));
- gtk_action_bar_pack_end (GTK_ACTION_BAR (self), priv->toolbar_collection);
- g_signal_connect (priv->toolbar_collection,
- "clicked",
- G_CALLBACK (photos_selection_toolbar_collection_clicked),
- self);
+ gtk_widget_init_template (GTK_WIDGET (self));
priv->item_mngr = g_object_ref (state->item_mngr);
@@ -515,8 +473,22 @@ static void
photos_selection_toolbar_class_init (PhotosSelectionToolbarClass *class)
{
GObjectClass *object_class = G_OBJECT_CLASS (class);
+ GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (class);
object_class->dispose = photos_selection_toolbar_dispose;
+
+ gtk_widget_class_set_template_from_resource (widget_class, "/org/gnome/Photos/selection-toolbar.ui");
+ gtk_widget_class_bind_template_child_private (widget_class, PhotosSelectionToolbar, toolbar_favorite);
+ gtk_widget_class_bind_template_child_private (widget_class, PhotosSelectionToolbar, toolbar_open);
+ gtk_widget_class_bind_template_child_private (widget_class, PhotosSelectionToolbar, toolbar_print);
+ gtk_widget_class_bind_template_child_private (widget_class, PhotosSelectionToolbar, toolbar_trash);
+ gtk_widget_class_bind_template_child_private (widget_class, PhotosSelectionToolbar, toolbar_properties);
+ gtk_widget_class_bind_template_child_private (widget_class, PhotosSelectionToolbar, toolbar_collection);
+ gtk_widget_class_bind_template_callback (widget_class, photos_selection_toolbar_favorite_clicked);
+ gtk_widget_class_bind_template_callback (widget_class, photos_selection_toolbar_open_clicked);
+ gtk_widget_class_bind_template_callback (widget_class, photos_selection_toolbar_print_clicked);
+ gtk_widget_class_bind_template_callback (widget_class, photos_selection_toolbar_properties_clicked);
+ gtk_widget_class_bind_template_callback (widget_class, photos_selection_toolbar_collection_clicked);
}
diff --git a/src/photos-selection-toolbar.ui b/src/photos-selection-toolbar.ui
new file mode 100644
index 0000000..093e784
--- /dev/null
+++ b/src/photos-selection-toolbar.ui
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface domain="gnome-photos">
+ <!-- interface-requires gtk+ 3.11 -->
+ <template class="PhotosSelectionToolbar" parent="GtkActionBar">
+ <property name="visible">0</property>
+ <child>
+ <object class="GtkButton" id="toolbar_favorite">
+ <property name="visible">1</property>
+ <signal name="clicked" object="PhotosSelectionToolbar" swapped="no"
+ handler="photos_selection_toolbar_favorite_clicked" />
+ </object>
+ <packing>
+ <property name="pack_type">start</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="toolbar_open">
+ <property name="visible">1</property>
+ <property name="label" translatable="yes">Open</property>
+ <signal name="clicked" object="PhotosSelectionToolbar" swapped="no"
+ handler="photos_selection_toolbar_open_clicked" />
+ </object>
+ <packing>
+ <property name="pack_type">start</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="toolbar_print">
+ <property name="visible">1</property>
+ <property name="label" translatable="yes">Print</property>
+ <signal name="clicked" object="PhotosSelectionToolbar" swapped="no"
+ handler="photos_selection_toolbar_print_clicked" />
+ </object>
+ <packing>
+ <property name="pack_type">start</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="toolbar_trash">
+ <property name="visible">1</property>
+ <property name="label" translatable="yes">Delete</property>
+ <property name="action_name">app.delete</property>
+ </object>
+ <packing>
+ <property name="pack_type">start</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="toolbar_properties">
+ <property name="visible">1</property>
+ <property name="label" translatable="yes">Properties</property>
+ <signal name="clicked" object="PhotosSelectionToolbar" swapped="no"
+ handler="photos_selection_toolbar_properties_clicked" />
+ </object>
+ <packing>
+ <property name="pack_type">end</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="toolbar_collection">
+ <property name="visible">1</property>
+ <property name="label" translatable="yes">Add to Album</property>
+ <signal name="clicked" object="PhotosSelectionToolbar" swapped="no"
+ handler="photos_selection_toolbar_collection_clicked" />
+ </object>
+ <packing>
+ <property name="pack_type">end</property>
+ </packing>
+ </child>
+ </template>
+</interface>
diff --git a/src/photos.gresource.xml b/src/photos.gresource.xml
index b422ab1..7fa7693 100644
--- a/src/photos.gresource.xml
+++ b/src/photos.gresource.xml
@@ -6,6 +6,7 @@
<file alias="dnd-counter.svg" preprocess="to-pixdata">../data/dnd-counter.svg</file>
<file alias="preview-menu.ui" preprocess="xml-stripblanks"
compressed="true">photos-preview-menu.ui</file>
<file alias="selection-menu.ui" preprocess="xml-stripblanks"
compressed="true">photos-selection-menu.ui</file>
+ <file alias="selection-toolbar.ui" preprocess="xml-stripblanks"
compressed="true">photos-selection-toolbar.ui</file>
<file alias="sidebar-radio-checked.svg" preprocess="to-pixdata">../data/sidebar-radio-checked.svg</file>
<file alias="sidebar-radio-prelight.svg"
preprocess="to-pixdata">../data/sidebar-radio-prelight.svg</file>
<file alias="sidebar-radio-selected.svg"
preprocess="to-pixdata">../data/sidebar-radio-selected.svg</file>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]