[gnome-maps] MainWindow: use more GtkBuilder
- From: Mattias Bengtsson <mattiasb src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-maps] MainWindow: use more GtkBuilder
- Date: Tue, 25 Jun 2013 18:52:57 +0000 (UTC)
commit 93c536e64f9ccfa515b9d5bc77cb8a6ae8dcff09
Author: Mattias Bengtsson <mattias jc bengtsson gmail com>
Date: Tue Jun 25 03:10:56 2013 +0200
MainWindow: use more GtkBuilder
Move the appwindow into the ui-file and load it with Utils.getUIObject.
https://bugzilla.gnome.org/show_bug.cgi?id=702657
src/main-window.ui | 79 +++++++++++++++++++++++++++++-----------------------
src/mainWindow.js | 26 ++++++-----------
2 files changed, 53 insertions(+), 52 deletions(-)
---
diff --git a/src/main-window.ui b/src/main-window.ui
index 2e4b4d3..b5082ed 100644
--- a/src/main-window.ui
+++ b/src/main-window.ui
@@ -15,42 +15,51 @@
</item>
</section>
</menu>
- <object class="GtkGrid" id="window-content">
- <property name="visible">True</property>
- <property name="orientation">vertical</property>
+ <object class="GtkApplicationWindow" id="app-window">
+ <property name="width_request">600</property>
+ <property name="height_request">500</property>
+ <property name="window_position">center</property>
+ <property name="hide_titlebar_when_maximized">True</property>
+ <property name="title" translatable="yes">Maps</property>
<child>
- <object class="GdHeaderBar" id="header-bar">
+ <object class="GtkGrid" id="window-content">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <child type="title">
- <object class="GdTaggedEntry" id="search-entry">
- <property name="visible">True</property>
- <property name="width_request">500</property>
- </object>
- </child>
- <child>
- <object class="GdHeaderToggleButton" id="track-user-button">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="symbolic-icon-name">find-location-symbolic</property>
- </object>
- <packing>
- <property name="pack_type">start</property>
- </packing>
- </child>
- <child>
- <object class="GdHeaderMenuButton" id="layer-menu-button">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="symbolic-icon-name">emblem-system-symbolic</property>
- <property name="menu-model">map-type-menu</property>
- <property name="action_name">win.map-type-menu</property>
- </object>
- <packing>
- <property name="pack_type">end</property>
- </packing>
- </child>
- </object>
- </child>
+ <property name="orientation">vertical</property>
+ <child>
+ <object class="GdHeaderBar" id="header-bar">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child type="title">
+ <object class="GdTaggedEntry" id="search-entry">
+ <property name="visible">True</property>
+ <property name="width_request">500</property>
+ </object>
+ </child>
+ <child>
+ <object class="GdHeaderToggleButton" id="track-user-button">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="symbolic-icon-name">find-location-symbolic</property>
+ </object>
+ <packing>
+ <property name="pack_type">start</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GdHeaderMenuButton" id="layer-menu-button">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="symbolic-icon-name">emblem-system-symbolic</property>
+ <property name="menu-model">map-type-menu</property>
+ <property name="action_name">win.map-type-menu</property>
+ </object>
+ <packing>
+ <property name="pack_type">end</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
</object>
</interface>
diff --git a/src/mainWindow.js b/src/mainWindow.js
index d52057f..d0606b9 100644
--- a/src/mainWindow.js
+++ b/src/mainWindow.js
@@ -46,13 +46,15 @@ const MainWindow = new Lang.Class({
_init: function(app) {
this._configureId = 0;
-
- this.window = new Gtk.ApplicationWindow({ application: app,
- width_request: _WINDOW_MIN_WIDTH,
- height_request: _WINDOW_MIN_HEIGHT,
- window_position: Gtk.WindowPosition.CENTER,
- hide_titlebar_when_maximized: true,
- title: _("Maps") });
+ let ui = Utils.getUIObject('main-window', [ 'app-window',
+ 'window-content',
+ 'search-entry',
+ 'track-user-button']);
+ let grid = ui.windowContent,
+ toggle = ui.trackUserButton;
+ this._searchEntry = ui.searchEntry;
+ this.window = ui.appWindow;
+ this.window.application = app;
Utils.initActions(this.window, [
{
@@ -103,22 +105,12 @@ const MainWindow = new Lang.Class({
this.window.connect('window-state-event',
Lang.bind(this, this._onWindowStateEvent));
- let builder = new Gtk.Builder();
- builder.add_from_resource('/org/gnome/maps/main-window.ui');
-
- let grid = builder.get_object('window-content');
- grid.set_orientation (Gtk.Orientation.VERTICAL);
- this.window.add(grid);
-
- this._searchEntry = builder.get_object('search-entry');
this._searchEntry.connect('activate', Lang.bind(this, this._onSearchActivate));
this.mapView = new MapView.MapView();
let trackUserLocation = Application.settings.get_boolean('track-user-location');
- let toggle = builder.get_object('track-user-button');
-
let onViewMoved = Lang.bind(this,
function () {
if (!this.mapView.userLocationVisible())
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]