summaryrefslogtreecommitdiff
path: root/misc.py
diff options
context:
space:
mode:
Diffstat (limited to 'misc.py')
-rw-r--r--misc.py22
1 files changed, 20 insertions, 2 deletions
diff --git a/misc.py b/misc.py
index 3f26df8..c5b0c2e 100644
--- a/misc.py
+++ b/misc.py
@@ -20,9 +20,27 @@ def unique(seq):
return t(c for c in seq if not (c in seen or seen.append(c)))
class Button(QtGui.QPushButton):
+ iconSize=32
"""A simple Button class which calls $onClick when clicked."""
- def __init__(self, caption, onClick=None, parent=None):
- QtGui.QPushButton.__init__(self, caption, parent)
+ def __init__(self, caption, onClick=None, iconPath=None, iconOnly=False, parent=None):
+ QtGui.QPushButton.__init__(self, parent)
if onClick:
self.connect(self, QtCore.SIGNAL('clicked(bool)'), onClick)
+ if iconPath:
+ self.changeIcon(iconPath)
+
+ if not(iconPath and iconOnly):
+ QtGui.QPushButton.setText(self, caption)
+
+ self.setToolTip(caption)
+
+ def setText(self, caption):
+ self.setToolTip(caption)
+ if self.icon()==None:
+ self.setText(caption)
+
+ def changeIcon(self, iconPath):
+ icon=QtGui.QIcon()
+ icon.addFile(iconPath, QtCore.QSize(self.iconSize, self.iconSize))
+ self.setIcon(icon)