Пример #1
0
 def data(self, index, role=QtCore.Qt.DisplayRole):
     if role == QtCore.Qt.DisplayRole:
         return self._icons[index.row()]
     elif role == QtCore.Qt.DecorationRole:
         return ico.Icon(self.data(index, role=QtCore.Qt.DisplayRole),
                         anim=anim)
     return None
Пример #2
0
    def data(self, index, role=QtCore.Qt.DisplayRole):
        # type: (QtCore.QModelIndex, QtCore.Qt.ItemRole) -> Any
        """
        Re-implemented to return the icon for the current index.

        Parameters
        ----------
        index : QtCore.QModelIndex
        role : int

        Returns
        -------
        Any
        """
        if role == QtCore.Qt.DecorationRole:
            iconString = self.data(index, role=QtCore.Qt.DisplayRole)
            return ico.Icon(iconString)
        return super(Model, self).data(index, role)
Пример #3
0
def test_icon(qtbot, validIconPath):
    anim = iconify.anim.Spin()
    color = QtGui.QColor('red')

    icon = iconify.Icon(
        'delete',
        color=color,
        anim=anim,
    )

    pixmapGenerator = icon.pixmapGenerator()
    assert pixmapGenerator.anim() is anim
    assert pixmapGenerator.color() is color

    assert icon.anim() is anim

    button = QtWidgets.QPushButton()
    icon.setAsButtonIcon(button)

    button.show()
Пример #4
0
def test_multiState(qtbot, validIconPath):
    redColor = QtGui.QColor('red')
    blueColor = QtGui.QColor('blue')
    spinAnim = iconify.anim.Spin()
    breatheAnim = iconify.anim.Breathe()

    icon = iconify.Icon('delete', color=redColor, anim=breatheAnim)
    assert icon.animCount() == 1
    assert icon.color() == redColor
    assert icon.anim() is breatheAnim

    # Add a second state
    icon.addState(
        'spinners:dots',
        mode=QtGui.QIcon.Active,
    )
    assert icon.animCount() == 2
    # The color and anim kwargs are expected to fall back
    # to the values on the 'default' state when not provided.
    assert icon.anim(mode=QtGui.QIcon.Active) == breatheAnim
    assert icon.color(mode=QtGui.QIcon.Active) == redColor

    # Replace that state with something else
    icon.addState(
        'spinners:colored',
        anim=spinAnim,
        mode=QtGui.QIcon.Active,
    )
    assert icon.animCount() == 2
    assert icon.anim(mode=QtGui.QIcon.Active) == spinAnim
    assert icon.color(mode=QtGui.QIcon.Active) == redColor

    # Add a third state
    icon.addState(
        'spinners:dots',
        color=blueColor,
        mode=QtGui.QIcon.Selected,
    )
    assert icon.animCount() == 3
    assert icon.anim(mode=QtGui.QIcon.Selected) == breatheAnim
    assert icon.color(mode=QtGui.QIcon.Selected) == blueColor
Пример #5
0
    def __init__(self):
        super(SideBar, self).__init__()
        # read StyleSheet
        with open('QSS/sideBar.qss', 'r') as f:
            self.setStyleSheet(f.read())
            f.close()
        # Vertical Layout
        self.verticalLayout = QVBoxLayout()
        self.verticalLayout.setContentsMargins(0, 0, 0, 0)

        # Icons
        camera_icon = ico.Icon('font-awesome:solid:camera-retro',
                               QColor('#E91E63'))
        database_icon = ico.Icon('font-awesome:solid:database',
                                 QColor('#03A9F4'))
        about_icon = ico.Icon('font-awesome:solid:exclamation-triangle',
                              QColor('#FDD835'))

        # logo image
        logo = QLabel()
        logo.setFixedSize(110, 110)
        logo_img = QPixmap('resources/qt.png')
        logo.setPixmap(logo_img)
        logo.setContentsMargins(20, 20, 20, 20)

        # bottom label like spacer
        bottom_label = QLabel()

        # Create Buttons
        btn_width = 110
        btn_height = 40

        self.Camera = QToolButton()
        self.Camera.setToolButtonStyle(Qt.ToolButtonTextBesideIcon)
        self.Camera.setObjectName('Camera_btn')
        self.Camera.setText(' Camera')
        self.Camera.setFixedSize(btn_width, btn_height)
        self.Camera.setIcon(camera_icon)
        self.Camera.setIconSize(QSize(20, 20))

        self.DataBase = QToolButton()
        self.DataBase.setToolButtonStyle(Qt.ToolButtonTextBesideIcon)
        self.DataBase.setObjectName('customers_btn')
        self.DataBase.setText(' DataBase')
        self.DataBase.setFixedSize(btn_width, btn_height)
        self.DataBase.setIcon(database_icon)
        self.DataBase.setIconSize(QSize(20, 20))

        self.About = QToolButton()
        self.About.setToolButtonStyle(Qt.ToolButtonTextBesideIcon)
        self.About.setObjectName('About_btn')
        self.About.setText(' About')
        self.About.setFixedSize(btn_width, btn_height)
        self.About.setIcon(about_icon)
        self.About.setIconSize(QSize(20, 20))

        # add widget
        self.verticalLayout.setSpacing(0)
        self.verticalLayout.addWidget(logo)
        self.verticalLayout.addWidget(self.Camera)
        self.verticalLayout.addWidget(self.DataBase)
        self.verticalLayout.addWidget(self.About)
        self.verticalLayout.addWidget(bottom_label)
        self.setLayout(self.verticalLayout)
Пример #6
0
lyt.addWidget(buttonThree)

frame.setLayout(lyt)
frame.show()

# Apply iconify icons
spinnerSvg = "github"
spinnerTwoSvg = "spinners:colored"
deleteSvg = "delete"

clockwiseSpinningAnim = ico.anim.Spin(
    direction=ico.anim.Spin.Directions.CLOCKWISE)
antiClockwiseSpinningAnim = ico.anim.Spin() + ico.anim.Breathe()

spinnerIcon = ico.Icon(spinnerSvg,
                       color=QtGui.QColor.fromHsv(65, 200, 200),
                       anim=clockwiseSpinningAnim)
spinnerIconTwo = ico.Icon(spinnerTwoSvg, anim=clockwiseSpinningAnim)
spinnerIconTwoAlt = ico.Icon(spinnerTwoSvg,
                             color=QtGui.QColor.fromHsv(300, 150, 200),
                             anim=antiClockwiseSpinningAnim)
deleteIcon = ico.Icon(deleteSvg, color=QtGui.QColor.fromHsv(5, 200, 200))

buttonOne.setIcon(deleteIcon)
buttonOne.clicked.connect(clockwiseSpinningAnim.toggle)
buttonOne.clicked.connect(antiClockwiseSpinningAnim.toggle)

spinnerIcon.setAsButtonIcon(buttonTwo)
spinnerIconTwo.setAsButtonIcon(buttonThree)