ocarina/src/extra/gtknodes/button.py

63 lines
1.3 KiB
Python

#! /usr/bin/python
# To change this template, choose Tools | Templates
# and open the template in the editor.
__author__="bjschuma"
__date__ ="$May 18, 2010 3:29:19 PM$"
import gtk
from ocarina import vars
from ct import call
from gtknodes import Node
class Button(Node):
def __init__(self,elm):
Node.__init__(self,elm)
self["relief"] = "normal"
self.part = gtk.Button()
self.setattrs()
relief = gtk.RELIEF_NORMAL
if self["relief"] == "none":
relief = gtk.RELIEF_NONE
elif self["relief"] == "half":
relief = gtk.RELIEF_HALF
self.part.set_relief(relief)
self.add()
def add(self):
if len(self.children) == 0:
return
self.part.add(self.children[0].part)
def clear(self):
self.part.remove(self.children[0].part)
class VolumeButton(Node):
def __init__(self,elm):
Node.__init__(self,elm)
self["relief"] = "normal"
self.part = gtk.VolumeButton()
self.setattrs()
relief = gtk.RELIEF_NORMAL
if self["relief"] == "none":
relief = gtk.RELIEF_NONE
elif self["relief"] == "half":
relief = gtk.RELIEF_HALF
self.part.set_relief(relief)
adj = self.part.get_adjustment()
adj.set_page_increment(vars.VOLUMEINCR)
self.part.set_value(vars.VOLUME)
self.part.connect("value-changed", self.changed)
def changed(self, widget, value):
call.volset(value)