mirror of
https://github.com/dcs-liberation/dcs_liberation.git
synced 2025-11-10 14:22:26 +00:00
This appears to be incompatible with pyinstaller. I get the following when trying to run the executable generated with pyside6: ``` Traceback (most recent call last): File "qt_ui\main.py", line 29, in <module> File "PyInstaller\loader\pyimod03_importers.py", line 476, in exec_module File "qt_ui\windows\QLiberationWindow.py", line 28, in <module> File "PyInstaller\loader\pyimod03_importers.py", line 476, in exec_module File "qt_ui\widgets\map\QLiberationMap.py", line 11, in <module> ImportError: could not import module 'PySide6.QtPrintSupport' ```
30 lines
786 B
Python
30 lines
786 B
Python
from typing import Optional
|
|
|
|
from PySide2.QtWidgets import QSpinBox
|
|
|
|
|
|
class FloatSpinner(QSpinBox):
|
|
def __init__(
|
|
self,
|
|
divisor: int,
|
|
minimum: Optional[float] = None,
|
|
maximum: Optional[float] = None,
|
|
initial: Optional[float] = None,
|
|
) -> None:
|
|
super().__init__()
|
|
self.divisor = divisor
|
|
|
|
if minimum is not None:
|
|
self.setMinimum(int(minimum * divisor))
|
|
if maximum is not None:
|
|
self.setMaximum(int(maximum * divisor))
|
|
if initial is not None:
|
|
self.setValue(int(initial * divisor))
|
|
|
|
def textFromValue(self, val: int) -> str:
|
|
return f"X {val / self.divisor:.1f}"
|
|
|
|
@property
|
|
def real_value(self) -> float:
|
|
return self.value() / self.divisor
|