Une collection de widgets Qt personnalisés et réutilisables pour PySide6. Fournit des composants graphiques avancés, réutilisables et stylés pour faciliter le développement d'interfaces modernes et ergonomiques.
Project description
🎨 EzQt_Widgets
Une collection de widgets Qt personnalisés et réutilisables pour PySide6.
📦 Installation
pip install ezqt_widgets
🚀 Utilisation Rapide
from PySide6.QtWidgets import QApplication
from ezqt_widgets.button import IconButton, DateButton, LoaderButton
from ezqt_widgets.label import ClickableTagLabel, FramedLabel, HoverLabel, IndicatorLabel
from ezqt_widgets.input import AutoCompleteInput, SearchInput, PasswordInput
from ezqt_widgets.misc import CircularTimer, OptionSelector, ToggleIcon, ToggleSwitch
app = QApplication([])
# Widgets bouton
icon_btn = IconButton(icon="path/to/icon.png", text="Mon Bouton")
date_btn = DateButton(date="2024-01-01")
loader_btn = LoaderButton(text="Charger...")
# Widgets label
tag_label = ClickableTagLabel(name="Tag Cliquable")
framed_label = FramedLabel(text="Label Encadré")
hover_label = HoverLabel(text="Label avec Hover")
indicator_label = IndicatorLabel(status="online")
# Widgets input
search_input = SearchInput(placeholder="Rechercher...")
password_input = PasswordInput(placeholder="Mot de passe")
# Widgets misc
timer = CircularTimer(duration=60)
toggle_switch = ToggleSwitch(checked=True)
app.exec()
📚 Documentation
- Documentation complète : docs/
- Guide de style : docs/STYLE_GUIDE.md
- Changelog : docs/CHANGELOG.md
🧪 Tests
Exécution des Tests
# Tous les tests
python tests/run_tests.py --type unit
# Tests spécifiques
python -m pytest tests/unit/test_button/ -v
python -m pytest tests/unit/test_label/ -v
Documentation des Tests
- Guide rapide : docs/QUICK_START_TESTS.md
- Documentation complète : docs/tests/
📊 Statistiques des Tests
- Widgets Bouton : 59 tests (56 passent, 3 skipped)
- Widgets Label : 70 tests (67 passent, 3 skipped)
- Widgets Input : 112 tests (111 passent, 1 skipped)
- Widgets Misc : 41 tests ✅
- Tests de Base : 3 tests ✅
- Total : 262 tests (254 passent, 8 skipped)
🎯 Widgets Disponibles
Boutons
IconButton- Bouton avec icône personnalisableDateButton- Sélecteur de date avec calendrierLoaderButton- Bouton avec états de chargement
Labels
ClickableTagLabel- Tag cliquable avec toggleFramedLabel- Label avec cadre personnalisableHoverLabel- Label avec effets au survolIndicatorLabel- Indicateur de statut avec LED
Inputs
AutoCompleteInput- Champ de saisie avec autocomplétionSearchInput- Champ de recherche avec historiqueTabReplaceTextEdit- Éditeur de texte avec remplacement de tabulationsPasswordInput- Champ de mot de passe avec barre de force
Misc
CircularTimer- Timer circulaire avec animationOptionSelector- Sélecteur d'options avec interface moderneToggleIcon- Icône basculante avec états multiplesToggleSwitch- Interrupteur moderne avec animation
🔧 Développement
Structure du Projet
ezqt_widgets/
├── README.md # Ce fichier
├── docs/ # Documentation
│ ├── README.md # Index de documentation
│ ├── STYLE_GUIDE.md # Guide de style
│ ├── CHANGELOG.md # Historique des versions
│ ├── QUICK_START_TESTS.md # Guide rapide des tests
│ └── tests/ # Documentation des tests
├── tests/ # Tests
│ ├── run_tests.py # Script d'exécution des tests
│ ├── conftest.py # Configuration pytest
│ └── unit/ # Tests unitaires
├── ezqt_widgets/ # Code source
└── pyproject.toml # Configuration du projet
Installation pour Développement
git clone <repository>
cd ezqt_widgets
pip install -e .
pip install -e ".[dev]"
📄 Licence
Ce projet est sous licence MIT. Voir LICENSE pour plus de détails.
État des tests : 🟢 OPÉRATIONNEL (254/262 tests passent, 8 skipped)
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
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 ezqt_widgets-2.1.0.tar.gz.
File metadata
- Download URL: ezqt_widgets-2.1.0.tar.gz
- Upload date:
- Size: 52.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f5870061bb064a08ce1db67cd8f83e1a5b50952ce264d3f1f8f1fc318b2e4321
|
|
| MD5 |
8190f2e0b98b6004ad0161a66b45ed4b
|
|
| BLAKE2b-256 |
8f533f3be71129ad047f0b0e03244b6c5c117e9ab1e479999ec04a36e83aff98
|
File details
Details for the file ezqt_widgets-2.1.0-py3-none-any.whl.
File metadata
- Download URL: ezqt_widgets-2.1.0-py3-none-any.whl
- Upload date:
- Size: 52.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
323019a15bb1fe947bf9e048d9f9cc60a6eafade0310941a4ef427d0c2c391a3
|
|
| MD5 |
5fffda42604e794e4fef818abf96a5ca
|
|
| BLAKE2b-256 |
10f3ba1be5f5a4a750b2fb412b3526807f15ad19b16994e50a520e8152fb4dff
|