Ejemplo n.º 1
0
    def __init__(self, parent=None):
        super(XOverlayWidget, self).__init__(parent)

        # define custom properties
        self._centralWidget = None
        self._result = None
        self._closable = True
        self._closeAlignment = QtCore.Qt.AlignTop | QtCore.Qt.AlignRight
        self._closeButton = XToolButton(self)
        self._closeButton.setShadowed(True)
        self._closeButton.setIcon(
            QtGui.QIcon(resources.find('img/overlay/close.png')))
        self._closeButton.setIconSize(QtCore.QSize(24, 24))
        self._closeButton.setToolTip('Close')

        # create the coloring for the overlay
        palette = self.palette()
        clr = QtGui.QColor('#222222')
        clr.setAlpha(210)
        palette.setColor(palette.Window, clr)
        self.setPalette(palette)
        self.setAutoFillBackground(True)

        # listen to the parents event filter
        parent.installEventFilter(self)

        # initialize the widget
        self.hide()
        self.move(0, 0)
        self.resize(parent.size())
        self._closeButton.clicked.connect(self.reject)
Ejemplo n.º 2
0
    def __init__(self, parent, windowFlags=0):
        windowFlags = QtCore.Qt.WindowFlags(windowFlags)
        super(XMdiSubWindow, self).__init__(parent, windowFlags)

        # define custom properties
        palette = self.palette()

        font = self.font()
        font.setBold(True)
        font.setPointSize(font.pointSize() + 2)

        self._titleBarFont = font
        self._titleBarBackground = palette.color(palette.Button)
        self._titleBarForeground = palette.color(palette.ButtonText)
        self._titleBarBorder = QtGui.QColor('black')

        # create the drop shadow effect
        eff = QtGui.QGraphicsDropShadowEffect(self)
        eff.setOffset(0, 0)
        eff.setBlurRadius(40)
        eff.setColor(palette.color(palette.Shadow))
        self.setGraphicsEffect(eff)

        # create the control buttons
        self._sysmenuBtn = XToolButton(self)
        self._sysmenuBtn.setIcon(self.windowIcon())
        self._sysmenuBtn.setPalette(palette)
        self._sysmenuBtn.setAutoRaise(True)
        self._sysmenuBtn.setFixedSize(QtCore.QSize(22, 22))
        self._sysmenuBtn.move(4, 4)
        self._sysmenuBtn.show()

        palette.setColor(palette.Shadow, QtGui.QColor('yellow'))

        self._minimizeBtn = XToolButton(self)
        self._minimizeBtn.setIcon(
            QtGui.QIcon(resources.find('img/mdiarea/minimize.png')))
        self._minimizeBtn.setPalette(palette)
        self._minimizeBtn.setShadowed(True)
        self._minimizeBtn.setShadowRadius(10)
        self._minimizeBtn.setFixedSize(QtCore.QSize(22, 22))
        self._minimizeBtn.show()

        palette.setColor(palette.Shadow, QtGui.QColor('orange'))

        self._maximizeBtn = XToolButton(self)
        self._maximizeBtn.setIcon(
            QtGui.QIcon(resources.find('img/mdiarea/maximize.png')))
        self._maximizeBtn.setPalette(palette)
        self._maximizeBtn.setShadowed(True)
        self._maximizeBtn.setShadowRadius(10)
        self._maximizeBtn.setFixedSize(QtCore.QSize(22, 22))
        self._maximizeBtn.show()

        palette.setColor(palette.Shadow, QtGui.QColor('red'))

        self._closeBtn = XToolButton(self)
        self._closeBtn.setIcon(
            QtGui.QIcon(resources.find('img/mdiarea/close.png')))
        self._closeBtn.setPalette(palette)
        self._closeBtn.setShadowed(True)
        self._closeBtn.setShadowRadius(10)
        self._closeBtn.setFixedSize(QtCore.QSize(22, 22))
        self._closeBtn.show()

        # create connections
        self._sysmenuBtn.clicked.connect(self.showSystemMenu)
        self._minimizeBtn.clicked.connect(self.toggleMinimized)
        self._maximizeBtn.clicked.connect(self.toggleMaximized)
        self._closeBtn.clicked.connect(self.close)
Ejemplo n.º 3
0
 def createWidget(self, parent):
     btn = XToolButton(parent)
     btn.setDefaultAction(self)
     btn.setCheckable(self.isCheckable())
     btn.setChecked(self.isChecked())
     return btn