/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 preferences/plugins.py

  • Committer: rodney.dawes at canonical
  • Date: 2008-10-25 06:02:09 UTC
  • Revision ID: rodney.dawes@canonical.com-20081025060209-irlizouino63cs1m
        * preferences/__init__.py:
        Remove the dialog separator
        Remove useless extra call to self._create_pages()
        Make the default window size smaller
        Set the default border width on various widgets
        Set the current notebook page to the first one

        * preferences/identity.py:
        Set various border widths appropriately
        Align the labels to the left
        Remove the unneeded bold markup from the labels
        Change the "User Id" label to "E-Mail"
        Align the radio group labels to the top of the groups

        * preferences/plugins.py:
        Set various border widths appropriately
        Set the default paned position to something more sensible
        Set the shadow type on the treeview's scrolled window to in
        Align the Author and Version labels to the left

Show diffs side-by-side

added added

removed removed

Lines of Context:
14
14
# along with this program; if not, write to the Free Software
15
15
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
16
 
17
 
from gi.repository import Gtk
18
 
 
19
 
 
20
 
class PluginsPage(Gtk.Paned):
21
 
 
 
17
try:
 
18
    import pygtk
 
19
    pygtk.require("2.0")
 
20
except:
 
21
    pass
 
22
 
 
23
import gtk
 
24
 
 
25
class PluginsPage(gtk.VPaned):
22
26
    def __init__(self):
23
 
        super(PluginsPage, self).__init__()
24
 
        self.set_orientation(Gtk.Orientation.VERTICAL)
 
27
        gtk.VPaned.__init__(self)
25
28
        self.set_border_width(12)
26
29
        self.set_position(216)
27
30
 
28
 
        scrolledwindow = Gtk.ScrolledWindow()
29
 
        scrolledwindow.set_policy(
30
 
            Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC)
31
 
        scrolledwindow.set_shadow_type(Gtk.ShadowType.IN)
32
 
        self.model = Gtk.ListStore(str, str)
33
 
        treeview = Gtk.TreeView()
 
31
        scrolledwindow = gtk.ScrolledWindow()
 
32
        scrolledwindow.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
 
33
        scrolledwindow.set_shadow_type(gtk.SHADOW_IN)
 
34
        self.model = gtk.ListStore(str, str)
 
35
        treeview = gtk.TreeView()
34
36
        scrolledwindow.add(treeview)
35
37
        self.pack1(scrolledwindow, resize=True, shrink=False)
36
38
 
37
 
        self.table = Gtk.Table(columns=2)
 
39
        self.table = gtk.Table(columns=2)
38
40
        self.table.set_border_width(12)
39
41
        self.table.set_row_spacings(6)
40
42
        self.table.set_col_spacings(6)
42
44
        treeview.set_headers_visible(False)
43
45
        treeview.set_model(self.model)
44
46
        treeview.connect("row-activated", self.row_selected)
45
 
        treeview.connect("cursor-changed", self.row_selected)
46
47
 
47
 
        cell = Gtk.CellRendererText()
48
 
        column = Gtk.TreeViewColumn()
49
 
        column.pack_start(cell, True)
 
48
        cell = gtk.CellRendererText()
 
49
        column = gtk.TreeViewColumn()
 
50
        column.pack_start(cell, expand=True)
50
51
        column.add_attribute(cell, "text", 0)
51
52
        treeview.append_column(column)
52
53
 
53
 
        cell = Gtk.CellRendererText()
54
 
        column = Gtk.TreeViewColumn()
55
 
        column.pack_start(cell, True)
 
54
        cell = gtk.CellRendererText()
 
55
        column = gtk.TreeViewColumn()
 
56
        column.pack_start(cell, expand=True)
56
57
        column.add_attribute(cell, "text", 1)
57
58
        treeview.append_column(column)
58
 
 
 
59
        
59
60
        import bzrlib.plugin
60
61
        plugins = bzrlib.plugin.plugins()
61
62
        plugin_names = plugins.keys()
62
63
        plugin_names.sort()
63
64
        for name in plugin_names:
64
65
            self.model.append([name, getattr(plugins[name], '__file__', None)])
65
 
 
66
 
        scrolledwindow = Gtk.ScrolledWindow()
67
 
        scrolledwindow.set_policy(
68
 
            Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC)
 
66
                 
 
67
        scrolledwindow = gtk.ScrolledWindow()
 
68
        scrolledwindow.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
69
69
        scrolledwindow.add_with_viewport(self.table)
70
70
        self.pack2(scrolledwindow, resize=False, shrink=True)
71
71
        self.show()
72
72
 
73
 
    def row_selected(self, tv, path=None, tvc=None):
74
 
        if path is None:
75
 
            (path, focus) = tv.get_cursor()
76
 
        if path is None:
77
 
            # The event was fired as the widget was destroyed.
78
 
            return
 
73
    def row_selected(self, tv, path, tvc):
79
74
        import bzrlib
80
75
        p = bzrlib.plugin.plugins()[self.model[path][0]].module
81
76
        from inspect import getdoc
84
79
            self.table.remove(w)
85
80
 
86
81
        if getattr(p, '__author__', None) is not None:
87
 
            align = Gtk.Alignment.new(0.0, 0.5, 0.0, 0.0)
88
 
            label = Gtk.Label()
 
82
            align = gtk.Alignment(0.0, 0.5)
 
83
            label = gtk.Label()
89
84
            label.set_markup("<b>Author:</b>")
90
85
            align.add(label)
91
 
            self.table.attach(align, 0, 1, 0, 1, Gtk.AttachOptions.FILL, Gtk.AttachOptions.FILL)
 
86
            self.table.attach(align, 0, 1, 0, 1, gtk.FILL, gtk.FILL)
92
87
            align.show()
93
88
            label.show()
94
89
 
95
 
            align = Gtk.Alignment.new(0.0, 0.5, 0.0, 0.0)
96
 
            author = Gtk.Label()
 
90
            align = gtk.Alignment(0.0, 0.5)
 
91
            author = gtk.Label()
97
92
            author.set_text(p.__author__)
98
93
            author.set_selectable(True)
99
94
            align.add(author)
100
 
            self.table.attach(align, 1, 2, 0, 1, Gtk.AttachOptions.EXPAND | Gtk.AttachOptions.FILL, Gtk.AttachOptions.FILL)
 
95
            self.table.attach(align, 1, 2, 0, 1, gtk.EXPAND | gtk.FILL, gtk.FILL)
101
96
 
102
97
        if getattr(p, '__version__', None) is not None:
103
 
            align = Gtk.Alignment.new(0.0, 0.5, 0.0, 0.0)
104
 
            label = Gtk.Label()
 
98
            align = gtk.Alignment(0.0, 0.5)
 
99
            label = gtk.Label()
105
100
            label.set_markup("<b>Version:</b>")
106
101
            align.add(label)
107
 
            self.table.attach(align, 0, 1, 0, 1, Gtk.AttachOptions.FILL, Gtk.AttachOptions.FILL)
 
102
            self.table.attach(align, 0, 1, 0, 1, gtk.FILL, gtk.FILL)
108
103
            align.show()
109
104
            label.show()
110
105
 
111
 
            align = Gtk.Alignment.new(0.0, 0.5, 0.0, 0.0)
112
 
            author = Gtk.Label()
 
106
            align = gtk.Alignment(0.0, 0.5)
 
107
            author = gtk.Label()
113
108
            author.set_text(p.__version__)
114
109
            author.set_selectable(True)
115
110
            align.add(author)
116
 
            self.table.attach(align, 1, 2, 0, 1, Gtk.AttachOptions.EXPAND | Gtk.AttachOptions.FILL, Gtk.AttachOptions.FILL)
 
111
            self.table.attach(align, 1, 2, 0, 1, gtk.EXPAND | gtk.FILL, gtk.FILL)
117
112
 
118
113
        if getdoc(p) is not None:
119
 
            align = Gtk.Alignment.new(0.0, 0.5, 0.0, 0.0)
120
 
            description = Gtk.Label()
 
114
            align = gtk.Alignment(0.0, 0.5)
 
115
            description = gtk.Label()
121
116
            description.set_text(getdoc(p))
122
117
            description.set_selectable(True)
123
118
            align.add(description)
124
 
            self.table.attach(align, 0, 2, 1, 2, Gtk.AttachOptions.EXPAND | Gtk.AttachOptions.FILL, Gtk.AttachOptions.FILL)
 
119
            self.table.attach(align, 0, 2, 1, 2, gtk.EXPAND | gtk.FILL, gtk.FILL)
125
120
 
126
121
        self.table.show_all()
 
122
 
 
123