Core
all Qtica base classes to implement codes and manage declarative style.
Last updated
all Qtica base classes to implement codes and manage declarative style.
Last updated
from Qtica import AbstractQObject
from PySide6.QtCore import QObject
class Object(AbstractQObject, QObject):
def __init__(self,
uid: str = None,
signals: SignalTypeVar = None,
events: EventTypeVar = None,
methods: Sequence[Union[tuple[str, Any], Func]] = None,
enable_event_stack: bool = True,
**kwargs):
QObject.__init__(self)
super().__init__(uid, signals, events, methods, enable_event_stack, **kwargs)
...from typing import Union
from PySide6.QtWidgets import QWidget
from Qtica import AbstractWidget
class Widget(AbstractWidget, QWidget):
def __init__(self,
long_press_delay: int = 1000,
effect: QGraphicsEffect = None,
qss: Union[str, dict, QStyleSheet] = None,
attrs: Union[list[Qt.WidgetAttribute], dict[Qt.WidgetAttribute, bool]] = None,
flags: Union[list[Qt.WindowType], dict[Qt.WindowType, bool]] = None,
**kwargs):
QWidget.__init__(self)
super().__init__(**kwargs)
...from typing import Any
from Qtica import BehaviorDec
class Class(BehaviorDec):
def __init__(self, *args, **kwargs) -> Any:
return ...from typing import Any
from Qtica import QObjectDec
class Object(ObjectDec, QObject):
def __init__(self, **kwargs):
QObject.__init__(self)
super().__init__(**kwargs)
return ...from typing import Any
from Qtica import WidgetDec
class Widget(WidgetDec, QWidget):
def __init__(self, **kwargs):
QWidget.__init__(self)
super().__init__(**kwargs)
return ...from Qtica import Api
Window(
uid="window",
home=Widget(
uid="child-widget"
)
)
Api.fetch("child-widget") # -> Widget classwidget = Widget(
uid="child-widget"
)
parent = Window(
uid="window",
home=widget
)
# way 1
api = Api(parent)
api.get("child-widget") # -> Widget class
# way 2
api = Api(parent)("child-widget") # -> Widget classfrom Qtica import AbstractTool
from PySide6.QtGui import QPen
class Tool(AbstractTool, QPen):
def __init__(self, *, methods: Sequence[Union[tuple[str, Any], Func]] = None, **kwargs):
QPen.__init__(self)
super().__init__(methods=methods, **kwargs)