Package to construct Qt widgets from dataclasses
Project description
DaWiQ - Dataclass Widget with Qt
DaWiQ is a Python package to generate Qt widget from dataclass.
It provides:
- Dynamic construction of widget from dataclass
- Customizing widget for user-defined type
- Delegate and mapper for dataclass widget
The following Qt bindings are supported:
Usage
Here is a simple dataclass:
from dataclasses import dataclass
from typing import Tuple
@dataclass
class DataClass:
a: int
b: bool
DaWiQ can build a widget from this dataclass. For PySide6 example,
from PySide6.QtWidgets import QApplication
from dawiq import dataclass2Widget
import sys
app = QApplication(sys.argv)
dataWidget = dataclass2Widget(DataClass)
dataWidget.show()
app.exec()
app.quit()
This widget can be mapped to item model for storing the data. More examples are provided in the documentation.
Installation
DaWiQ can be installed from PyPI
.
$ pip install dawiq
To install from GitHub source, clone the repository with git
and install with pip
.
$ git clone https://github.com/JSS95/dawiq.git
$ cd dawiq
$ pip install .
DaWiQ does not specify the Qt binding requirement, therefore you must manually install one.
Documentation
DaWiQ is documented with Sphinx. Documentation can be found on Read the Docs:
If you want to build the document yourself, get the source code and install with [doc]
option.
Then go to doc
directory and build the document.
$ pip install .[doc]
$ cd doc
$ make html
Document will be generated in build/html
directory. Open index.html
to see the central page.
Project details
Release history Release notifications | RSS feed
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
File details
Details for the file dawiq-0.3.1.tar.gz
.
File metadata
- Download URL: dawiq-0.3.1.tar.gz
- Upload date:
- Size: 30.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 78efa5bfbff4b37a7dfd801afb149a16b33c82a488cf32fa969daccddc39b128 |
|
MD5 | 59f0d06dc5ef789cec00b8522c4fe8c8 |
|
BLAKE2b-256 | 549ff4db8ea682824dceea750a3745eb1c751c61a3ee994c0359e5c0c2dedf6e |
File details
Details for the file dawiq-0.3.1-py3-none-any.whl
.
File metadata
- Download URL: dawiq-0.3.1-py3-none-any.whl
- Upload date:
- Size: 33.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 403a30366d5733b26aa2faabef814ab7b238aad72adaf38528a560b12e282630 |
|
MD5 | 3bb2f06faa44aff3259942ae9903267d |
|
BLAKE2b-256 | 6506a3c3e04c04ab0dd0ed5f48d037d0f454dbd9e2df3e590dca463f760c369c |