- try:
- import pygtk
- pygtk.require("2.0")
- except:
- pass
- try:
- import gtk
- except:
- print "You need to install pyGTK or GTKv2"
- sys.exit(1)
- import gobject
- TypeSpin = 0
- TypeEnum = 1
- class sceneinfo_treeview(gtk.TreeView):
- def __init__(self, knob):
- gtk.TreeView.__init__(self)
- self.knob = knob
- self.model = gtk.TreeStore(
- gobject.TYPE_STRING, # Name of the register
- gobject.TYPE_INT, # The associated value
- gobject.TYPE_BOOLEAN, # Is Spin?
- gobject.TYPE_BOOLEAN, # Is Enum?
- gobject.TYPE_INT, # The min value
- gobject.TYPE_INT, # The max value
- gobject.TYPE_INT, # The register number
- gobject.TYPE_BOOLEAN, # editable
- )
- self.set_model(self.model)
- renderer = gtk.CellRendererText()
- self.name_column = gtk.TreeViewColumn(
- "Register",
- renderer,
- text = 0
- )
- self.append_column(self.name_column)
- renderer_combo = gtk.CellRendererCombo()
- renderer_spin = gtk.CellRendererSpin()
- self.value_column = gtk.TreeViewColumn(
- "Value"
- )
- self.value_column.pack_start(renderer_combo, True)
- self.value_column.set_attributes(renderer_combo, text=1, visible=3, editable=7)
- self.value_column.pack_start(renderer_spin, True)
- self.value_column.set_attributes(renderer_spin, text=1, visible=2, editable=7)
- self.append_column(self.value_column)
- self.type_column = gtk.TreeViewColumn(
- "Type",
- renderer,
- text = 7
- )
- self.append_column(self.type_column)
- self.show_all()
- def add(self, name, value, registernumber, type, min, max, editable):
- if type == TypeEnum:
- enum = True
- spin = False
- else:
- enum = False
- spin = True
- iter = self.model.append(
- None,
- (
- name,
- value,
- spin,
- enum,
- min,
- max,
- registernumber,
- editable,
- )
- )

By: silwol | Date: Aug 21 2007 06:45 | Format: None | Expires: never | Size: 2.04 KB | Hits: 1280
Latest pastes
2 hours ago
5 days ago
7 days ago
9 days ago
9 days ago