Skip to main content

QuteStyle is an expandable application framework for PyQt5

Project description

QuteStyle logo

QuteStyle

QuteStyle is an expandable application framework for PyQt5 and heavily inspired by PyDracula. The main goal of this project is to provide a simple and easy to use application frame that can be used to create a new application. It is mainly suited for applications that rely on a center widget for user interaction. Functionality is extendable by having different widgets that can be loaded into that center widget area.

Project status

Python Versions Qt Versions License Code style: black

Tests

CodeQL Build Status Code Coverage pre-commit.ci status

Features

  • Easy integration of already existing widgets
  • Preset themes that easily can be modified
  • Custom widgets
  • Splash screen
  • Build-in release history
  • Used and developed in a productive environment

Themes and Styled Widgets

QuteStyle provides five themes, defining the color composition of the app. Additionally, the user can define new themes (check this out). We provide five themes, for example a dark and light mode Darcula and Highbridge Grey. We defined custom widgets, such that they fit to the overall style and implemented new behaviour. A selection can be found in the Test-App:

Highbridge GreyDarcula

Requirements

Installation Method

  • Latest development version

    pip install git+https://github.com/TUV-SUD-Product-Service-GmbH/QuteStyle.git@master
    

Usage

import sys

from PyQt5.QtCore import Qt
from PyQt5.QtWidgets import QApplication

from examples.sample_main_window import StyledMainWindow
from qute_style.qs_application import QuteStyleApplication
from qute_style.update_window import AppData

class MyApplication(QuteStyleApplication):
    # take a look at examples.sample_main_window and examples.sample_widgets
    # to find out more about setting up a main window and the widgets that it
    # should display
    MAIN_WINDOW_CLASS = StyledMainWindow
    # add basic information about your application
    APP_DATA = AppData(
        "Test-App",
        "2.3.4",
        ":/svg_images/logo_qute_style.svg",
        ":/svg_images/logo_qute_style.svg",
        "",
        "Test Version",
    )

if __name__ == "__main__":

    APP_NAME = "Test-App"

    # activate highdpi icons and scaling
    QApplication.setAttribute(Qt.AA_EnableHighDpiScaling)
    QApplication.setAttribute(Qt.AA_UseHighDpiPixmaps)

    APP = MyApplication(sys.argv)
    sys.exit(APP.exec())

For further information, see our documentation.

Example

Check out our example app by running:

python -m examples.main

License

The original design idea is from Wanderson-Magalhaes and his project PyDracula (MIT License). The svg files are derived from Material design icons (Apache License Version 2.0). Other files are covered by QuteStyle's MIT license.

Contributing

All contributions, bug reports, bug fixes, documentation improvements, enhancements, and ideas are welcome.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qute_style-0.1.2.tar.gz (279.3 kB view details)

Uploaded Source

Built Distribution

qute_style-0.1.2-py3-none-any.whl (312.7 kB view details)

Uploaded Python 3

File details

Details for the file qute_style-0.1.2.tar.gz.

File metadata

  • Download URL: qute_style-0.1.2.tar.gz
  • Upload date:
  • Size: 279.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.14 CPython/3.8.8 Windows/10

File hashes

Hashes for qute_style-0.1.2.tar.gz
Algorithm Hash digest
SHA256 81bfe8c169e319d5cb542c447a28b3213c30bf2a149d5823e3fd2544b5d389ce
MD5 6f051f71fa0938fe8461a0173eb3eb86
BLAKE2b-256 2d4c7dcff635e729412d3648cda428f11faa06cf5477b38df49cfa4f545e2e6c

See more details on using hashes here.

File details

Details for the file qute_style-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: qute_style-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 312.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.14 CPython/3.8.8 Windows/10

File hashes

Hashes for qute_style-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 5765bc09a4e91b41cf7cf2f516eb7001250c7e7f94c2e988eb8d74273f568544
MD5 050e4e235d8083b07cb2861c52a22941
BLAKE2b-256 f37a92faa3e744947f48b9d015b7e2e06bfb272e9c1a8d4936afe195a8ce8fa6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page