/b-gtk/fix-viz

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/b-gtk/fix-viz

« back to all changes in this revision

Viewing changes to diff.py

  • Committer: Jasper Groenewegen
  • Date: 2008-07-25 08:04:02 UTC
  • mto: This revision was merged to the branch mainline in revision 571.
  • Revision ID: colbrac@xs4all.nl-20080725080402-kng97ln26np9jfx6
Change from checkbox to menu item in bzr vis, add menu bar + item in gdiff

Show diffs side-by-side

added added

removed removed

Lines of Context:
300
300
        super(DiffWidget, self).__init__()
301
301
 
302
302
        # The file hierarchy: a scrollable treeview
303
 
        vbox = gtk.VBox()
304
 
        self.checkbox_wraplines = gtk.CheckButton(_i18n("W_rap long lines"), True)
305
 
        self.checkbox_wraplines.set_active(False) # TO DO: Read from config
306
 
        self.checkbox_wraplines.connect("toggled", self._on_wraplines_toggled)
307
 
        self.checkbox_wraplines.show()
308
303
        scrollwin = gtk.ScrolledWindow()
309
304
        scrollwin.set_policy(gtk.POLICY_NEVER, gtk.POLICY_AUTOMATIC)
310
305
        scrollwin.set_shadow_type(gtk.SHADOW_IN)
 
306
        self.pack1(scrollwin)
311
307
        scrollwin.show()
312
 
        vbox.pack_start(scrollwin, True, True, 0)
313
 
        vbox.pack_end(self.checkbox_wraplines, False, False, 5)
314
 
        self.pack1(vbox)
315
308
        
316
309
        self.model = gtk.TreeStore(str, str)
317
310
        self.treeview = gtk.TreeView(self.model)
415
408
        
416
409
        self.diff_view.show_diff(specific_files)
417
410
    
418
 
    def _on_wraplines_toggled(self, widget):
 
411
    def _on_wraplines_toggled(self, widget=None, wrap=False):
419
412
        """Callback for when the wrap lines checkbutton is toggled"""
420
 
        if self.checkbox_wraplines.get_active():
 
413
        if wrap or widget.get_active():
421
414
            self.diff_view.sourceview.set_wrap_mode(gtk.WRAP_WORD)
422
415
        else:
423
416
            self.diff_view.sourceview.set_wrap_mode(gtk.WRAP_NONE)
447
440
        self.vbox = gtk.VBox()
448
441
        self.add(self.vbox)
449
442
        self.vbox.show()
 
443
        self.diff = DiffWidget()
 
444
        self.vbox.pack_end(self.diff, True, True, 0)
 
445
        self.diff.show_all()
 
446
        # Build after DiffWidget to connect signals
 
447
        menubar = self._get_menu_bar()
 
448
        self.vbox.pack_start(menubar, False, False, 0)
450
449
        hbox = self._get_button_bar(operations)
451
450
        if hbox is not None:
452
 
            self.vbox.pack_start(hbox, expand=False, fill=True)
453
 
        self.diff = DiffWidget()
454
 
        self.vbox.add(self.diff)
455
 
        self.diff.show_all()
456
 
 
 
451
            self.vbox.pack_start(hbox, False, True, 0)
 
452
        
 
453
    
 
454
    def _get_menu_bar(self):
 
455
        menubar = gtk.MenuBar()
 
456
        # View menu
 
457
        mb_view = gtk.MenuItem(_i18n("_View"))
 
458
        mb_view_menu = gtk.Menu()
 
459
        mb_view_wrapsource = gtk.CheckMenuItem(_i18n("Wrap _long lines"))
 
460
        mb_view_wrapsource.connect('activate', self.diff._on_wraplines_toggled)
 
461
        mb_view_wrapsource.show()
 
462
        mb_view_menu.append(mb_view_wrapsource)
 
463
        mb_view.show()
 
464
        mb_view.set_submenu(mb_view_menu)
 
465
        mb_view.show()
 
466
        menubar.append(mb_view)
 
467
        menubar.show()
 
468
        return menubar
 
469
    
457
470
    def _get_button_bar(self, operations):
458
471
        """Return a button bar to use.
459
472