Merge lp:~jelmer/bzr-gtk/vertical-layout into lp:bzr-gtk/gtk2

Proposed by Jelmer Vernooij
Status: Superseded
Proposed branch: lp:~jelmer/bzr-gtk/vertical-layout
Merge into: lp:bzr-gtk/gtk2
Diff against target: 161 lines (+56/-13)
3 files modified
NEWS (+5/-0)
branchview/treeview.py (+4/-4)
viz/branchwin.py (+47/-9)
To merge this branch: bzr merge lp:~jelmer/bzr-gtk/vertical-layout
Reviewer Review Type Date Requested Status
John A Meinel Needs Information
Review via email: mp+50302@code.launchpad.net

Description of the change

Patch from Ximin Luo to allow using bzr viz in "widescreen mode" where the
revision details are shown next to the graph.

https://bugs.launchpad.net/bzr-gtk/+bug/649273/+attachment/1645811/+files/bzr-gtk_vertical.png

To post a comment you must log in.
lp:~jelmer/bzr-gtk/vertical-layout updated
712. By Jelmer Vernooij

Add lock dialog. (Daniel Schierbeck)

713. By Jelmer Vernooij

Remove some unused imports, fix some formatting.

Revision history for this message
John A Meinel (jameinel) wrote :

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 2/18/2011 5:01 AM, Jelmer Vernooij wrote:
> Jelmer Vernooij has proposed merging lp:~jelmer/bzr-gtk/vertical-layout into lp:bzr-gtk.
>
> Requested reviews:
> Bazaar GTK maintainers (bzr-gtk)
> Related bugs:
> #271822 bad characters in branchview/treemodel.py
> https://bugs.launchpad.net/bugs/271822
> #649273 add vertical layout option
> https://bugs.launchpad.net/bugs/649273
>
> For more details, see:
> https://code.launchpad.net/~jelmer/bzr-gtk/vertical-layout/+merge/50302
>
> Patch from Ximin Luo to allow using bzr viz in "widescreen mode" where the
> revision details are shown next to the graph.
>
> https://bugs.launchpad.net/bzr-gtk/+bug/649273/+attachment/1645811/+files/bzr-gtk_vertical.png

There seem to be some UTF-8 issues with the patch:

- -__copyright__ = "Copyright © 2005 Canonical Ltd."
+__copyright__ = "Copyright © 2005 Canonical Ltd."
 __author__ = "Gary van der Merwe <email address hidden>"

That looks like someone opened a UTF-8 file as iso-8859-1 and then saved
it as UTF-8 again.

This also seems to carry a lot more changes than just that. Since it
seems to be adding credits.pickle, and changes to HACKING, etc.

 review: needsinfo

John
=:_>

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk1enIoACgkQJdeBCYSNAAN1dwCgjNBs6UCnPuJAcdHu3x/Ijt23
XoMAn0pdjy5vOZDc7V/2Vu67IzwAmf+N
=68le
-----END PGP SIGNATURE-----

review: Needs Information
Revision history for this message
Jelmer Vernooij (jelmer) wrote :

Garr, this is a rebase gone wrong. Sorry.

lp:~jelmer/bzr-gtk/vertical-layout updated
714. By Ximin Luo

Add option to use 'bzr viz' with a vertical layout.

715. By Jelmer Vernooij

Merge trunk.

716. By Jelmer Vernooij

Merge trunk.

717. By Jelmer Vernooij

Fix some formatting.

718. By Jelmer Vernooij

Construct model early.

719. By Jelmer Vernooij

Fix signal handling.

Unmerged revisions

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'NEWS'
--- NEWS 2011-02-18 13:16:37 +0000
+++ NEWS 2011-02-19 12:30:25 +0000
@@ -20,6 +20,11 @@
20 20
21 * Add lock dialog. (Daniel Schierbeck, #93652)21 * Add lock dialog. (Daniel Schierbeck, #93652)
2222
23 FEATURES
24
25 * Add option to use "bzr viz" with a vertical layout.
26 (Ximin Luo, #649273)
27
230.99.1 2010-08-26280.99.1 2010-08-26
2429
25 BUG FIXES30 BUG FIXES
2631
=== modified file 'branchview/treeview.py'
--- branchview/treeview.py 2011-02-18 13:16:37 +0000
+++ branchview/treeview.py 2011-02-19 12:30:25 +0000
@@ -359,7 +359,7 @@
359 cell.set_property("width-chars", 15)359 cell.set_property("width-chars", 15)
360 cell.set_property("ellipsize", pango.ELLIPSIZE_END)360 cell.set_property("ellipsize", pango.ELLIPSIZE_END)
361 self.revno_column = gtk.TreeViewColumn("Revision No")361 self.revno_column = gtk.TreeViewColumn("Revision No")
362 self.revno_column.set_resizable(False)362 self.revno_column.set_resizable(True)
363 self.revno_column.set_sizing(gtk.TREE_VIEW_COLUMN_FIXED)363 self.revno_column.set_sizing(gtk.TREE_VIEW_COLUMN_FIXED)
364 self.revno_column.set_fixed_width(cell.get_size(self.treeview)[2])364 self.revno_column.set_fixed_width(cell.get_size(self.treeview)[2])
365 self.revno_column.pack_start(cell, expand=True)365 self.revno_column.pack_start(cell, expand=True)
@@ -368,7 +368,7 @@
368368
369 self.graph_cell = CellRendererGraph()369 self.graph_cell = CellRendererGraph()
370 self.graph_column = gtk.TreeViewColumn()370 self.graph_column = gtk.TreeViewColumn()
371 self.graph_column.set_resizable(False)371 self.graph_column.set_resizable(True)
372 self.graph_column.set_sizing(gtk.TREE_VIEW_COLUMN_FIXED)372 self.graph_column.set_sizing(gtk.TREE_VIEW_COLUMN_FIXED)
373 self.graph_column.pack_start(self.graph_cell, expand=True)373 self.graph_column.pack_start(self.graph_cell, expand=True)
374 self.graph_column.add_attribute(self.graph_cell, "node", treemodel.NODE)374 self.graph_column.add_attribute(self.graph_cell, "node", treemodel.NODE)
@@ -381,7 +381,7 @@
381 cell.set_property("width-chars", 65)381 cell.set_property("width-chars", 65)
382 cell.set_property("ellipsize", pango.ELLIPSIZE_END)382 cell.set_property("ellipsize", pango.ELLIPSIZE_END)
383 self.summary_column = gtk.TreeViewColumn("Summary")383 self.summary_column = gtk.TreeViewColumn("Summary")
384 self.summary_column.set_resizable(False)384 self.summary_column.set_resizable(True)
385 self.summary_column.set_expand(True)385 self.summary_column.set_expand(True)
386 self.summary_column.set_sizing(gtk.TREE_VIEW_COLUMN_FIXED)386 self.summary_column.set_sizing(gtk.TREE_VIEW_COLUMN_FIXED)
387 self.summary_column.set_fixed_width(cell.get_size(self.treeview)[2])387 self.summary_column.set_fixed_width(cell.get_size(self.treeview)[2])
@@ -405,7 +405,7 @@
405 cell.set_property("ellipsize", pango.ELLIPSIZE_END)405 cell.set_property("ellipsize", pango.ELLIPSIZE_END)
406 self.date_column = gtk.TreeViewColumn("Date")406 self.date_column = gtk.TreeViewColumn("Date")
407 self.date_column.set_visible(False)407 self.date_column.set_visible(False)
408 self.date_column.set_resizable(False)408 self.date_column.set_resizable(True)
409 self.date_column.set_sizing(gtk.TREE_VIEW_COLUMN_FIXED)409 self.date_column.set_sizing(gtk.TREE_VIEW_COLUMN_FIXED)
410 self.date_column.set_fixed_width(130)410 self.date_column.set_fixed_width(130)
411 self.date_column.pack_start(cell, expand=True)411 self.date_column.pack_start(cell, expand=True)
412412
=== modified file 'viz/branchwin.py'
--- viz/branchwin.py 2011-02-18 13:01:03 +0000
+++ viz/branchwin.py 2011-02-19 12:30:25 +0000
@@ -98,7 +98,7 @@
98 self.refresh_action.connect("activate", self._refresh_clicked)98 self.refresh_action.connect("activate", self._refresh_clicked)
99 self.refresh_action.connect_accelerator()99 self.refresh_action.connect_accelerator()
100100
101 self.construct()101 self.vbox = self.construct()
102102
103 def _save_size_on_destroy(self, widget, config_name):103 def _save_size_on_destroy(self, widget, config_name):
104 """Creates a hook that saves the size of widget to config option 104 """Creates a hook that saves the size of widget to config option
@@ -117,18 +117,15 @@
117 vbox = gtk.VBox(spacing=0)117 vbox = gtk.VBox(spacing=0)
118 self.add(vbox)118 self.add(vbox)
119119
120 self.paned = gtk.VPaned()120 # order is important here
121 self.paned.pack1(self.construct_top(), resize=False, shrink=True)121 paned = self.construct_paned()
122 self.paned.pack2(self.construct_bottom(), resize=True, shrink=False)
123 self.paned.show()
124
125 nav = self.construct_navigation()122 nav = self.construct_navigation()
126 menubar = self.construct_menubar()123 menubar = self.construct_menubar()
124
127 vbox.pack_start(menubar, expand=False, fill=True)125 vbox.pack_start(menubar, expand=False, fill=True)
128 vbox.pack_start(nav, expand=False, fill=True)126 vbox.pack_start(nav, expand=False, fill=True)
129127 vbox.pack_start(paned, expand=True, fill=True)
130 vbox.pack_start(self.paned, expand=True, fill=True)128 vbox.set_focus_child(paned)
131 vbox.set_focus_child(self.paned)
132129
133 self.treeview.connect('revision-selected',130 self.treeview.connect('revision-selected',
134 self._treeselection_changed_cb)131 self._treeselection_changed_cb)
@@ -138,6 +135,21 @@
138 self.treeview.connect('tag-added', lambda w, t, r: self._update_tags())135 self.treeview.connect('tag-added', lambda w, t, r: self._update_tags())
139 vbox.show()136 vbox.show()
140137
138 return vbox
139
140 def construct_paned(self):
141 """Construct the main HPaned/VPaned contents."""
142 if self.config.get_user_option('viz-vertical') == 'True':
143 self.paned = gtk.HPaned()
144 else:
145 self.paned = gtk.VPaned()
146
147 self.paned.pack1(self.construct_top(), resize=False, shrink=True)
148 self.paned.pack2(self.construct_bottom(), resize=True, shrink=False)
149 self.paned.show()
150
151 return self.paned
152
141 def construct_menubar(self):153 def construct_menubar(self):
142 menubar = gtk.MenuBar()154 menubar = gtk.MenuBar()
143155
@@ -189,6 +201,12 @@
189 view_menu_compact.set_active(self.compact_view)201 view_menu_compact.set_active(self.compact_view)
190 view_menu_compact.connect('activate', self._brokenlines_toggled_cb)202 view_menu_compact.connect('activate', self._brokenlines_toggled_cb)
191203
204 view_menu_vertical = gtk.CheckMenuItem("Side-by-side Layout")
205 view_menu_vertical.set_active(False)
206 if self.config.get_user_option('viz-vertical') == 'True':
207 view_menu_vertical.set_active(True)
208 view_menu_vertical.connect('toggled', self._vertical_layout)
209
192 view_menu_diffs = gtk.CheckMenuItem("Show Diffs")210 view_menu_diffs = gtk.CheckMenuItem("Show Diffs")
193 view_menu_diffs.set_active(False)211 view_menu_diffs.set_active(False)
194 if self.config.get_user_option('viz-show-diffs') == 'True':212 if self.config.get_user_option('viz-show-diffs') == 'True':
@@ -209,6 +227,7 @@
209227
210 view_menu.add(view_menu_toolbar)228 view_menu.add(view_menu_toolbar)
211 view_menu.add(view_menu_compact)229 view_menu.add(view_menu_compact)
230 view_menu.add(view_menu_vertical)
212 view_menu.add(gtk.SeparatorMenuItem())231 view_menu.add(gtk.SeparatorMenuItem())
213 view_menu.add(view_menu_diffs)232 view_menu.add(view_menu_diffs)
214 view_menu.add(view_menu_wide_diffs)233 view_menu.add(view_menu_wide_diffs)
@@ -531,6 +550,25 @@
531 self.toolbar.hide()550 self.toolbar.hide()
532 self.config.set_user_option('viz-toolbar-visible', col.get_active())551 self.config.set_user_option('viz-toolbar-visible', col.get_active())
533552
553 def _vertical_layout(self, col):
554 """Toggle the layout vertical/horizontal"""
555 self.config.set_user_option('viz-vertical', str(col.get_active()))
556
557 old = self.paned
558 self.vbox.remove(old)
559 self.vbox.pack_start(self.construct_paned(), expand=True, fill=True)
560 self._make_diff_paned_nonzero_size()
561 self._make_diff_nonzero_size()
562
563 self.treeview.emit('revision-selected')
564
565 def _make_diff_paned_nonzero_size(self):
566 """make sure the diff/revision pane isn't zero-width or zero-height"""
567 alloc = self.diff_paned.get_allocation()
568 if (alloc.width < 10) or (alloc.height < 10):
569 width, height = self.get_size()
570 self.diff_paned.set_size_request(width/3, int(height / 2.5))
571
534 def _make_diff_nonzero_size(self):572 def _make_diff_nonzero_size(self):
535 """make sure the diff isn't zero-width or zero-height"""573 """make sure the diff isn't zero-width or zero-height"""
536 alloc = self.diff.get_allocation()574 alloc = self.diff.get_allocation()

Subscribers

People subscribed via source and target branches

to all changes: