mirror of
https://github.com/dcs-retribution/dcs-retribution.git
synced 2025-11-10 15:41:24 +00:00
25 lines
788 B
Python
25 lines
788 B
Python
"""A layout containing a widget with an associated label."""
|
|
from typing import Optional
|
|
|
|
from PySide2.QtCore import Qt
|
|
from PySide2.QtWidgets import QHBoxLayout, QLabel, QWidget
|
|
|
|
|
|
class QLabeledWidget(QHBoxLayout):
|
|
"""A layout containing a widget with an associated label.
|
|
|
|
Best used for vertical forms, where the given widget is the input and the
|
|
label is used to name the input.
|
|
"""
|
|
|
|
def __init__(self, text: str, widget: QWidget,
|
|
tooltip: Optional[str] = None) -> None:
|
|
super().__init__()
|
|
label = QLabel(text)
|
|
self.addWidget(label)
|
|
self.addStretch()
|
|
self.addWidget(widget, alignment=Qt.AlignRight)
|
|
if tooltip is not None:
|
|
label.setToolTip(tooltip)
|
|
widget.setToolTip(tooltip)
|