Skip to main content

Extra widgets for Qt

Project description

qtextra

License PyPI Python Version Test codecov

Extra widgets and dialogs for PyQt/PySide via qtpy

qtextra packages reusable Qt widgets, dialogs, and helpers that sit on top of PyQt/PySide through qtpy. The library focuses on opinionated, application-level building blocks such as searchable comboboxes, step progress indicators, styled buttons, collapsible sections, and utility dialogs.

qtextra widget showcase

Components are tested on:

  • macOS, Windows & Linux
  • Python 3.10 and above
  • PyQt5 (5.11 and above) & PyQt6
  • PySide2 (5.11 and above) & PySide6

The project overlaps somewhat with superqt, but it leans more heavily into application-ready widgets and bundled styling in src/qtextra/assets/stylesheets.

Documentation

Documentation is available at https://lukasz-migas.github.io/qtextra/

Installation

pip install qtextra

Optional extras:

pip install "qtextra[console,sentry]"

Quick Start

from qtpy.QtWidgets import QApplication, QVBoxLayout, QWidget

from qtextra.config import THEMES
from qtextra.widgets.qt_collapsible import QtCheckCollapsible
from qtextra.widgets.qt_progress_step import QtStepProgressBar

app = QApplication([])

window = QWidget()
layout = QVBoxLayout(window)

steps = QtStepProgressBar()
steps.labels = ["Load", "Validate", "Export"]
steps.value = 2
layout.addWidget(steps)

details = QtCheckCollapsible("Advanced options")
details.addRow("Status", QWidget())
layout.addWidget(details)

THEMES.apply(window)
window.show()
app.exec_()

A larger showcase example is available at examples/qt_readme_showcase.py.

Documentation

Contributing

Contributions are always welcome. Please feel free to submit PRs with new features, bug fixes, or documentation improvements.

git clone https://github.com/lukasz-migas/qtextra.git

pip install -e ".[dev]"
pytest

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

qtextra-0.2.0.tar.gz (1.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

qtextra-0.2.0-py3-none-any.whl (865.0 kB view details)

Uploaded Python 3

File details

Details for the file qtextra-0.2.0.tar.gz.

File metadata

  • Download URL: qtextra-0.2.0.tar.gz
  • Upload date:
  • Size: 1.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for qtextra-0.2.0.tar.gz
Algorithm Hash digest
SHA256 cf2f34a33a1395bba0754c3bf9b6d4cde15d711a81cf9aafed9d3a3b4de3a123
MD5 cc3eb8735a1e50d9469071f8ed843d13
BLAKE2b-256 e2c38bb4662115e44745e1722101c04fdc2d81f42aa3207c4d0cd8cbf814e410

See more details on using hashes here.

File details

Details for the file qtextra-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: qtextra-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 865.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for qtextra-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 670ca8002ae5710efcec2e2a1090b827374e1c3c8b00f40e80fc0bd862efa00b
MD5 0a560ea6e7629696fd4cd5d90e0a8e79
BLAKE2b-256 2e96e8c5d5f378cdd87fa66a7f28d75400ed86cb009f1d93acf716822a1de75d

See more details on using hashes here.

Supported by

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