/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 revisionview.py

  • Committer: Daniel Schierbeck
  • Date: 2008-04-01 20:13:52 UTC
  • mto: (450.1.16 trunk)
  • mto: This revision was merged to the branch mainline in revision 458.
  • Revision ID: daniel.schierbeck@gmail.com-20080401201352-de4cq9g7lrzpivys
Moved signature handling into signature widget.

Show diffs side-by-side

added added

removed removed

Lines of Context:
60
60
 
61
61
class SignatureTab(gtk.VBox):
62
62
 
63
 
    def __init__(self):
 
63
    def __init__(self, repository):
64
64
        self.key = None
 
65
        self.repository = repository
65
66
 
66
67
        super(SignatureTab, self).__init__(False, 6)
67
68
        signature_box = gtk.Table(rows=3, columns=3)
116
117
        self.pack_start(signature_box, expand=False)
117
118
        self.show_all()
118
119
 
 
120
    def set_revision(self, revision):
 
121
        self.revision = revision
 
122
        revid = revision.revision_id
 
123
 
 
124
        if self.repository.has_signature_for_revision_id(revid):
 
125
            signature_text = self.repository.get_signature_text(revid)
 
126
            self.show_signature(signature_text)
 
127
        else:
 
128
            self.show_no_signature()
 
129
 
 
130
 
119
131
    def show_no_signature(self):
120
132
        self.signature_key_id_label.hide()
121
133
        self.signature_key_id.set_text("")
176
188
 
177
189
        self.signature_trust_label.show()
178
190
        self.signature_trust.set_text('This key is ' + trust_text)
179
 
        
 
191
 
180
192
 
181
193
class RevisionView(gtk.Notebook):
182
194
    """ Custom widget for commit log details.
219
231
    def __init__(self, branch=None):
220
232
        gtk.Notebook.__init__(self)
221
233
 
 
234
        self._revision = None
 
235
        self._branch = branch
 
236
 
222
237
        self._create_general()
223
238
        self._create_relations()
224
239
        self._create_signature()
230
245
        self._show_callback = None
231
246
        self._clicked_callback = None
232
247
 
233
 
        self._revision = None
234
 
        self._branch = branch
235
 
 
236
248
        self.update_tags()
237
249
 
238
250
        self.set_file_id(None)
348
360
        self._add_tags()
349
361
 
350
362
    def _update_signature(self, widget, param):
351
 
        revid = self._revision.revision_id
352
 
 
353
 
        if self._branch.repository.has_signature_for_revision_id(revid):
354
 
            signature_text = self._branch.repository.get_signature_text(revid)
355
 
            self.signature_table.show_signature(signature_text)
356
 
        else:
357
 
            self.signature_table.show_no_signature()
 
363
        self.signature_table.set_revision(self._revision)
358
364
 
359
365
    def set_children(self, children):
360
366
        self._add_parents_or_children(children,
442
448
        vbox.show()
443
449
 
444
450
    def _create_signature(self):
445
 
        self.signature_table = SignatureTab()
 
451
        self.signature_table = SignatureTab(self._branch.repository)
446
452
        self.append_page(self.signature_table, tab_label=gtk.Label('Signature'))
447
453
        self.connect_after('notify::revision', self._update_signature)
448
454