[simple-scan] Use a GtkActionBar as per the new design
- From: Robert Ancell <rancell src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [simple-scan] Use a GtkActionBar as per the new design
- Date: Fri, 19 May 2017 03:54:18 +0000 (UTC)
commit 793ee3956b255aee35d20d03c4e0316d30a2c9f5
Author: Robert Ancell <robert ancell canonical com>
Date: Fri May 19 15:53:58 2017 +1200
Use a GtkActionBar as per the new design
meson.build | 2 +-
src/app-window.ui | 324 +++++++++++++++++++++------------------------------
src/app-window.vala | 19 +---
3 files changed, 136 insertions(+), 209 deletions(-)
---
diff --git a/meson.build b/meson.build
index 694bbc5..3cb8de7 100644
--- a/meson.build
+++ b/meson.build
@@ -18,7 +18,7 @@ icondir = join_paths (datadir, 'simple-scan', 'icons')
# Dependencies
glib_dep = dependency ('glib-2.0', version: '>= 2.38')
-gtk_dep = dependency ('gtk+-3.0')
+gtk_dep = dependency ('gtk+-3.0', version: '>=3.12')
gmodule_dep = dependency ('gmodule-export-2.0')
gthread_dep = dependency ('gthread-2.0')
zlib_dep = dependency ('zlib')
diff --git a/src/app-window.ui b/src/app-window.ui
index 5878d69..9c9cfeb 100644
--- a/src/app-window.ui
+++ b/src/app-window.ui
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.20.0 -->
<interface>
- <requires lib="gtk+" version="3.10"/>
+ <requires lib="gtk+" version="3.12"/>
<object class="GtkImage" id="email_image">
<property name="visible">True</property>
<property name="can_focus">False</property>
@@ -265,8 +265,8 @@
<property name="use_underline">True</property>
<property name="use_stock">True</property>
<signal name="activate" handler="quit_menuitem_activate_cb" swapped="no"/>
- <accelerator key="w" signal="activate" modifiers="GDK_CONTROL_MASK"/>
<accelerator key="q" signal="activate" modifiers="GDK_CONTROL_MASK"/>
+ <accelerator key="w" signal="activate" modifiers="GDK_CONTROL_MASK"/>
</object>
</child>
</object>
@@ -514,21 +514,6 @@
<object class="GtkToolbar" id="toolbar">
<property name="can_focus">False</property>
<child>
- <object class="GtkToolButton" id="new_toolbutton">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="tooltip_text" translatable="yes" comments="Tooltip for new document
button">Start a new document</property>
- <property name="label" translatable="yes">New</property>
- <property name="use_underline">True</property>
- <property name="stock_id">gtk-new</property>
- <signal name="clicked" handler="new_button_clicked_cb" swapped="no"/>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="homogeneous">True</property>
- </packing>
- </child>
- <child>
<object class="GtkMenuToolButton" id="scan_toolbutton">
<property name="visible">True</property>
<property name="can_focus">False</property>
@@ -577,75 +562,148 @@
<property name="homogeneous">True</property>
</packing>
</child>
+ <style>
+ <class name="primary-toolbar"/>
+ </style>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <object class="GtkActionBar">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
<child>
- <object class="GtkSeparatorToolItem" id="toolbutton2">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="homogeneous">True</property>
- </packing>
- </child>
- <child>
- <object class="GtkToolButton" id="rotate_left_toolbutton">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="tooltip_text" translatable="yes" comments="Tooltip for rotate left
(counter-clockwise) button">Rotate the page to the left (counter-clockwise)</property>
- <property name="label" translatable="yes" comments="Label on rotate page left
(anti-clockwise) item">Rotate Left</property>
- <property name="use_underline">True</property>
- <property name="icon_name">object-rotate-left</property>
- <signal name="clicked" handler="rotate_left_button_clicked_cb" swapped="no"/>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="homogeneous">True</property>
- </packing>
- </child>
- <child>
- <object class="GtkToolButton" id="rotate_right_toolbutton">
+ <object class="GtkButton" id="new_toolbutton">
+ <property name="label" translatable="yes" comments="Label on new document button">Start
Again…</property>
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="tooltip_text" translatable="yes" comments="Tooltip for rotate right
(clockwise) button">Rotate the page to the right (clockwise)</property>
- <property name="label" translatable="yes" comments="Label on rotate page right (clockwise)
item">Rotate Right</property>
- <property name="use_underline">True</property>
- <property name="icon_name">object-rotate-right</property>
- <signal name="clicked" handler="rotate_right_button_clicked_cb" swapped="no"/>
+ <property name="tooltip_text" translatable="yes" comments="Tooltip for new document
button">Start a new document</property>
+ <signal name="clicked" handler="new_button_clicked_cb" swapped="no"/>
+ <style>
+ <class name="text-button"/>
+ </style>
</object>
<packing>
- <property name="expand">False</property>
- <property name="homogeneous">True</property>
+ <property name="position">1</property>
</packing>
</child>
- <child>
- <object class="GtkToggleToolButton" id="crop_toolbutton">
+ <child type="center">
+ <object class="GtkBox">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="tooltip_text" translatable="yes">Crop the selected page</property>
- <property name="is_important">True</property>
- <property name="label" translatable="yes">Crop</property>
- <property name="use_underline">True</property>
- <property name="icon_name">object-crop</property>
- <signal name="toggled" handler="crop_toolbutton_toggled_cb" swapped="no"/>
+ <property name="valign">center</property>
+ <property name="spacing">10</property>
+ <child>
+ <object class="GtkBox" id="rotate_box">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="valign">center</property>
+ <child>
+ <object class="GtkButton" id="rotate_right_button">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes" comments="Tooltip for rotate right
(clockwise) button">Rotate the page to the right (clockwise)</property>
+ <property name="use_underline">True</property>
+ <signal name="clicked" handler="rotate_right_button_clicked_cb" swapped="no"/>
+ <child>
+ <object class="GtkImage" id="objectrotateright-button">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">object-rotate-right-symbolic</property>
+ <property name="icon_size">1</property>
+ </object>
+ </child>
+ <style>
+ <class name="image-button"/>
+ </style>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="rotate_left_button">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes" comments="Tooltip for rotate left
(counter-clockwise) button">Rotate the page to the left (counter-clockwise)</property>
+ <property name="use_underline">True</property>
+ <signal name="clicked" handler="rotate_left_button_clicked_cb" swapped="no"/>
+ <child>
+ <object class="GtkImage" id="objectrotateleft-button">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">object-rotate-left-symbolic</property>
+ <property name="icon_size">1</property>
+ </object>
+ </child>
+ <style>
+ <class name="image-button"/>
+ </style>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <style>
+ <class name="linked"/>
+ </style>
+ </object>
+ <packing>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleButton" id="crop_button">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="receives_default">False</property>
+ <property name="tooltip_text" translatable="yes">Crop the selected page</property>
+ <property name="use_underline">True</property>
+ <signal name="toggled" handler="crop_button_toggled_cb" swapped="no"/>
+ <child>
+ <object class="GtkImage" id="objectcrop-button">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">edit-cut-symbolic</property>
+ <property name="icon_size">1</property>
+ </object>
+ </child>
+ <style>
+ <class name="image-button"/>
+ </style>
+ </object>
+ <packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
</object>
<packing>
- <property name="expand">False</property>
- <property name="homogeneous">True</property>
+ <property name="position">0</property>
</packing>
</child>
- <style>
- <class name="primary-toolbar"/>
- </style>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
- <property name="position">1</property>
+ <property name="pack_type">end</property>
+ <property name="position">3</property>
</packing>
</child>
- <child>
- <placeholder/>
- </child>
</object>
</child>
<child type="titlebar">
@@ -722,55 +780,6 @@
</object>
</child>
<child>
- <object class="GtkButton" id="save_button">
- <property name="visible">True</property>
- <property name="sensitive">False</property>
- <property name="can_focus">False</property>
- <property name="receives_default">False</property>
- <property name="tooltip_text" translatable="yes" comments="Tooltip for save toolbar button">Save
document to a file</property>
- <property name="use_underline">True</property>
- <signal name="clicked" handler="save_file_button_clicked_cb" swapped="no"/>
- <child>
- <object class="GtkImage" id="save_image">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="icon_name">document-save-symbolic</property>
- <property name="icon_size">1</property>
- </object>
- </child>
- <style>
- <class name="image-button"/>
- </style>
- </object>
- <packing>
- <property name="position">1</property>
- </packing>
- </child>
- <child>
- <object class="GtkButton" id="new_button">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="receives_default">False</property>
- <property name="tooltip_text" translatable="yes" comments="Tooltip for new document
button">Start a new document</property>
- <property name="use_underline">True</property>
- <signal name="clicked" handler="new_button_clicked_cb" swapped="no"/>
- <child>
- <object class="GtkImage" id="new_image">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="icon_name">document-new-symbolic</property>
- <property name="icon_size">1</property>
- </object>
- </child>
- <style>
- <class name="image-button"/>
- </style>
- </object>
- <packing>
- <property name="position">2</property>
- </packing>
- </child>
- <child>
<object class="GtkMenuButton" id="menu_button">
<property name="visible">True</property>
<property name="can_focus">False</property>
@@ -790,90 +799,23 @@
</object>
<packing>
<property name="pack_type">end</property>
- <property name="position">3</property>
- </packing>
- </child>
- <child>
- <object class="GtkBox" id="rotate_box">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="valign">center</property>
- <child>
- <object class="GtkButton" id="rotate_right_button">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="receives_default">False</property>
- <property name="tooltip_text" translatable="yes" comments="Tooltip for rotate right
(clockwise) button">Rotate the page to the right (clockwise)</property>
- <property name="use_underline">True</property>
- <signal name="clicked" handler="rotate_right_button_clicked_cb" swapped="no"/>
- <child>
- <object class="GtkImage" id="objectrotateright-button">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="icon_name">object-rotate-right-symbolic</property>
- <property name="icon_size">1</property>
- </object>
- </child>
- <style>
- <class name="image-button"/>
- </style>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="pack_type">end</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkButton" id="rotate_left_button">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="receives_default">False</property>
- <property name="tooltip_text" translatable="yes" comments="Tooltip for rotate left
(counter-clockwise) button">Rotate the page to the left (counter-clockwise)</property>
- <property name="use_underline">True</property>
- <signal name="clicked" handler="rotate_left_button_clicked_cb" swapped="no"/>
- <child>
- <object class="GtkImage" id="objectrotateleft-button">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="icon_name">object-rotate-left-symbolic</property>
- <property name="icon_size">1</property>
- </object>
- </child>
- <style>
- <class name="image-button"/>
- </style>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="pack_type">end</property>
- <property name="position">1</property>
- </packing>
- </child>
- <style>
- <class name="linked"/>
- </style>
- </object>
- <packing>
- <property name="pack_type">end</property>
- <property name="position">4</property>
+ <property name="position">2</property>
</packing>
</child>
<child>
- <object class="GtkToggleButton" id="crop_button">
+ <object class="GtkButton" id="save_button">
<property name="visible">True</property>
+ <property name="sensitive">False</property>
<property name="can_focus">False</property>
<property name="receives_default">False</property>
- <property name="tooltip_text" translatable="yes">Crop the selected page</property>
+ <property name="tooltip_text" translatable="yes" comments="Tooltip for save toolbar button">Save
document to a file</property>
<property name="use_underline">True</property>
- <signal name="toggled" handler="crop_button_toggled_cb" swapped="no"/>
+ <signal name="clicked" handler="save_file_button_clicked_cb" swapped="no"/>
<child>
- <object class="GtkImage" id="objectcrop-button">
+ <object class="GtkImage" id="save_image">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="icon_name">edit-cut-symbolic</property>
+ <property name="icon_name">document-save-symbolic</property>
<property name="icon_size">1</property>
</object>
</child>
@@ -883,7 +825,7 @@
</object>
<packing>
<property name="pack_type">end</property>
- <property name="position">5</property>
+ <property name="position">3</property>
</packing>
</child>
<style>
diff --git a/src/app-window.vala b/src/app-window.vala
index 1ba1ea1..ca1369d 100644
--- a/src/app-window.vala
+++ b/src/app-window.vala
@@ -90,8 +90,6 @@ public class AppWindow : Gtk.ApplicationWindow
[GtkChild]
private Gtk.ToggleButton crop_button;
[GtkChild]
- private Gtk.ToggleToolButton crop_toolbutton;
- [GtkChild]
private Gtk.Button stop_button;
[GtkChild]
private Gtk.Button scan_button;
@@ -762,7 +760,6 @@ public class AppWindow : Gtk.ApplicationWindow
menuitem.active = true;
crop_button.active = page.has_crop;
- crop_toolbutton.active = page.has_crop;
updating_page_menu = false;
}
@@ -879,18 +876,6 @@ public class AppWindow : Gtk.ApplicationWindow
}
[GtkCallback]
- private void crop_toolbutton_toggled_cb (Gtk.ToggleToolButton widget)
- {
- if (updating_page_menu)
- return;
-
- if (widget.active)
- custom_crop_menuitem.active = true;
- else
- no_crop_menuitem.active = true;
- }
-
- [GtkCallback]
private void four_by_six_menuitem_toggled_cb (Gtk.CheckMenuItem widget)
{
if (widget.active)
@@ -1649,7 +1634,7 @@ public class AppWindow : Gtk.ApplicationWindow
var appmenu = new Menu ();
var section = new Menu ();
appmenu.append_section (null, section);
- section.append (_("New Document"), "app.new_document");
+ section.append (_("Start Again…"), "app.new_document");
section = new Menu ();
appmenu.append_section (null, section);
@@ -1709,7 +1694,7 @@ public class AppWindow : Gtk.ApplicationWindow
book_view = new BookView (book);
book_view.border_width = 18;
- main_vbox.pack_end (book_view, true, true, 0);
+ main_vbox.pack_start (book_view, true, true, 0);
book_view.page_selected.connect (page_selected_cb);
book_view.show_page.connect (show_page_cb);
book_view.show_menu.connect (show_page_menu_cb);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]