summaryrefslogtreecommitdiff
path: root/examples/gobject/editable-interface.py
blob: 70ba1dc2fa55ab4a52d9922e1d769a1e89d34592 (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
import gtk
import gobject


class EditableLabel(gtk.Entry, gtk.Editable):

    def __init__(self, text):
        gtk.Entry.__init__(self, 100)
        self.set_text(text)

    def do_do_delete_text(self, start_pos, end_pos):
        print "do_do_delete_text", start_pos, end_pos
        gtk.Entry.do_do_delete_text(self, start_pos, end_pos)

gobject.type_register(EditableLabel)

if __name__ == '__main__':
    w = gtk.Window()
    vbox = gtk.VBox()
    w.add(vbox)
    label = EditableLabel("Foo Bar Zbr")
    vbox.add(label)
    bt = gtk.Button("delete word")
    def delete_word(bt):
        label.delete_text(4, 7)
    bt.connect("clicked", delete_word)
    vbox.add(bt)
    w.connect("destroy", lambda w: gtk.main_quit())
    w.show_all()
    gtk.main()