[glade/modern-ui: 11/34] GladeWindow: replace menubar with headerbar
- From: Juan Pablo Ugarte <jpu src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glade/modern-ui: 11/34] GladeWindow: replace menubar with headerbar
- Date: Sat, 30 Dec 2017 17:13:32 +0000 (UTC)
commit 06564444cc3a7f59a72d57d007b982f622975836
Author: Juan Pablo Ugarte <juanpablougarte gmail com>
Date: Sun Jun 11 16:59:15 2017 -0300
GladeWindow: replace menubar with headerbar
Add headerbar with open, new, undo, redo and save buttons and
a main dropdown menu.
Simplified toolbar and moved under the inspector.
src/glade-window.c | 201 ++---------
src/glade.glade | 973 +++++++++++++++++++++-------------------------------
2 files changed, 428 insertions(+), 746 deletions(-)
---
diff --git a/src/glade-window.c b/src/glade-window.c
index 838fb73..4718a56 100644
--- a/src/glade-window.c
+++ b/src/glade-window.c
@@ -79,12 +79,11 @@ struct _GladeWindowPrivate
{
GladeApp *app;
- GtkWidget *main_vbox;
-
- GtkWidget *notebook, *notebook_frame;
+ GtkWidget *notebook;
GladeDesignView *active_view;
gint num_tabs;
+ GtkHeaderBar *headerbar;
GtkWindow *about_dialog;
GladePreferences *preferences;
@@ -107,12 +106,8 @@ struct _GladeWindowPrivate
GtkActionGroup *project_actiongroup; /* All the project actions */
GtkActionGroup *pointer_mode_actiongroup;
- GtkActionGroup *project_list_actiongroup; /* Projects list menu actions */
GtkActionGroup *static_actiongroup;
GtkActionGroup *view_actiongroup;
-
- GtkMenuShell *menubar;
- GtkMenuShell *project_menu;
GtkRecentManager *recent_manager;
GtkWidget *recent_menu;
@@ -120,18 +115,18 @@ struct _GladeWindowPrivate
GtkWidget *quit_menuitem;
GtkWidget *about_menuitem;
GtkWidget *properties_menuitem;
- GtkMenuItem *help_menuitem;
gchar *default_path; /* the default path for open/save operations */
- GtkToolItem *undo_toolbutton; /* customized buttons for undo/redo with history */
- GtkToolItem *redo_toolbutton;
+ GtkMenuButton *undo_menu_button; /* customized buttons for undo/redo with history */
+ GtkMenuButton *redo_menu_button;
GtkWidget *toolbar; /* Actions are added to the toolbar */
gint actions_start; /* start of action items */
GtkWidget *center_paned;
GtkWidget *left_paned;
+ GtkWidget *open_button_box; /* gtk_button_box_set_layout() set homogeneous to TRUE, and we do not want
that in this case */
GtkWidget *registration; /* Registration and user survey dialog */
@@ -279,8 +274,9 @@ get_formatted_project_name_for_display (GladeProject *project,
static void
refresh_title (GladeWindow *window)
{
- GladeProject *project;
+ GladeProject *project = NULL;
gchar *title, *name = NULL;
+ const gchar *path;
if (window->priv->active_view)
{
@@ -304,6 +300,26 @@ refresh_title (GladeWindow *window)
gtk_window_set_title (GTK_WINDOW (window), title);
+ /* Show path */
+ if (project && (path = glade_project_get_path (project)))
+ {
+ gchar *dirname = g_path_get_dirname (path);
+ const gchar *home = g_get_home_dir ();
+
+ if (g_str_has_prefix (dirname, home))
+ {
+ char *subtitle = &dirname[g_utf8_strlen (home, -1) - 1];
+ subtitle[0] = '~';
+ gtk_header_bar_set_subtitle (window->priv->headerbar, subtitle);
+ }
+ else
+ gtk_header_bar_set_subtitle (window->priv->headerbar, dirname);
+
+ g_free (dirname);
+ }
+ else
+ gtk_header_bar_set_subtitle (window->priv->headerbar, NULL);
+
g_free (title);
}
@@ -644,10 +660,10 @@ refresh_undo_redo (GladeWindow *window, GladeProject *project)
g_free (tooltip);
/* Refresh menus */
- gtk_menu_tool_button_set_menu (GTK_MENU_TOOL_BUTTON (priv->undo_toolbutton),
- glade_project_undo_items (project));
- gtk_menu_tool_button_set_menu (GTK_MENU_TOOL_BUTTON (priv->redo_toolbutton),
- glade_project_redo_items (project));
+ gtk_menu_button_set_popup (priv->undo_menu_button,
+ glade_project_undo_items (project));
+ gtk_menu_button_set_popup (priv->redo_menu_button,
+ glade_project_redo_items (project));
}
static void
@@ -973,122 +989,6 @@ switch_to_project (GladeWindow *window, GladeProject *project)
}
static void
-projects_list_menu_activate_cb (GtkAction *action, GladeWindow *window)
-{
- if (gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action)) == FALSE)
- return;
-
- gtk_notebook_set_current_page (GTK_NOTEBOOK (window->priv->notebook),
- gtk_radio_action_get_current_value (GTK_RADIO_ACTION (action)));
-}
-
-static void
-refresh_projects_list_menu (GladeWindow *window)
-{
- GladeWindowPrivate *priv = window->priv;
- GList *actions, *l;
- GSList *group = NULL;
- gint n, i;
-
- /* Remove all current actions */
- actions = gtk_action_group_list_actions (priv->project_list_actiongroup);
- for (l = actions; l != NULL; l = l->next)
- {
- GtkAction *action = l->data;
- GSList *p, *proxies = gtk_action_get_proxies (action);
- GSList *proxies_copy;
-
- /* Remove MenuItems */
- proxies_copy = g_slist_copy (proxies);
- for (p = proxies_copy; p; p = g_slist_next (p))
- if (GTK_IS_MENU_ITEM (p->data))
- gtk_widget_destroy (p->data);
- g_slist_free (proxies_copy);
-
- g_signal_handlers_disconnect_by_func (action,
- G_CALLBACK (projects_list_menu_activate_cb),
- window);
- gtk_accel_group_disconnect (priv->accelgroup,
- gtk_action_get_accel_closure (action));
- gtk_action_group_remove_action (priv->project_list_actiongroup, action);
- }
- g_list_free (actions);
-
- n = gtk_notebook_get_n_pages (GTK_NOTEBOOK (priv->notebook));
-
- /* Add an action for each project */
- for (i = 0; i < n; i++)
- {
- GtkWidget *view, *item;
- GladeProject *project;
- GtkRadioAction *action;
- gchar action_name[32];
- gchar *project_name;
- gchar *tooltip;
- gchar *accel;
-
- view = gtk_notebook_get_nth_page (GTK_NOTEBOOK (priv->notebook), i);
- project = glade_design_view_get_project (GLADE_DESIGN_VIEW (view));
-
-
- /* NOTE: the action is associated to the position of the tab in
- * the notebook not to the tab itself! This is needed to work
- * around the gtk+ bug #170727: gtk leaves around the accels
- * of the action. Since the accel depends on the tab position
- * the problem is worked around, action with the same name always
- * get the same accel.
- */
- g_snprintf (action_name, sizeof (action_name), "Tab_%d", i);
- project_name = get_formatted_project_name_for_display (project,
- FORMAT_NAME_MARK_UNSAVED
- |
- FORMAT_NAME_MIDDLE_TRUNCATE
- |
- FORMAT_NAME_ESCAPE_UNDERSCORES);
- tooltip = format_project_list_item_tooltip (project);
-
- /* alt + 1, 2, 3... 0 to switch to the first ten tabs */
- accel = (i < 10) ? gtk_accelerator_name (GDK_KEY_0 + ((i + 1) % 10), GDK_MOD1_MASK) : NULL;
-
- action = gtk_radio_action_new (action_name,
- project_name, tooltip, NULL, i);
-
- /* Link action and project */
- g_object_set_data (G_OBJECT (project), "project-list-action", action);
- g_object_set_data (G_OBJECT (action), "project", project);
-
- /* note that group changes each time we add an action, so it must be updated */
- gtk_radio_action_set_group (action, group);
- group = gtk_radio_action_get_group (action);
-
- gtk_action_group_add_action_with_accel (priv->project_list_actiongroup,
- GTK_ACTION (action), accel);
- gtk_accel_group_connect_by_path (priv->accelgroup,
- gtk_action_get_accel_path (GTK_ACTION (action)),
- gtk_action_get_accel_closure (GTK_ACTION (action)));
-
- /* Create Menu Item*/
- item = gtk_check_menu_item_new ();
- gtk_menu_shell_append (priv->project_menu, item);
- gtk_activatable_set_related_action (GTK_ACTIVATABLE (item), GTK_ACTION (action));
- gtk_activatable_set_use_action_appearance (GTK_ACTIVATABLE (item), TRUE);
- gtk_widget_show (item);
-
- g_signal_connect (action, "activate",
- G_CALLBACK (projects_list_menu_activate_cb), window);
-
- if (GLADE_DESIGN_VIEW (view) == priv->active_view)
- gtk_toggle_action_set_active (GTK_TOGGLE_ACTION (action), TRUE);
-
- g_object_unref (action);
-
- g_free (project_name);
- g_free (tooltip);
- g_free (accel);
- }
-}
-
-static void
on_open_action_activate (GtkAction *action, GladeWindow *window)
{
GtkWidget *filechooser;
@@ -1540,8 +1440,6 @@ glade_window_notebook_set_show_tabs (GladeWindow *window, gboolean show)
show = FALSE;
gtk_notebook_set_show_tabs (GTK_NOTEBOOK (priv->notebook), show);
- gtk_frame_set_shadow_type (GTK_FRAME (priv->notebook_frame),
- show ? GTK_SHADOW_NONE : GTK_SHADOW_IN);
}
static void
@@ -1724,8 +1622,6 @@ on_notebook_switch_page (GtkNotebook *notebook,
GladeWindowPrivate *priv = window->priv;
GladeDesignView *view;
GladeProject *project;
- GtkAction *action;
- gchar *action_name;
view = GLADE_DESIGN_VIEW (gtk_notebook_get_nth_page (notebook, page_num));
@@ -1745,20 +1641,6 @@ on_notebook_switch_page (GtkNotebook *notebook,
/* switch to the project's inspector */
gtk_notebook_set_current_page (priv->inspectors_notebook, page_num);
- /* activate the corresponding item in the project menu */
- action_name = g_strdup_printf ("Tab_%d", page_num);
- action = gtk_action_group_get_action (priv->project_list_actiongroup,
- action_name);
-
- /* sometimes the action doesn't exist yet, and the proper action
- * is set active during the documents list menu creation
- * CHECK: would it be nicer if active_view was a property and we monitored the notify signal?
- */
- if (action != NULL)
- gtk_toggle_action_set_active (GTK_TOGGLE_ACTION (action), TRUE);
-
- g_free (action_name);
-
refresh_undo_redo (window, project);
/* Refresh the editor and some of the actions */
@@ -1825,8 +1707,6 @@ on_notebook_tab_added (GtkNotebook *notebook,
set_sensitivity_according_to_project (window, project);
- refresh_projects_list_menu (window);
-
refresh_title (window);
if (window->priv->num_tabs > 0)
@@ -1871,8 +1751,6 @@ on_notebook_tab_removed (GtkNotebook *notebook,
/* FIXME: this function needs to be preferably called somewhere else */
glade_app_remove_project (project);
- refresh_projects_list_menu (window);
-
refresh_title (window);
if (priv->active_view)
@@ -2865,6 +2743,8 @@ glade_window_init (GladeWindow *window)
gtk_widget_init_template (GTK_WIDGET (window));
+ gtk_box_set_homogeneous (GTK_BOX (priv->open_button_box), FALSE);
+
priv->registration = glade_registration_new ();
}
@@ -2929,8 +2809,6 @@ glade_window_constructed (GObject *object)
GtkosxApplication *theApp = gtkosx_application_get ();
GtkWidget *sep;
- gtk_widget_hide (priv->menubar);
- gtkosx_application_set_menu_bar (theApp, priv->menubar);
gtk_widget_hide (priv->quit_menuitem);
gtkosx_application_insert_app_menu_item (theApp, priv->about_menuitem, 0);
sep = gtk_separator_menu_item_new();
@@ -2943,8 +2821,6 @@ glade_window_constructed (GObject *object)
g_object_ref(sep);
gtkosx_application_insert_app_menu_item (theApp, sep, 3);
- gtkosx_application_set_help_menu (theApp, priv->help_menuitem);
-
g_signal_connect(theApp, "NSApplicationWillTerminate",
G_CALLBACK(on_quit_action_activate), window);
@@ -3017,29 +2893,26 @@ glade_window_class_init (GladeWindowClass *klass)
gtk_widget_class_set_template_from_resource (widget_class, "/org/gnome/glade/glade.glade");
/* Internal children */
- gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, project_list_actiongroup);
+ gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, headerbar);
gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, about_dialog);
gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, center_paned);
gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, left_paned);
+ gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, open_button_box);
gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, notebook);
- gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, notebook_frame);
gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, inspectors_notebook);
gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, editor);
gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, statusbar);
gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, toolbar);
- gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, project_menu);
- gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, undo_toolbutton);
- gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, redo_toolbutton);
+ gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, undo_menu_button);
+ gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, redo_menu_button);
gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, accelgroup);
gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, project_actiongroup);
gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, pointer_mode_actiongroup);
gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, static_actiongroup);
gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, view_actiongroup);
- gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, menubar);
gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, quit_menuitem);
gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, properties_menuitem);
gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, about_menuitem);
- gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, help_menuitem);
/* Actions */
gtk_widget_class_bind_template_child_private (widget_class, GladeWindow, save_action);
diff --git a/src/glade.glade b/src/glade.glade
index 7b405e2..4e04619 100644
--- a/src/glade.glade
+++ b/src/glade.glade
@@ -2,28 +2,33 @@
<!-- Generated with glade 3.20.0
Glade - A user interface designer for GTK+ and GNOME.
-Copyright (C) 2012-2014 Juan Pablo Ugarte
+Copyright (C) 2012-2017 Juan Pablo Ugarte
-This program is free software; you can redistribute it and/or
-modify it under the terms of the GNU General Public License
-as published by the Free Software Foundation; either version 2
-of the License, or (at your option) any later version.
+This library is free software; you can redistribute it and/or
+modify it under the terms of the GNU Lesser General Public
+License as published by the Free Software Foundation; either
+version 2.1 of the License, or (at your option) any later version.
-This program is distributed in the hope that it will be useful,
+This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+Lesser General Public License for more details.
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+You should have received a copy of the GNU Lesser General Public
+License along with this library; if not, write to the Free Software
+Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-Author: Juan Pablo Ugarte <juanpablougarte gmail com>
+Author: Juan Pablo Ugarte
-->
<interface domain="glade">
- <requires lib="gtk+" version="3.10"/>
+ <requires lib="gtk+" version="3.20"/>
<requires lib="gladeui" version="0.0"/>
+ <!-- interface-license-type lgplv2 -->
+ <!-- interface-name Glade -->
+ <!-- interface-description A user interface designer for GTK+ and GNOME. -->
+ <!-- interface-copyright 2012-2017 Juan Pablo Ugarte -->
+ <!-- interface-authors Juan Pablo Ugarte -->
<object class="GtkAboutDialog" id="about_dialog">
<property name="can_focus">False</property>
<property name="border_width">5</property>
@@ -31,7 +36,7 @@ Author: Juan Pablo Ugarte <juanpablougarte gmail com>
<property name="type_hint">dialog</property>
<property name="copyright" translatable="yes">Copyright © 2001-2006 Ximian, Inc.
Copyright © 2001-2006 Joaquin Cuenca Abela, Paolo Borelli, et al.
-Copyright © 2004-2015 Tristan Van Berkom, Juan Pablo Ugarte, et al.</property>
+Copyright © 2004-2017 Tristan Van Berkom, Juan Pablo Ugarte, et al.</property>
<property name="comments" translatable="yes">A user interface designer for GTK+ and GNOME.</property>
<property name="website">http://glade.gnome.org</property>
<property name="website_label" translatable="yes">Visit Glade web site</property>
@@ -161,7 +166,7 @@ Andreas Nilsson <andreas andreasn se></property>
</child>
<child>
<object class="GtkAction" id="properties_action">
- <property name="label" translatable="yes">Properties</property>
+ <property name="label" translatable="yes">Edit properties</property>
<property name="tooltip" translatable="yes">Edit project properties</property>
<property name="icon_name">document-properties</property>
<signal name="activate" handler="on_properties_action_activate" swapped="no"/>
@@ -254,11 +259,6 @@ Andreas Nilsson <andreas andreasn se></property>
<accelerator key="Page_Down" modifiers="GDK_CONTROL_MASK"/>
</child>
</object>
- <object class="GtkActionGroup" id="project_list_actiongroup">
- <property name="accel_group">accelgroup</property>
- <signal name="connect-proxy" handler="on_actiongroup_connect_proxy" swapped="no"/>
- <signal name="disconnect-proxy" handler="on_actiongroup_disconnect_proxy" swapped="no"/>
- </object>
<object class="GtkActionGroup" id="view_actiongroup">
<property name="name">view_actiongroup</property>
<property name="accel_group">accelgroup</property>
@@ -309,7 +309,6 @@ Andreas Nilsson <andreas andreasn se></property>
<signal name="disconnect-proxy" handler="on_actiongroup_disconnect_proxy" swapped="no"/>
<child>
<object class="GtkAction" id="new_action">
- <property name="label" translatable="yes">New</property>
<property name="tooltip" translatable="yes">Create a new project</property>
<property name="icon_name">document-new</property>
<signal name="activate" handler="glade_window_new_project" swapped="yes"/>
@@ -378,699 +377,509 @@ Andreas Nilsson <andreas andreasn se></property>
</object>
</child>
</object>
- <template class="GladeWindow" parent="GtkWindow">
+ <object class="GtkMenu" id="main_menu">
+ <property name="visible">True</property>
<property name="can_focus">False</property>
+ <property name="accel_group">accelgroup</property>
+ <property name="menu_type_hint">dropdown-menu</property>
<child>
- <object class="GtkBox" id="main_box">
+ <object class="GtkImageMenuItem" id="save_as_menuitem">
+ <property name="use_action_appearance">True</property>
+ <property name="related_action">save_as_action</property>
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="orientation">vertical</property>
+ <property name="use_underline">True</property>
+ <property name="use_stock">True</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkImageMenuItem" id="properties_menuitem">
+ <property name="use_action_appearance">True</property>
+ <property name="related_action">properties_action</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="use_underline">True</property>
+ <property name="use_stock">True</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkImageMenuItem" id="close_menuitem">
+ <property name="use_action_appearance">True</property>
+ <property name="related_action">close_action</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="use_underline">True</property>
+ <property name="use_stock">True</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkSeparatorMenuItem">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkMenuItem" id="registration_menuitem">
+ <property name="use_action_appearance">True</property>
+ <property name="related_action">registration_action</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Registration & User Survey</property>
+ <property name="use_underline">True</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkImageMenuItem" id="reference_menuitem">
+ <property name="use_action_appearance">True</property>
+ <property name="related_action">reference_action</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="use_underline">True</property>
+ <property name="use_stock">True</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkImageMenuItem" id="preferences_menuitem">
+ <property name="use_action_appearance">True</property>
+ <property name="related_action">preferences_action</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="use_underline">True</property>
+ <property name="use_stock">True</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkSeparatorMenuItem">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkImageMenuItem" id="about_menuitem">
+ <property name="use_action_appearance">True</property>
+ <property name="related_action">about_action</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="use_underline">True</property>
+ <property name="use_stock">True</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkImageMenuItem" id="quit_menuitem">
+ <property name="use_action_appearance">True</property>
+ <property name="related_action">quit_action</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="use_underline">True</property>
+ <property name="use_stock">True</property>
+ </object>
+ </child>
+ </object>
+ <object class="GtkRecentChooserMenu" id="recent_menu">
+ <property name="use_action_appearance">True</property>
+ <property name="related_action">open_recent_action</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="limit">10</property>
+ <property name="show_not_found">False</property>
+ <property name="sort_type">mru</property>
+ <property name="show_numbers">True</property>
+ <signal name="insert" handler="on_recent_menu_insert" swapped="no"/>
+ <signal name="remove" handler="on_recent_menu_remove" swapped="no"/>
+ </object>
+ <template class="GladeWindow" parent="GtkWindow">
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkPaned" id="center_paned">
+ <property name="height_request">380</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="position_set">True</property>
+ <property name="wide_handle">True</property>
<child>
- <object class="GtkMenuBar" id="menubar">
+ <object class="GtkPaned" id="left_paned">
<property name="visible">True</property>
- <property name="can_focus">False</property>
+ <property name="can_focus">True</property>
+ <property name="position">150</property>
+ <property name="position_set">True</property>
+ <property name="wide_handle">True</property>
<child>
- <object class="GtkMenuItem" id="file_menuitem">
+ <object class="GtkBox">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="label" translatable="yes">_File</property>
- <property name="use_underline">True</property>
- <child type="submenu">
- <object class="GtkMenu" id="file_menu">
+ <property name="orientation">vertical</property>
+ <child>
+ <object class="GtkNotebook" id="inspectors_notebook">
+ <property name="width_request">256</property>
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="accel_group">accelgroup</property>
- <child>
- <object class="GtkImageMenuItem" id="new_menuitem">
- <property name="use_action_appearance">True</property>
- <property name="related_action">new_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="use_underline">True</property>
- <property name="use_stock">True</property>
- </object>
- </child>
- <child>
- <object class="GtkImageMenuItem" id="open_menuitem">
- <property name="use_action_appearance">True</property>
- <property name="related_action">open_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="use_underline">True</property>
- <property name="use_stock">True</property>
- </object>
- </child>
- <child>
- <object class="GtkImageMenuItem" id="recent_menuitem">
- <property name="use_action_appearance">True</property>
- <property name="related_action">open_recent_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="use_underline">True</property>
- <property name="use_stock">True</property>
- <child type="submenu">
- <object class="GtkRecentChooserMenu" id="recent_menu">
- <property name="use_action_appearance">True</property>
- <property name="related_action">open_recent_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="limit">10</property>
- <property name="show_not_found">False</property>
- <property name="sort_type">mru</property>
- <signal name="insert" handler="on_recent_menu_insert" swapped="no"/>
- <signal name="remove" handler="on_recent_menu_remove" swapped="no"/>
- </object>
- </child>
- </object>
- </child>
- <child>
- <object class="GtkSeparatorMenuItem" id="separatormenuitem4">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- </object>
- </child>
- <child>
- <object class="GtkImageMenuItem" id="save_menuitem">
- <property name="use_action_appearance">True</property>
- <property name="related_action">save_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="use_underline">True</property>
- <property name="use_stock">True</property>
- </object>
- </child>
- <child>
- <object class="GtkImageMenuItem" id="save_as_menuitem">
- <property name="use_action_appearance">True</property>
- <property name="related_action">save_as_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="use_underline">True</property>
- <property name="use_stock">True</property>
- </object>
- </child>
- <child>
- <object class="GtkSeparatorMenuItem" id="separatormenuitem1">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- </object>
- </child>
- <child>
- <object class="GtkImageMenuItem" id="properties_menuitem">
- <property name="use_action_appearance">True</property>
- <property name="related_action">properties_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="use_underline">True</property>
- <property name="use_stock">True</property>
- </object>
- </child>
- <child>
- <object class="GtkSeparatorMenuItem" id="separatormenuitem3">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- </object>
- </child>
- <child>
- <object class="GtkImageMenuItem" id="close_menuitem">
- <property name="use_action_appearance">True</property>
- <property name="related_action">close_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="use_underline">True</property>
- <property name="use_stock">True</property>
- </object>
- </child>
- <child>
- <object class="GtkImageMenuItem" id="quit_menuitem">
- <property name="use_action_appearance">True</property>
- <property name="related_action">quit_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="use_underline">True</property>
- <property name="use_stock">True</property>
- </object>
- </child>
+ <property name="can_focus">True</property>
+ <property name="margin_left">4</property>
+ <property name="margin_right">3</property>
+ <property name="margin_bottom">2</property>
+ <property name="show_tabs">False</property>
+ <property name="show_border">False</property>
</object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
</child>
- </object>
- </child>
- <child>
- <object class="GtkMenuItem" id="edit_menuitem">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label" translatable="yes">_Edit</property>
- <property name="use_underline">True</property>
- <child type="submenu">
- <object class="GtkMenu" id="edit_menu">
+ <child>
+ <object class="GtkToolbar" id="toolbar">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="accel_group">accelgroup</property>
- <child>
- <object class="GtkImageMenuItem" id="undo_menuitem">
- <property name="use_action_appearance">True</property>
- <property name="related_action">undo_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="use_underline">True</property>
- <property name="use_stock">True</property>
- </object>
- </child>
- <child>
- <object class="GtkImageMenuItem" id="redo_menuitem">
- <property name="use_action_appearance">True</property>
- <property name="related_action">redo_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="use_underline">True</property>
- <property name="use_stock">True</property>
- </object>
- </child>
- <child>
- <object class="GtkSeparatorMenuItem" id="separatormenuitem2">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- </object>
- </child>
- <child>
- <object class="GtkImageMenuItem" id="cut_menuitem">
- <property name="use_action_appearance">True</property>
- <property name="related_action">cut_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="use_underline">True</property>
- <property name="use_stock">True</property>
- </object>
- </child>
- <child>
- <object class="GtkImageMenuItem" id="copy_menuitem">
- <property name="use_action_appearance">True</property>
- <property name="related_action">copy_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="use_underline">True</property>
- <property name="use_stock">True</property>
- </object>
- </child>
- <child>
- <object class="GtkImageMenuItem" id="paste_menuitem">
- <property name="use_action_appearance">True</property>
- <property name="related_action">paste_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="use_underline">True</property>
- <property name="use_stock">True</property>
- </object>
- </child>
<child>
- <object class="GtkImageMenuItem" id="delete_menuitem">
+ <object class="GtkToggleToolButton" id="selector_button">
<property name="use_action_appearance">True</property>
- <property name="related_action">delete_action</property>
+ <property name="related_action">selector_radioaction</property>
<property name="visible">True</property>
<property name="can_focus">False</property>
+ <property name="label">radiotoolbutton1</property>
<property name="use_underline">True</property>
- <property name="use_stock">True</property>
+ <property name="active">True</property>
</object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
</child>
<child>
- <object class="GtkSeparatorMenuItem" id="separatormenuitem8">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- </object>
- </child>
- <child>
- <object class="GtkImageMenuItem" id="preferences_menuitem">
+ <object class="GtkToggleToolButton" id="drag_resize_button">
<property name="use_action_appearance">True</property>
- <property name="related_action">preferences_action</property>
+ <property name="related_action">drag_resize_radioaction</property>
<property name="visible">True</property>
<property name="can_focus">False</property>
+ <property name="label">radiotoolbutton2</property>
<property name="use_underline">True</property>
- <property name="use_stock">True</property>
</object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
</child>
- </object>
- </child>
- </object>
- </child>
- <child>
- <object class="GtkMenuItem" id="view_menuitem">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label" translatable="yes">_View</property>
- <property name="use_underline">True</property>
- <child type="submenu">
- <object class="GtkMenu" id="view_menu">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="accel_group">accelgroup</property>
<child>
- <object class="GtkCheckMenuItem" id="toolbar_visible_menuitem">
+ <object class="GtkToggleToolButton" id="margin_edit_button">
<property name="use_action_appearance">True</property>
- <property name="related_action">toolbar_visible_action</property>
+ <property name="related_action">margin_edit_radioaction</property>
<property name="visible">True</property>
<property name="can_focus">False</property>
+ <property name="label">radiotoolbutton3</property>
<property name="use_underline">True</property>
</object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
</child>
<child>
- <object class="GtkCheckMenuItem" id="statusbar_visible_menuitem">
+ <object class="GtkToggleToolButton" id="align_edit_button">
<property name="use_action_appearance">True</property>
- <property name="related_action">statusbar_visible_action</property>
+ <property name="related_action">align_edit_radioaction</property>
<property name="visible">True</property>
<property name="can_focus">False</property>
+ <property name="label">radiotoolbutton4</property>
<property name="use_underline">True</property>
</object>
- </child>
- <child>
- <object class="GtkCheckMenuItem" id="project_tabs_visible_menuitem">
- <property name="use_action_appearance">True</property>
- <property name="related_action">project_tabs_visible_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="use_underline">True</property>
- </object>
- </child>
- <child>
- <object class="GtkCheckMenuItem" id="editor_header_menuitem">
- <property name="use_action_appearance">True</property>
- <property name="related_action">editor_header_visible_action</property>
- <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>
</object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
</child>
</object>
+ <packing>
+ <property name="resize">False</property>
+ <property name="shrink">False</property>
+ </packing>
</child>
<child>
- <object class="GtkMenuItem" id="projects_menuitem">
+ <object class="GtkOverlay">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="label" translatable="yes">_Projects</property>
- <property name="use_underline">True</property>
- <child type="submenu">
- <object class="GtkMenu" id="project_menu">
+ <child>
+ <object class="GtkNotebook" id="notebook">
+ <property name="width_request">256</property>
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="accel_group">accelgroup</property>
- <child>
- <object class="GtkImageMenuItem" id="previous_project_menuitem">
- <property name="use_action_appearance">True</property>
- <property name="related_action">previous_project_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="use_underline">True</property>
- <property name="use_stock">True</property>
- </object>
- </child>
- <child>
- <object class="GtkImageMenuItem" id="next_project_menuitem">
- <property name="use_action_appearance">True</property>
- <property name="related_action">next_project_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="use_underline">True</property>
- <property name="use_stock">True</property>
- </object>
- </child>
- <child>
- <object class="GtkSeparatorMenuItem" id="separatormenuitem6">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- </object>
- </child>
+ <property name="show_tabs">False</property>
+ <property name="show_border">False</property>
+ <property name="scrollable">True</property>
+ <signal name="page-added" handler="on_notebook_tab_added" swapped="no"/>
+ <signal name="page-removed" handler="on_notebook_tab_removed" swapped="no"/>
+ <signal name="switch-page" handler="on_notebook_switch_page" swapped="no"/>
</object>
+ <packing>
+ <property name="index">-1</property>
+ </packing>
</child>
- </object>
- </child>
- <child>
- <object class="GtkMenuItem" id="help_menuitem">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label" translatable="yes">_Help</property>
- <property name="use_underline">True</property>
- <child type="submenu">
- <object class="GtkMenu" id="help_menu">
+ <child type="overlay">
+ <object class="GtkStatusbar" id="statusbar">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="accel_group">accelgroup</property>
- <child>
- <object class="GtkImageMenuItem" id="reference_menuitem">
- <property name="use_action_appearance">True</property>
- <property name="related_action">reference_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="use_underline">True</property>
- <property name="use_stock">True</property>
- </object>
- </child>
- <child>
- <object class="GtkMenuItem" id="registration_menuitem">
- <property name="use_action_appearance">True</property>
- <property name="related_action">registration_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="use_underline">True</property>
- </object>
- </child>
- <child>
- <object class="GtkSeparatorMenuItem" id="separatormenuitem5">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- </object>
- </child>
- <child>
- <object class="GtkImageMenuItem" id="about_menuitem">
- <property name="use_action_appearance">True</property>
- <property name="related_action">about_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="use_underline">True</property>
- <property name="use_stock">True</property>
- </object>
- </child>
+ <property name="valign">end</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">2</property>
</object>
+ <packing>
+ <property name="pass_through">True</property>
+ </packing>
</child>
</object>
+ <packing>
+ <property name="resize">True</property>
+ <property name="shrink">False</property>
+ </packing>
</child>
</object>
<packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
+ <property name="resize">False</property>
+ <property name="shrink">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GladeEditor" id="editor">
+ <property name="width_request">256</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="show_class_field">False</property>
+ <property name="show_boder">False</property>
+ </object>
+ <packing>
+ <property name="resize">False</property>
+ <property name="shrink">False</property>
</packing>
</child>
+ </object>
+ </child>
+ <child type="titlebar">
+ <object class="GtkHeaderBar" id="headerbar">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="show_close_button">True</property>
<child>
- <object class="GtkToolbar" id="toolbar">
+ <object class="GtkButtonBox" id="open_button_box">
<property name="visible">True</property>
<property name="can_focus">False</property>
+ <property name="layout_style">expand</property>
<child>
- <object class="GtkToolButton" id="new_toolbutton">
- <property name="use_action_appearance">True</property>
- <property name="related_action">new_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label">toolbutton1</property>
- <property name="use_underline">True</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="homogeneous">True</property>
- </packing>
- </child>
- <child>
- <object class="GtkToolButton" id="open_toolbutton">
+ <object class="GtkButton">
+ <property name="label" translatable="yes">Open</property>
<property name="use_action_appearance">True</property>
<property name="related_action">open_action</property>
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label">toolbutton2</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="tooltip_text" translatable="yes">Open a project</property>
<property name="use_underline">True</property>
</object>
<packing>
- <property name="expand">False</property>
- <property name="homogeneous">True</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ <property name="non_homogeneous">True</property>
</packing>
</child>
<child>
- <object class="GtkToolButton" id="save_toolbutton">
- <property name="use_action_appearance">True</property>
- <property name="related_action">save_action</property>
+ <object class="GtkMenuButton" id="recent_menu_button">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label">toolbutton3</property>
- <property name="use_underline">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="popup">recent_menu</property>
+ <property name="use_popover">False</property>
+ <child>
+ <object class="GtkImage">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">pan-down-symbolic</property>
+ </object>
+ </child>
</object>
<packing>
<property name="expand">False</property>
- <property name="homogeneous">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ <property name="non_homogeneous">True</property>
</packing>
</child>
+ </object>
+ <packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton">
+ <property name="use_action_appearance">False</property>
+ <property name="related_action">new_action</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="tooltip_text" translatable="yes">Create a new project</property>
<child>
- <object class="GtkSeparatorToolItem" id="toolbutton1">
+ <object class="GtkImage">
<property name="visible">True</property>
<property name="can_focus">False</property>
+ <property name="icon_name">tab-new-symbolic</property>
</object>
- <packing>
- <property name="expand">False</property>
- <property name="homogeneous">False</property>
- </packing>
</child>
+ </object>
+ <packing>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSeparator">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ </object>
+ <packing>
+ <property name="position">6</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButtonBox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="layout_style">expand</property>
<child>
- <object class="GtkMenuToolButton" id="undo_toolbutton">
- <property name="use_action_appearance">True</property>
+ <object class="GtkButton">
+ <property name="use_action_appearance">False</property>
<property name="related_action">undo_action</property>
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label">toolbutton2</property>
- <property name="use_underline">True</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="homogeneous">False</property>
- </packing>
- </child>
- <child>
- <object class="GtkMenuToolButton" id="redo_toolbutton">
- <property name="use_action_appearance">True</property>
- <property name="related_action">redo_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label">toolbutton3</property>
- <property name="use_underline">True</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="homogeneous">False</property>
- </packing>
- </child>
- <child>
- <object class="GtkSeparatorToolItem" id="toolbutton4">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="homogeneous">False</property>
- </packing>
- </child>
- <child>
- <object class="GtkToolButton" id="cut_toolbutton">
- <property name="use_action_appearance">True</property>
- <property name="related_action">cut_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label">toolbutton5</property>
- <property name="use_underline">True</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="homogeneous">True</property>
- </packing>
- </child>
- <child>
- <object class="GtkToolButton" id="copy_toolbutton">
- <property name="use_action_appearance">True</property>
- <property name="related_action">copy_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label">toolbutton6</property>
- <property name="use_underline">True</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="homogeneous">True</property>
- </packing>
- </child>
- <child>
- <object class="GtkToolButton" id="paste_toolbutton">
- <property name="use_action_appearance">True</property>
- <property name="related_action">paste_action</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label">toolbutton7</property>
- <property name="use_underline">True</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="homogeneous">True</property>
- </packing>
- </child>
- <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="GtkToggleToolButton" id="selector_button">
- <property name="use_action_appearance">True</property>
- <property name="related_action">selector_radioaction</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label">radiotoolbutton1</property>
- <property name="use_underline">True</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="homogeneous">True</property>
- </packing>
- </child>
- <child>
- <object class="GtkToggleToolButton" id="drag_resize_button">
- <property name="use_action_appearance">True</property>
- <property name="related_action">drag_resize_radioaction</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label">radiotoolbutton2</property>
- <property name="use_underline">True</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="homogeneous">True</property>
- </packing>
- </child>
- <child>
- <object class="GtkToggleToolButton" id="margin_edit_button">
- <property name="use_action_appearance">True</property>
- <property name="related_action">margin_edit_radioaction</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label">radiotoolbutton3</property>
- <property name="use_underline">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <child>
+ <object class="GtkImage">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">edit-undo-symbolic</property>
+ </object>
+ </child>
</object>
<packing>
- <property name="expand">False</property>
- <property name="homogeneous">True</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <object class="GtkToggleToolButton" id="align_edit_button">
- <property name="use_action_appearance">True</property>
- <property name="related_action">align_edit_radioaction</property>
+ <object class="GtkMenuButton" id="undo_menu_button">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label">radiotoolbutton4</property>
- <property name="use_underline">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_popover">False</property>
+ <child>
+ <object class="GtkImage">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">pan-down-symbolic</property>
+ </object>
+ </child>
</object>
<packing>
- <property name="expand">False</property>
- <property name="homogeneous">True</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
</packing>
</child>
</object>
<packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">1</property>
+ <property name="position">5</property>
</packing>
</child>
<child>
- <object class="GtkPaned" id="center_paned">
- <property name="height_request">380</property>
+ <object class="GtkButtonBox">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="border_width">2</property>
- <property name="position_set">True</property>
- <property name="wide_handle">True</property>
+ <property name="can_focus">False</property>
+ <property name="homogeneous">True</property>
+ <property name="layout_style">expand</property>
<child>
- <object class="GtkPaned" id="left_paned">
+ <object class="GtkButton">
+ <property name="use_action_appearance">False</property>
+ <property name="related_action">redo_action</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="position">150</property>
- <property name="position_set">True</property>
- <property name="wide_handle">True</property>
+ <property name="receives_default">True</property>
<child>
- <object class="GtkNotebook" id="inspectors_notebook">
- <property name="width_request">256</property>
+ <object class="GtkImage">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="show_tabs">False</property>
- <property name="show_border">False</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">edit-redo-symbolic</property>
</object>
- <packing>
- <property name="resize">False</property>
- <property name="shrink">False</property>
- </packing>
</child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkMenuButton" id="redo_menu_button">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_popover">False</property>
<child>
- <object class="GtkFrame" id="notebook_frame">
+ <object class="GtkImage">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="label_xalign">0</property>
- <property name="shadow_type">in</property>
- <child>
- <object class="GtkOverlay">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <child>
- <object class="GtkNotebook" id="notebook">
- <property name="width_request">256</property>
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="show_tabs">False</property>
- <property name="show_border">False</property>
- <property name="scrollable">True</property>
- <signal name="page-added" handler="on_notebook_tab_added" swapped="no"/>
- <signal name="page-removed" handler="on_notebook_tab_removed" swapped="no"/>
- <signal name="switch-page" handler="on_notebook_switch_page" swapped="no"/>
- </object>
- <packing>
- <property name="index">-1</property>
- </packing>
- </child>
- <child type="overlay">
- <object class="GtkStatusbar" id="statusbar">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="valign">end</property>
- <property name="orientation">vertical</property>
- <property name="spacing">2</property>
- </object>
- <packing>
- <property name="pass_through">True</property>
- </packing>
- </child>
- </object>
- </child>
+ <property name="icon_name">pan-down-symbolic</property>
</object>
- <packing>
- <property name="resize">True</property>
- <property name="shrink">False</property>
- </packing>
</child>
</object>
<packing>
- <property name="resize">False</property>
- <property name="shrink">False</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
</packing>
</child>
+ </object>
+ <packing>
+ <property name="position">6</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkMenuButton">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="popup">main_menu</property>
<child>
- <object class="GladeEditor" id="editor">
- <property name="width_request">256</property>
+ <object class="GtkImage">
<property name="visible">True</property>
- <property name="can_focus">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">open-menu-symbolic</property>
</object>
- <packing>
- <property name="resize">False</property>
- <property name="shrink">False</property>
- </packing>
</child>
</object>
<packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="pack_type">end</property>
<property name="position">2</property>
</packing>
</child>
+ <child>
+ <object class="GtkButton">
+ <property name="label" translatable="yes">button</property>
+ <property name="use_action_appearance">True</property>
+ <property name="related_action">save_action</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="tooltip_text" translatable="yes">Save the current project</property>
+ </object>
+ <packing>
+ <property name="pack_type">end</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
</object>
</child>
- <child type="titlebar">
- <placeholder/>
- </child>
</template>
</interface>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]