Metadata-Version: 2.4
Name: QEasyWidgets
Version: 0.8.2
Summary: A simple widget library based on PySide6
Home-page: https://github.com/Spr-Aachen/QEasyWidgets
Author: Spr_Aachen
Author-email: 2835946988@qq.com
License: GPLv3
Project-URL: Source Code, https://github.com/Spr-Aachen/QEasyWidgets
Project-URL: Bug Tracker, https://github.com/Spr-Aachen/QEasyWidgets/issues
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Description-Content-Type: text/markdown
Requires-Dist: PySide6
Requires-Dist: pywin32; platform_system == "Windows"
Requires-Dist: darkdetect
Requires-Dist: nvidia-ml-py
Requires-Dist: PyEasyUtils
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: license
Dynamic: project-url
Dynamic: requires-dist
Dynamic: summary

<div align = "center">

# QEasyWidgets

A modern Qt widget library that provides enhanced components with theme support, animations, and a clean API.

[![PyPI](https://img.shields.io/pypi/v/QEasyWidgets?color=blue&logo=PYPY&logoColor=blue&style=for-the-badge)](https://pypi.org/project/QEasyWidgets/)&nbsp;

![Title](./docs/media/Cover.png)

</div>

---

<div align = "center">

[**简体中文**](./docs/README_ZH.md) | **English**

</div>


## Python

### Deployment

- pip
    ```shell
    pip install QEasyWidgets -i https://pypi.org/simple/
    ```


## C++

### Requirements

- Qt 6.x or Qt 5.15+
- C++17 compatible compiler
- qmake or CMake

### Build Command

- Using CMake
```bash
cd QEasyWidgets
mkdir build && cd build
cmake ..
cmake --build .
```

- Using QMake
```bash
cd QEasyWidgets
qmake QEasyWidgets.pro
make          # Linux/macOS
nmake         # Windows (MSVC)
mingw32-make  # Windows (MinGW)
```

### Build Output

The library will be built as a static library:
- Debug: `qeasywidgetsd.lib` (Windows) or `libqeasywidgets.a` (Unix)
- Release: `qeasywidgets.lib` (Windows) or `libqeasywidgets.a` (Unix)

### Usage

- Basic Example
```cpp
#include <QApplication>

#include "QEasyWidgets.h"
#include "Components/Button.h"
#include "Windows/Window.h"

int main(int argc, char *argv[]) {
    QApplication app(argc, argv);
    QEWIns.setTheme(LIGHT); // Set Theme
    WindowBase window; // Create a window
    PrimaryButton *button = new PrimaryButton("Click Me", &window); // Create a button
    button->setIcon(IconBase::Play);
    window.setCentralWidget(button);
    window.show();
    return app.exec();
}
```


## Cases
Here are some projects based on QEasyWidgets:
- [Easy Voice Toolkit](https://github.com/Spr-Aachen/Easy-Voice-Toolkit)
- [LLM PromptMaster](https://github.com/Spr-Aachen/LLM-PromptMaster)
- [ParkingLot-Management](https://github.com/Spr-Aachen/ParkingLot-Management)


## Reference
- [Microsoft WinUI-Gallery](https://github.com/microsoft/WinUI-Gallery)
- [PyEasyUtils](https://github.com/Spr-Aachen/PyEasyUtils)
