Skip to main content

PySide2/PyQt5 abstraction layer, mulithreading and UI loader utilities, icon set, and more

Project description

qtutils

Actions Status GitHub release Python Version Documentation Status PyPi Version Conda Version PyPi License

Utilities for providing concurrent access to Qt objects, simplified QSettings storage, and dynamic widget promotion when loading UI files, in Python Qt applications. Includes the Fugue icon set, free to use with attribution to Yusuke Kamiyamane.

Installation

  • To install the latest release version, run pip install qtutils.

  • To install latest development version, clone the GitHub repository and run pip install . to install, or pip install -e . to install in 'editable' mode.

Summary

qtutils is a Python library that provides some convenient features to Python applications using the PyQt5/PySide2 widget library.

qtutils 3.0 dropped support for Python 2.7, PyQt4 and PySide. If you need to use these platforms, you may use qtutils 2.3.2 or earlier.

qtutils contains the following components:

  • invoke_in_main: This provides some helper functions to interact with Qt from threads.

  • UiLoader: This provides a simplified means of promoting widgets in *.ui files to a custom widget of your choice.

  • qsettings_wrapper: A wrapper around QSettings which allows you to access keys of QSettings as instance attributes. It also performs automatic type conversions.

  • icons: An icon set as a QResource file and corresponding Python module. The resulting resource file can be used by Qt designer, and the python module imported by applications to make the icons available to them. The Fugue icon set was made by Yusuke Kamiyamane, and is licensed under a Creative Commons Attribution 3.0 License. If you can't or don't want to provide attribution, please purchase a royalty-free license from http://p.yusukekamiyamane.com/

  • Qt: a PyQt5/PySide2 agnostic interface to Qt that allows you to write software using the PyQt5 API but have it run on either PyQt5 or PySide2.

  • outputbox: a QTextEdit widget for displaying log/output text of an application, either by calling methods or by sending data to it over zeromq.

Using icons with Qt designer

To use the icons from Qt designer, clone this repository, and point Qt designer to the .qrc file for the icons set: icons/icons.qrc. Unfortunately Qt desginer saves the absolute path to this file in the resulting .ui file, so if the .ui file is later edited by someone on another system, they will see an error at startup saying the .qrc file cannot be found. This can be ignored and the .ui file will still function correctly, but Qt designer will need to be told the local path to the .qrc file before it can display the icons within its interface.

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

qtutils-3.1.0.tar.gz (7.6 MB view details)

Uploaded Source

Built Distribution

qtutils-3.1.0-py3-none-any.whl (21.7 MB view details)

Uploaded Python 3

File details

Details for the file qtutils-3.1.0.tar.gz.

File metadata

  • Download URL: qtutils-3.1.0.tar.gz
  • Upload date:
  • Size: 7.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.3

File hashes

Hashes for qtutils-3.1.0.tar.gz
Algorithm Hash digest
SHA256 c2de8f842876eaea8ce26f3670f7857c0512cc6c175e8f61384f61ce3df40a82
MD5 44157be6cc25c8a54bbfffe3944d19ce
BLAKE2b-256 d096260819fa8d41e4bb77a3d76e01ccebb4c252edbe3d54de73e8ba23ecc164

See more details on using hashes here.

File details

Details for the file qtutils-3.1.0-py3-none-any.whl.

File metadata

  • Download URL: qtutils-3.1.0-py3-none-any.whl
  • Upload date:
  • Size: 21.7 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.3

File hashes

Hashes for qtutils-3.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d339b07f6a37a8ce116485c19e47df4ea081a9b53d4520d62912269617a2ec67
MD5 68d16ad0465cb031098b02ea096dfeba
BLAKE2b-256 6b21ef49c7da4306ea6ad9a0d0b40347d389541d3eac9422d27f90b1bb641598

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