Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/du33169/qorewidgets
Yet another collection of those core widgets for a modern Qt application.
https://github.com/du33169/qorewidgets
frameless-window gui pyside pyside6 qt qt-designer qt-widget qt6 widget-library
Last synced: 2 months ago
JSON representation
Yet another collection of those core widgets for a modern Qt application.
- Host: GitHub
- URL: https://github.com/du33169/qorewidgets
- Owner: du33169
- License: bsd-3-clause
- Created: 2024-08-07T12:40:31.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-10-07T03:50:41.000Z (3 months ago)
- Last Synced: 2024-10-07T04:27:37.511Z (3 months ago)
- Topics: frameless-window, gui, pyside, pyside6, qt, qt-designer, qt-widget, qt6, widget-library
- Language: Python
- Homepage:
- Size: 117 KB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Qore Widgets
![PyPI - Version](https://img.shields.io/pypi/v/QoreWidgets)![PyPI - Downloads](https://img.shields.io/pypi/dm/QoreWidgets)![GitHub License](https://img.shields.io/github/license/du33169/QoreWidgets)
Yet another collection of those core widgets for a modern Qt application.
Backend Support: Currently **only PySide6 is supported.**
![](screenshots/gallery.png)
## Widget List
| Qore Widget
[Base Widget] | Desc | Screenshot |
| ----------------------------------------------------- | ------------------------------------------------------------ | ----------------------------------------------- |
| **SideTabWidget**
[TabWidget] | A TabWidget with horizontal and foldable tabs. Animated. Support automatic expand on mouse hover. | ![](screenshots/SideTabWidget_expanded.png) |
| **ImmersiveTitleBar**
[ImmersiveTitleBarContainer] | A simple immersive title bar with icon, title, and close, maximize, minimize buttons. | ![](screenshots/ImmersiveTitleBar.png) |
| **ImmersiveTitleBarContainer**
[QWidget] | An immersive title bar Container with only buttons. Put any widgets you like. | ![](screenshots/ImmersiveTitleBarContainer.png) |
| **FramelessWindow**
[QMainWindow] | A frameless window with resize grips. Better use it with the ImmersiveTitleBar. | / |
| **LoadingOverlay**
[QWidget] | Create a mask on the targeted widget with a rotating icon during long time tasks | ![](screenshots/LoadingOverlay.png) |
| **EmptyOverlay**
[QWidget] | Automatically show/hide a empty indicator mask on the target item view/widget when it's empty or not | ![](screenshots/EmptyOverlay.png) |
| **ImmersiveMesageBox**
[QMessageBox] | (todo) | |
| **DrawerWidget** | (todo) | |## Installation
```bash
pip install qorewidgets
```## Usage
There are two ways to integrate QoreWidgets into your project:
### Programmatically
Most Qore Widgets are designed as drop-in replacements for their corresponding base widgets.
### With Qt Designer
Tip: If you installed PySide6 using pip, the designer is also installed as `pyside6-designer` executable.
1. Create the base widget in Qt Designer
2. Right-click on the widget and select "Promote To..."
3. Enter the desired Qore Widget name as the **promoted class name**, and "QoreWidgets.h" as the **header file**
4. Use the `pyside6-uic` tool (also installed with PySide6) to convert the .ui file to a .py file
5. the base widget will be replaced by the appropriate Qore Widget during the conversionRefer to [Qt Doc: using custom widgets in designer](https://doc.qt.io/qt-6/designer-using-custom-widgets.html) for more detailed instructions.
### Documentation
For more infomation, check out the [QoreWidgets Documentation](https://github.com/du33169/QoreWidgets/wiki).
## Examples
The QoreWidgets Gallery app provides examples about how to use these widgets. To run the gallery app:
```bash
git clone https://github.com/du33169/QoreWidgets
cd QoreWidgets
pip install PySide6
python gallery/app.py
```Note: the gallery app will first attempt to import QoreWidgets from installed python packages. If not installed, it will then import from the local `src` directory.
## Styling
QoreWidgets mainly focus on functional enhancements with minimal decoration. However, they should fit in with your global theme or stylesheets, for example, [PyQtDarkTheme](https://github.com/5yutan5/PyQtDarkTheme).