#!/usr/bin/env python try: import pygtk pygtk.require('2.0') except: pass try: import gtk import gtk.glade except: print('GTK not available') sys.exit(1) class Buglump: def __init__(self): self.builder = gtk.Builder() self.builder.add_from_file('keyboard.glade') self.builder.connect_signals(self) self.entry1 = self.builder.get_object('entry1') self.window = self.builder.get_object('window1') self.dialog1 = self.builder.get_object('dialog1') self.num_entry = self.builder.get_object('num_entry') self.window.show() self.current_entry = self.entry1 def on_entry_button_press_event(self, widget, data=None): self.current_entry = widget self.response = self.dialog1.run() def on_kb_clicked(self, widget, data=None): self.current = self.num_entry.get_text() self.current = self.current + widget.get_label() self.num_entry.set_text(self.current) def on_kb_back_clicked(self, widget, data=None): self.current = self.num_entry.get_text() self.current = self.current[:-1] self.num_entry.set_text(self.current) def on_kb_sign_clicked(self, widget, data=None): self.current = self.num_entry.get_text() if self.current == '': self.current = '-' elif self.current[0] == '-': self.current = self.current[1:] else: self.current = '-' + self.current self.num_entry.set_text(self.current) def on_kb_clear_clicked(self, widget, data=None): self.num_entry.set_text('') def on_kb_save_clicked(self, widget, data=None): self.current_entry.set_text(self.num_entry.get_text()) self.num_entry.set_text('') self.dialog1.hide() def on_window1_destroy(self, object, data=None): print 'quit with cancel' gtk.main_quit() if __name__ == "__main__": main = Buglump() gtk.main()