A PyQt6 mediator mixin
Project description
PyQt6 Mediator Mixin
PyQt6 Mediator Mixin is a Python library that enhances PyQt6's signal-slot mechanism by implementing the mediator pattern. This pattern allows classes to emit and receive signals without knowing about each other, leading to more modular and maintainable code.
Key features:
- Mediator pattern implementation for PyQt6 signals.
- Ability to extend the
SignalCodeenum for custom signals.
Installation
pip install PyQt6-mediator-mixin
Usage
from PyQt6_mediator_mixin.mediator_mixin import MediatorMixin
from PyQt6_mediator_mixin.enums import SignalCode
class MyClass(MediatorMixin):
def __init__(self):
super().__init__()
self.register(SignalCode.MY_SIGNAL, self.my_slot_function)
def my_slot_function(self, data):
print("Received signal with data:", data)
def some_method(self):
self.emit(SignalCode.MY_SIGNAL, "some data")
Extending SignalCode Enum
from enum import Enum
from PyQt6_mediator_mixin.signal_code_factory import set_signal_code
class MySignalCode(Enum):
MY_SIGNAL_1 = 1
MY_SIGNAL_2 = 2
set_signal_code(MySignalCode)
Now, MyClass can register and emit MY_SIGNAL_1 and MY_SIGNAL_2 using the MediatorMixin.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file PyQt6-mediator-mixin-1.0.3.tar.gz.
File metadata
- Download URL: PyQt6-mediator-mixin-1.0.3.tar.gz
- Upload date:
- Size: 14.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.18
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d07d0db7b7d756a1082a679e83966efd0c4048272b658ddd9a09d0e4f4a1a940
|
|
| MD5 |
68bb2b65b22c53076c2cb99262192805
|
|
| BLAKE2b-256 |
0b780ce2478e2e423475622644f6085866b48229504837be6bee64e2bd4b2ddf
|
File details
Details for the file PyQt6_mediator_mixin-1.0.3-py3-none-any.whl.
File metadata
- Download URL: PyQt6_mediator_mixin-1.0.3-py3-none-any.whl
- Upload date:
- Size: 14.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.18
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
936ff9fa03d5a82a51357fa24b715bd3185249e7f08fef458e56faf457d4eafa
|
|
| MD5 |
429d761deb968b8e615128fdac84d4f2
|
|
| BLAKE2b-256 |
35d2163fdcb17d86ba68ec6f747134bf51648338249e366a2017b69c6fd94d0f
|