Remove PyQt5.Qwt dependency from the GUI client

PyQt5.Qwt isn't pip-installable; it only existed via the apt package
python3-pyqt5.qwt, so pip-installing client/requirements.txt's plain
PyPI PyQt5 always crashed with "No module named 'PyQt5.Qwt'".

Qwt was only used for 3 QwtSlider widgets (Slider_temp_soll,
Slider_pwr_soll, Slider_speed_soll). Swap them for stock QSlider in
brewpi.ui, regenerate brewpi_win.py via pyuic5, and update
brewpi_gui.py's setLowerBound/setUpperBound calls to QSlider's
integer-only setMinimum/setMaximum. The GUI now runs from a plain
`pip install -r client/requirements.txt` venv with no system PyQt5
packages required.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-18 21:24:09 +02:00
co-authored by Claude Sonnet 4.6
parent 1bf3929b60
commit 88357b31f6
4 changed files with 45 additions and 75 deletions
+21 -46
View File
@@ -517,7 +517,7 @@
<property name="title">
<string>Controller</string>
</property>
<widget class="QwtSlider" name="Slider_temp_soll">
<widget class="QSlider" name="Slider_temp_soll">
<property name="geometry">
<rect>
<x>20</x>
@@ -526,20 +526,14 @@
<height>281</height>
</rect>
</property>
<property name="lowerBound">
<double>0.000000000000000</double>
<property name="minimum">
<number>0</number>
</property>
<property name="upperBound">
<double>100.000000000000000</double>
<property name="maximum">
<number>100</number>
</property>
<property name="scaleMaxMajor">
<number>7</number>
</property>
<property name="scaleMaxMinor">
<number>3</number>
</property>
<property name="scaleStepSize">
<double>0.000000000000000</double>
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
</widget>
<widget class="QLabel" name="label_6">
@@ -600,7 +594,7 @@
<property name="title">
<string>Heater</string>
</property>
<widget class="QwtSlider" name="Slider_pwr_soll">
<widget class="QSlider" name="Slider_pwr_soll">
<property name="geometry">
<rect>
<x>10</x>
@@ -609,20 +603,14 @@
<height>281</height>
</rect>
</property>
<property name="lowerBound">
<double>0.000000000000000</double>
<property name="minimum">
<number>0</number>
</property>
<property name="upperBound">
<double>100.000000000000000</double>
<property name="maximum">
<number>100</number>
</property>
<property name="scaleMaxMajor">
<number>7</number>
</property>
<property name="scaleMaxMinor">
<number>3</number>
</property>
<property name="scaleStepSize">
<double>0.000000000000000</double>
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
</widget>
<widget class="QCheckBox" name="checkbox_heater_activate">
@@ -674,7 +662,7 @@
<string>Activate</string>
</property>
</widget>
<widget class="QwtSlider" name="Slider_speed_soll">
<widget class="QSlider" name="Slider_speed_soll">
<property name="geometry">
<rect>
<x>40</x>
@@ -683,20 +671,14 @@
<height>281</height>
</rect>
</property>
<property name="lowerBound">
<double>0.000000000000000</double>
<property name="minimum">
<number>0</number>
</property>
<property name="upperBound">
<double>100.000000000000000</double>
<property name="maximum">
<number>100</number>
</property>
<property name="scaleMaxMajor">
<number>7</number>
</property>
<property name="scaleMaxMinor">
<number>3</number>
</property>
<property name="scaleStepSize">
<double>0.000000000000000</double>
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
</widget>
<widget class="QLabel" name="label_11">
@@ -3745,13 +3727,6 @@
</property>
</action>
</widget>
<customwidgets>
<customwidget>
<class>QwtSlider</class>
<extends>QWidget</extends>
<header>qwt_slider.h</header>
</customwidget>
</customwidgets>
<resources/>
<connections/>
<designerdata>