2016-05-24 18:22:21 +00:00
|
|
|
try:
|
|
|
|
from PySide import QtCore, QtGui
|
|
|
|
except ImportError:
|
|
|
|
from PyQt4 import QtCore, QtGui
|
2016-04-24 10:45:11 +00:00
|
|
|
|
|
|
|
|
|
|
|
class DataLabel(QtGui.QLabel):
|
|
|
|
|
|
|
|
def paintEvent(self, event):
|
|
|
|
painter = QtGui.QPainter(self)
|
|
|
|
metrics = QtGui.QFontMetrics(self.font())
|
|
|
|
text = metrics.elidedText(self.text(), QtCore.Qt.ElideRight, self.width())
|
|
|
|
painter.drawText(self.rect(), self.alignment(), text)
|
|
|
|
|
|
|
|
|
|
|
|
class CenteredWidget(QtGui.QWidget):
|
|
|
|
|
|
|
|
def __init__(self):
|
|
|
|
super(CenteredWidget, self).__init__()
|
|
|
|
self.center()
|
|
|
|
|
|
|
|
def center(self):
|
|
|
|
qr = self.frameGeometry()
|
|
|
|
cp = QtGui.QDesktopWidget().availableGeometry().center()
|
|
|
|
qr.moveCenter(cp)
|
|
|
|
self.move(qr.topLeft())
|
2016-05-18 21:38:21 +00:00
|
|
|
|
|
|
|
|
|
|
|
class QRightClickButton(QtGui.QPushButton):
|
2016-05-29 13:49:00 +00:00
|
|
|
|
2016-05-18 21:38:21 +00:00
|
|
|
def __init__(self, parent):
|
|
|
|
super(QRightClickButton, self).__init__(parent)
|
|
|
|
|
|
|
|
def mousePressEvent(self, event):
|
|
|
|
if event.button() == QtCore.Qt.RightButton:
|
|
|
|
self.emit(QtCore.SIGNAL("rightClicked()"))
|
|
|
|
else:
|
|
|
|
super(QRightClickButton, self).mousePressEvent(event)
|
2016-05-29 13:49:00 +00:00
|
|
|
|
|
|
|
|
|
|
|
class RubberBand(QtGui.QRubberBand):
|
|
|
|
|
|
|
|
def __init__(self):
|
|
|
|
super(RubberBand, self).__init__(QtGui.QRubberBand.Rectangle, None)
|
|
|
|
self.setPalette(QtGui.QPalette(QtCore.Qt.transparent))
|
|
|
|
self.pen = QtGui.QPen(QtCore.Qt.blue, 4)
|
|
|
|
self.pen.setStyle(QtCore.Qt.SolidLine)
|
|
|
|
self.painter = QtGui.QPainter()
|
|
|
|
|
|
|
|
def paintEvent(self, event):
|
|
|
|
|
|
|
|
self.painter.begin(self)
|
|
|
|
self.painter.setPen(self.pen)
|
|
|
|
self.painter.drawRect(event.rect())
|
|
|
|
self.painter.end()
|