Exemple #1
0
 def set_icon_size(self, size: int | types.SizeType):
     """Set size of the icons."""
     if isinstance(size, int):
         size = core.Size(size, size)
     elif isinstance(size, tuple):
         size = core.Size(*size)
     self.setIconSize(size)
def test_codeeditor(qtbot):
    editor = custom_widgets.CodeEditor()
    assert editor.text() == ""
    editor.line_area_width()
    editor.set_syntaxhighlighter("python")
    event = QtGui.QResizeEvent(core.Size(10, 10), core.Size(20, 20))
    editor.resizeEvent(event)
    editor.repaint()
Exemple #3
0
    def minimumSize(self):
        size = core.Size()

        for item in self.items:
            size = size.expandedTo(item.minimumSize())

        margin_width = 2 * self.contentsMargins().top()
        size += core.Size(margin_width, margin_width)
        return size
Exemple #4
0
def test_codeeditor():
    editor = custom_widgets.CodeEditor()
    assert editor.text() == ""
    editor.line_area_width()
    editor.set_syntax("python")
    event = QtGui.QResizeEvent(core.Size(10, 10), core.Size(20, 20))
    editor.resizeEvent(event)
    event = QtGui.QPaintEvent(core.Rect(0, 0, 20, 20))
    editor.line_area_paintevent(event)
Exemple #5
0
 def get_pixmap(
     self,
     size: types.SizeType | int,
     mode: ModeStr = "normal",
     state: StateStr = "off",
 ) -> QtGui.QPixmap:
     if mode not in MODE:
         raise InvalidParamError(mode, MODE)
     if state not in STATE:
         raise InvalidParamError(state, STATE)
     if isinstance(size, tuple):
         size = core.Size(*size)
     elif isinstance(size, int):
         size = core.Size(size, size)
     return self.pixmap(size, MODE[mode], STATE[state])
Exemple #6
0
def test_standarditemmodel():
    model = gui.StandardItemModel()
    model.add("test")
    for item in model:
        pass
    with open("data.pkl", "wb") as jar:
        pickle.dump(model, jar)
    with open("data.pkl", "rb") as jar:
        model = pickle.load(jar)
    model += gui.StandardItem("Item")
    model[0]
    assert len(model.find_items("test")) == 1
    with pytest.raises(InvalidParamError):
        model.find_items("test", mode="wrong_mode")
    del model[0]
    model.add_item(
        "Test",
        icon="mdi.timer",
        data={1: "Test"},
        foreground=gui.Brush(),
        background=gui.Brush(),
        font=gui.Font(),
        selectable=True,
        status_tip="test",
        tool_tip="test",
        whats_this="test",
        checkstate="unchecked",
        size_hint=core.Size(10, 10),
        is_user_type=True,
    )
Exemple #7
0
def test_standarditem():
    item = gui.StandardItem()
    with open("data.pkl", "wb") as jar:
        pickle.dump(item, jar)
    with open("data.pkl", "rb") as jar:
        item = pickle.load(jar)

    # item[constants.USER_ROLE] = "test"
    # assert item[constants.USER_ROLE] == "test"
    item.set_icon("mdi.timer")
    item.set_checkstate("unchecked")
    with pytest.raises(InvalidParamError):
        item.set_checkstate("test")
    assert item.get_checkstate() == "unchecked"
    item.get_background()
    item.get_foreground()
    item.get_font()
    item.get_icon()
    bytes(item)
    item.clone()
    item.add_item(
        "Test",
        icon="mdi.timer",
        data={1: "Test"},
        foreground=gui.Brush(),
        background=gui.Brush(),
        font=gui.Font(),
        selectable=True,
        status_tip="test",
        tool_tip="test",
        whats_this="test",
        checkstate="unchecked",
        size_hint=core.Size(10, 10),
        is_user_type=True,
    )
Exemple #8
0
 def get_actual_size(
     self,
     size: types.SizeType | int,
     mode: gui.icon.ModeStr = "normal",
     state: gui.icon.StateStr = "off",
 ) -> core.Size:
     if mode not in gui.icon.MODE:
         raise InvalidParamError(mode, gui.icon.MODE)
     if state not in gui.icon.STATE:
         raise InvalidParamError(state, gui.icon.STATE)
     if isinstance(size, tuple):
         size = core.Size(*size)
     elif isinstance(size, int):
         size = core.Size(size, size)
     return core.Size(
         self.actualSize(size, gui.icon.MODE[mode], gui.icon.STATE[state]))
Exemple #9
0
    def calculate_size(
            self, size_type: Literal["minimum", "size_hint"]) -> core.Size:
        total_size = core.Size()

        for wrapper in self.items:
            position = wrapper.position
            if size_type == "minimum":
                item_size = wrapper.item.minimumSize()
            else:  # size_type == "size_hint"
                item_size = wrapper.item.sizeHint()

            if position in (
                    BorderLayout.Position.North,
                    BorderLayout.Position.South,
                    BorderLayout.Position.Center,
            ):
                total_size.setHeight(total_size.height() + item_size.height())

            if position in (
                    BorderLayout.Position.West,
                    BorderLayout.Position.East,
                    BorderLayout.Position.Center,
            ):
                total_size.setWidth(total_size.width() + item_size.width())

        return total_size
Exemple #10
0
 def add_file(
     self,
     path: types.PathType,
     size: types.SizeType | int,
     mode: gui.icon.ModeStr,
     state: gui.icon.StateStr,
 ):
     if mode not in gui.icon.MODE:
         raise InvalidParamError(mode, gui.icon.MODE)
     if state not in gui.icon.STATE:
         raise InvalidParamError(state, gui.icon.STATE)
     if isinstance(size, tuple):
         size = core.Size(*size)
     elif isinstance(size, int):
         size = core.Size(size, size)
     self.addFile(os.fspath(path), size, gui.icon.MODE[mode],
                  gui.icon.STATE[state])
Exemple #11
0
 def get_available_sizes(self,
                         mode: ModeStr = "normal",
                         state: StateStr = "off") -> list[core.Size]:
     if mode not in MODE:
         raise InvalidParamError(mode, MODE)
     if state not in STATE:
         raise InvalidParamError(state, STATE)
     return [
         core.Size(i) for i in self.availableSizes(MODE[mode], STATE[state])
     ]
Exemple #12
0
 def serialize_fields(self):
     return dict(
         movable=self.isMovable(),
         document_mode=self.documentMode(),
         current_index=self.currentIndex(),
         # shape=self.shape(),
         draw_base=self.drawBase(),
         elide_mode=self.get_elide_mode(),
         icon_size=core.Size(self.iconSize()),
     )
Exemple #13
0
 def get_pixmap(
     self,
     size: types.SizeType | int,
     mode: gui.icon.ModeStr = "normal",
     state: gui.icon.StateStr = "off",
     scale: float | None = None,
 ) -> gui.Pixmap:
     if mode not in gui.icon.MODE:
         raise InvalidParamError(mode, gui.icon.MODE)
     if state not in gui.icon.STATE:
         raise InvalidParamError(state, gui.icon.STATE)
     if isinstance(size, tuple):
         size = core.Size(*size)
     elif isinstance(size, int):
         size = core.Size(size, size)
     if scale is None:
         return gui.Pixmap(
             self.pixmap(size, gui.icon.MODE[mode], gui.icon.STATE[state]))
     else:
         return gui.Pixmap(
             self.scaledPixmap(size, gui.icon.MODE[mode],
                               gui.icon.STATE[state], scale))
Exemple #14
0
    def set_style_icon(self,
                       icon: widgets.style.StandardPixmapStr,
                       size: int = 15):
        """Set theme icon for the button.

        Args:
            icon: icon to use
            size: icon size
        """
        if icon not in widgets.style.STANDARD_PIXMAP:
            raise InvalidParamError(icon, widgets.style.STANDARD_PIXMAP)
        qicon = self.style().standardIcon(widgets.style.STANDARD_PIXMAP[icon],
                                          None, self)
        self.set_icon(qicon)
        self.setIconSize(core.Size(size, size))
Exemple #15
0
 def get_texture_size(self) -> core.Size:
     return core.Size(self.textureSize())
Exemple #16
0
 def __init__(self, *names, parent: QtWidgets.QWidget | None = None, **kwargs):
     super().__init__(parent=parent)
     self._icon: QtGui.QIcon | None = None
     self._size = core.Size(16, 16)
     self.set_icon(iconprovider._icon(*names, **kwargs))
Exemple #17
0
 def set_style_icon(self, icon: str, size: int = 15):
     if icon not in STYLES:
         raise ValueError(f"{icon!r} not a valid icon.")
     qicon = self.style().standardIcon(STYLES[icon], None, self)
     self.set_icon(qicon)
     self.setIconSize(core.Size(size, size))
Exemple #18
0
 def get_scaled_size(self) -> core.Size:
     return core.Size(self.scaledSize())
Exemple #19
0
 def sizeHint(self) -> core.Size:
     return core.Size(self.editor.line_area_width(), 0)
Exemple #20
0
 def set_icon_size(self, size: int):
     self.setIconSize(core.Size(size, size))
Exemple #21
0
 def get_available_size(self) -> core.Size:
     return core.Size(self.availableSize())
Exemple #22
0
 def get_available_virtual_size(self) -> core.Size:
     return core.Size(self.availableVirtualSize())
Exemple #23
0
 def get_virtual_size(self) -> core.Size:
     return core.Size(self.virtualSize())
Exemple #24
0
def test_size():
    size = core.Size()
    repr(size)
Exemple #25
0
 def get_size(self) -> core.Size:
     return core.Size(self.size())
Exemple #26
0
 def sizeHint(self):
     return PAINTING_SCALE_FACTOR * core.Size(self.max_stars, 1)
Exemple #27
0
def test_size():
    size = core.Size(2, 2)
    assert tuple(size) == (2, 2)
    size = size.expanded_to(core.Size(4, 4))
Exemple #28
0
 def get_icon_size(self) -> core.Size:
     return core.Size(self.iconSize())