blob: a06a08d6a838dfdd130b678a379eecbee547977e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
from gi.repository import Gtk
from pychrysalide.features import *
DEFAULT_MSG = 'No active loaded binary'
class HelloPanel(PanelItem):
def __init__(self):
"""Initialize the GUI panel."""
self._label = Gtk.Label()
self._label.set_text(DEFAULT_MSG)
params = {
'name' : 'Hello',
'widget' : self._label,
'personality' : PanelItem.PIP_SINGLETON,
'lname' : 'Hello panel description',
'dock' : True,
'path' : 'MEN'
}
super(HelloPanel, self).__init__(**params)
def _change_content(self, old, new):
"""Get notified about loaded content change."""
if type(new) is LoadedBinary:
count = len(list(new.processor.instrs))
self._label.set_text('Loaded binary with %u instructions' % count)
else:
self._label.set_text(DEFAULT_MSG)
|