Skip to content

GraphicsWidgetMixin

Base classes

Name Children Inherits
GraphicsObjectMixin
prettyqt.widgets.graphicsobject
GraphicsLayoutItemMixin
prettyqt.widgets.graphicslayoutitem

Subclasses

Class Module Description
GraphicsWidget prettyqt.widgets.graphicswidget
GraphicsProxyWidget prettyqt.widgets.graphicsproxywidget
Legend prettyqt.charts.legend
ChartMixin prettyqt.charts.chart

⋔ Inheritance diagram

graph TD
  1473296164144["widgets.GraphicsWidgetMixin"]
  1473293697024["widgets.GraphicsObjectMixin"]
  1473299815024["core.ObjectMixin"]
  140713234304496["builtins.object"]
  1473293706784["widgets.GraphicsItemMixin"]
  1473293712640["widgets.GraphicsLayoutItemMixin"]
  1473293697024 --> 1473296164144
  1473299815024 --> 1473293697024
  140713234304496 --> 1473299815024
  1473293706784 --> 1473293697024
  140713234304496 --> 1473293706784
  1473293712640 --> 1473296164144
  140713234304496 --> 1473293712640

🛈 DocStrings

Bases: GraphicsObjectMixin, GraphicsLayoutItemMixin

Source code in prettyqt\widgets\graphicswidget.py
class GraphicsWidgetMixin(widgets.GraphicsObjectMixin, widgets.GraphicsLayoutItemMixin):
    @property
    def box(self):
        return self.layout()

    @box.setter
    def box(self, layout):
        self.set_layout(layout)

    def set_layout(
        self, layout: LayoutStr | widgets.QGraphicsLayout
    ) -> widgets.QGraphicsLayout:
        match layout:
            case widgets.QGraphicsLayout():
                layout = layout
            case "grid":
                layout = widgets.GraphicsGridLayout()
            case "anchor":
                layout = widgets.GraphicsAnchorLayout()
            case "horizontal" | "vertical":
                layout = widgets.GraphicsLinearLayout(layout)
            case _:
                raise ValueError(f"Invalid Layout {layout}")
        self.setLayout(layout)
        return layout

    def set_focus_policy(self, policy: constants.FocusPolicyStr | constants.FocusPolicy):
        """Set the way the widget accepts keyboard focus.

        Args:
            policy: Focus policy
        """
        self.setFocusPolicy(constants.FOCUS_POLICY.get_enum_value(policy))

    def get_focus_policy(self) -> constants.FocusPolicyStr:
        """Return way the widget accepts keyboard focus.

        Returns:
            str: Focus policy
        """
        return constants.FOCUS_POLICY.inverse[self.focusPolicy()]

    def window_frame_section_at(
        self, point: datatypes.PointType
    ) -> constants.WindowFrameSectionStr:
        """Return the window frame section at given position.

        Returns:
            str: Window frame section
        """
        section = self.windowFrameSectionAt(datatypes.to_point(point))
        return constants.WINDOW_FRAME_SECTION.inverse[section]

    def get_font(self) -> gui.Font:
        return gui.Font(self.font())

    def get_palette(self) -> gui.Palette:
        return gui.Palette(self.palette())

get_focus_policy() -> constants.FocusPolicyStr

Return way the widget accepts keyboard focus.

Source code in prettyqt\widgets\graphicswidget.py
def get_focus_policy(self) -> constants.FocusPolicyStr:
    """Return way the widget accepts keyboard focus.

    Returns:
        str: Focus policy
    """
    return constants.FOCUS_POLICY.inverse[self.focusPolicy()]

set_focus_policy(policy: constants.FocusPolicyStr | constants.FocusPolicy)

Set the way the widget accepts keyboard focus.

Parameters:

Name Type Description Default
policy FocusPolicyStr | FocusPolicy

Focus policy

required
Source code in prettyqt\widgets\graphicswidget.py
def set_focus_policy(self, policy: constants.FocusPolicyStr | constants.FocusPolicy):
    """Set the way the widget accepts keyboard focus.

    Args:
        policy: Focus policy
    """
    self.setFocusPolicy(constants.FOCUS_POLICY.get_enum_value(policy))

window_frame_section_at(point: datatypes.PointType) -> constants.WindowFrameSectionStr

Return the window frame section at given position.

Source code in prettyqt\widgets\graphicswidget.py
def window_frame_section_at(
    self, point: datatypes.PointType
) -> constants.WindowFrameSectionStr:
    """Return the window frame section at given position.

    Returns:
        str: Window frame section
    """
    section = self.windowFrameSectionAt(datatypes.to_point(point))
    return constants.WINDOW_FRAME_SECTION.inverse[section]