https://github.com/redtide/qt-material
Qt implementation of the Material Design specification
https://github.com/redtide/qt-material
android-material material qt
Last synced: about 1 year ago
JSON representation
Qt implementation of the Material Design specification
- Host: GitHub
- URL: https://github.com/redtide/qt-material
- Owner: redtide
- License: bsd-3-clause
- Created: 2023-12-12T09:11:55.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2024-01-21T09:21:46.000Z (over 2 years ago)
- Last Synced: 2025-02-07T17:36:47.749Z (over 1 year ago)
- Topics: android-material, material, qt
- Language: C++
- Homepage:
- Size: 4.95 MB
- Stars: 2
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: COPYING
Awesome Lists containing this project
README
# Material Widgets for Qt
[![Language]]()
[![CI]](https://github.com/redtide/qt-material-widgets/actions/workflows/build.yml)
**Work in progress**
This project' development is not yet complete and API needs to be defined, but quite usable.
Contributions are welcome.
## Overview
Material Widgets for Qt is a C++ widgets library that can be used on any supported operating system,
including Android, where usually only QML gives a native appearance.
## Changes
There are several changes compared to the [original repository]:
- API changes, with some removals (see below).
- Changed the directory structure, headers are separated from implementation files.
- Material 3.
- Removed all color getters/setters; this version is meant to work via QStyle and palettes,
not using stylesheets nor setting colors directly per widget.
Custom colors should be prepared in a custom palette instead.
The style is not ready, so the palette is fixed to light / dark defaults.
- Code style.
## Features
- Qt5/6 support
- Qt Designer plugin, thanks to [xuannt88] for the initial work
- Light/Dark color scheme
## Dependencies
### Runtime
- Qt5/6 base
### Qt6 only
- qt6-scxml (QStateMachine)
### Build
- CMake
- Qt Linguist Tools
- Git (optional, to pull latest VCS checkouts)
## Build
`CMAKE_BUILD_TYPE` is usually set to `Release`, though `None` might be a valid [alternative].
`CMAKE_INSTALL_PREFIX` has to be set to `/usr` on most operating systems.
Using `sudo make install` is discouraged, instead use the system package manager where possible.
```bash
cmake -B build -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr -W no-dev
cmake --build build --verbose
DESTDIR="$(pwd)/package" cmake --install build
```
## License
Licensed under the [BSD-3-Clause] license.
[alternative]: https://wiki.archlinux.org/title/CMake_package_guidelines#Fixing_the_automatic_optimization_flag_override
[BSD-3-Clause]: COPYING
[CI]: https://github.com/redtide/sddm-conf/actions/workflows/build.yml/badge.svg
[Language]: https://img.shields.io/badge/language-c++-brightgreen.svg
[original repository]: https://github.com/laserpants/qt-material-widgets/
[xuannt88]: https://github.com/xuannt88/qt-material-widgets/