/b-gtk/fix-viz

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/b-gtk/fix-viz
175 by Jelmer Vernooij
Add very simple gmissing command.
1
# Copyright (C) 2007 Jelmer Vernooij <jelmer@samba.org>
2
#
3
# This program is free software; you can redistribute it and/or modify
4
# it under the terms of the GNU General Public License as published by
5
# the Free Software Foundation; either version 2 of the License, or
6
# (at your option) any later version.
7
#
8
# This program is distributed in the hope that it will be useful,
9
# but WITHOUT ANY WARRANTY; without even the implied warranty of
10
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11
# GNU General Public License for more details.
12
#
13
# You should have received a copy of the GNU General Public License
14
# along with this program; if not, write to the Free Software
15
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
734.1.1 by Curtis Hovey
Mechanical changes made by pygi.convert.sh.
17
from gi.repository import Gtk
175 by Jelmer Vernooij
Add very simple gmissing command.
18
19
from bzrlib.missing import find_unmerged
20
713 by Jelmer Vernooij
Remove some unused imports, fix some formatting.
21
from bzrlib.plugins.gtk.revisionview import RevisionView
22
175 by Jelmer Vernooij
Add very simple gmissing command.
23
734.1.1 by Curtis Hovey
Mechanical changes made by pygi.convert.sh.
24
class MissingWindow(Gtk.Dialog):
175 by Jelmer Vernooij
Add very simple gmissing command.
25
    """Displays revisions present in one branch but missing in 
26
    another."""
27
    def __init__(self, local_branch, remote_branch):
28
        """ Initialize the Status window. """
734.1.1 by Curtis Hovey
Mechanical changes made by pygi.convert.sh.
29
        super(MissingWindow, self).__init__(flags=Gtk.DialogFlags.MODAL)
175 by Jelmer Vernooij
Add very simple gmissing command.
30
        self.set_title("Missing Revisions")
31
        self.local_branch = local_branch
32
        self.remote_branch = remote_branch
33
        (self.local_extra, self.remote_extra) = find_unmerged(
34
                local_branch, remote_branch)
35
        self._create()
36
37
    def _create_revisions_frame(self, revisions):
734.1.1 by Curtis Hovey
Mechanical changes made by pygi.convert.sh.
38
        extra_revs = Gtk.ScrolledWindow()
39
        vbox = Gtk.VBox()
175 by Jelmer Vernooij
Add very simple gmissing command.
40
        for rev in revisions:
412.1.12 by Daniel Schierbeck
Fixed bug in gmissing.
41
            rv = RevisionView()
42
            rv.set_revision(rev)
734.1.17 by Curtis Hovey
Updated gmissing to gtk3.
43
            vbox.pack_start(rv, True, True, 0)
175 by Jelmer Vernooij
Add very simple gmissing command.
44
        extra_revs.add_with_viewport(vbox)
734.1.1 by Curtis Hovey
Mechanical changes made by pygi.convert.sh.
45
        extra_revs.set_policy(Gtk.PolicyType.NEVER, Gtk.PolicyType.AUTOMATIC)
175 by Jelmer Vernooij
Add very simple gmissing command.
46
        return extra_revs
47
48
    def _create(self):
49
        self.set_default_size(600, 600)
775.1.4 by Curtis Hovey
Switched from Gtk.VPaned to Gtk.Paned.new(Gtk.Orientation.VERTICAL).
50
        paned = Gtk.Paned.new(Gtk.Orientation.VERTICAL)
175 by Jelmer Vernooij
Add very simple gmissing command.
51
734.1.17 by Curtis Hovey
Updated gmissing to gtk3.
52
        frame = Gtk.Frame(label="You have the following extra revisions:")
175 by Jelmer Vernooij
Add very simple gmissing command.
53
54
        extra_revs = self._create_revisions_frame(
55
                self.local_branch.repository.get_revisions(
56
                    map(lambda (x,y):y, self.local_extra)))
57
        frame.add(extra_revs)
179 by Jelmer Vernooij
Don't use scrolling inside revisions in missing window.
58
        paned.pack1(frame, resize=True, shrink=False)
175 by Jelmer Vernooij
Add very simple gmissing command.
59
60
        missing_revs = self._create_revisions_frame(
61
                self.remote_branch.repository.get_revisions(
62
                    map(lambda (x,y):y, self.remote_extra)))
63
734.1.17 by Curtis Hovey
Updated gmissing to gtk3.
64
        frame = Gtk.Frame(label="You are missing following revisions:")
175 by Jelmer Vernooij
Add very simple gmissing command.
65
        frame.add(missing_revs)
179 by Jelmer Vernooij
Don't use scrolling inside revisions in missing window.
66
67
        paned.pack2(frame, resize=False, shrink=True)
68
734.1.17 by Curtis Hovey
Updated gmissing to gtk3.
69
        self.get_content_area().pack_start(paned, True, True, 0)
70
        self.get_content_area().show_all()