/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 annotate/config.py

  • Committer: Jelmer Vernooij
  • Date: 2006-05-19 16:56:46 UTC
  • mfrom: (0.1.25 gannotate)
  • Revision ID: jelmer@samba.org-20060519165646-0d867938fdbc9097
Merge in Dan Loda's gannotate plugin and put it in annotate/

Show diffs side-by-side

added added

removed removed

Lines of Context:
20
20
 
21
21
from bzrlib.config import config_dir
22
22
import bzrlib.util.configobj.configobj as configobj
 
23
from bzrlib.util.configobj.validate import Validator
23
24
 
24
25
 
25
26
gannotate_configspec = (
51
52
                                     configspec=gannotate_configspec)
52
53
        self.window = window
53
54
        self.pane = window.pane
 
55
        self.span_selector = window.span_selector
54
56
        
55
57
        self.initial_comment = ["gannotate plugin configuration"]
56
 
        self['window']['width'] = 750
57
 
        self['window']['height'] = 550
58
 
        self['window']['maximized'] = False
59
 
        self['window']['x'] = 0
60
 
        self['window']['y'] = 0
61
 
        self['window']['pane_position'] = 325
62
 
        self['spans']['max_custom_spans'] = 4
63
 
        self['spans']['custom_spans'] = []
 
58
        self.validate(Validator())
64
59
 
65
60
        self.apply()
66
61
        self._connect_signals()
76
71
        if self["window"]["maximized"]:
77
72
            self.window.maximize()
78
73
 
 
74
        self.span_selector.max_custom_spans =\
 
75
                self["spans"]["max_custom_spans"]
 
76
 
79
77
        # XXX Don't know how to set an empty list as default in
80
78
        # gannotate_configspec.
 
79
        try:
 
80
            for span in self["spans"]["custom_spans"]:
 
81
                self.span_selector.add_custom_span(span)
 
82
        except KeyError:
 
83
            pass
 
84
 
81
85
    def _connect_signals(self):
82
86
        self.window.connect("destroy", self._write)
83
87
        self.window.connect("configure-event", self._save_window_props)
84
88
        self.window.connect("window-state-event", self._save_window_props)
85
89
        self.pane.connect("notify", self._save_pane_props)
 
90
        self.span_selector.connect("custom-span-added",
 
91
                                   self._save_custom_spans)
86
92
 
87
93
    def _save_window_props(self, w, e, *args):
88
94
        if e.window.get_state() & gtk.gdk.WINDOW_STATE_MAXIMIZED: