- Reverted Initially enqueue GUI setter

This commit is contained in:
jens
2020-11-25 20:48:03 +01:00
parent 0bb510e7ad
commit 77213fefaa
4 changed files with 66 additions and 28 deletions
+1 -1
View File
@@ -69,7 +69,7 @@ class HeaterTask(ATask):
self.heater.process()
power.set(round(self.heater.getPower()))
if power.is_changed():
await self.send({'Power': power.get()})
await self.send({'Power': power.get(), 'Activate': int(self.heater.getPower() != 0)})
await asyncio.sleep(self.interval)
+45 -19
View File
@@ -1925,30 +1925,56 @@
</rect>
</property>
</widget>
<widget class="QwtSlider" name="Slider">
<widget class="QGroupBox" name="groupBox">
<property name="geometry">
<rect>
<x>430</x>
<y>90</y>
<width>91</width>
<height>381</height>
<x>410</x>
<y>30</y>
<width>261</width>
<height>441</height>
</rect>
</property>
<property name="lowerBound">
<double>0.000000000000000</double>
</property>
<property name="upperBound">
<double>100.000000000000000</double>
</property>
<property name="scaleMaxMajor">
<number>7</number>
</property>
<property name="scaleMaxMinor">
<number>3</number>
</property>
<property name="scaleStepSize">
<double>0.000000000000000</double>
<property name="title">
<string>Heater</string>
</property>
<widget class="QCheckBox" name="checkbox_heater_activate">
<property name="geometry">
<rect>
<x>140</x>
<y>390</y>
<width>92</width>
<height>23</height>
</rect>
</property>
<property name="text">
<string>Activate</string>
</property>
</widget>
<widget class="QwtSlider" name="Slider">
<property name="geometry">
<rect>
<x>10</x>
<y>40</y>
<width>91</width>
<height>381</height>
</rect>
</property>
<property name="lowerBound">
<double>0.000000000000000</double>
</property>
<property name="upperBound">
<double>100.000000000000000</double>
</property>
<property name="scaleMaxMajor">
<number>7</number>
</property>
<property name="scaleMaxMinor">
<number>3</number>
</property>
<property name="scaleStepSize">
<double>0.000000000000000</double>
</property>
</widget>
</widget>
</widget>
<widget class="QMenuBar" name="menubar">
+10 -6
View File
@@ -29,12 +29,9 @@ class Window(QtWidgets.QMainWindow, Ui_MainWindow):
self.actionStart.triggered.connect(self.connect)
self.actionStop.triggered.connect(self.disconnect)
self.Slider.valueChanged.connect(self.on_slider_changed)
self.checkbox_heater_activate.stateChanged.connect(self.on_checkbox_changed)
self.send_data = Queue()
# Initially enqueue GUI setter
# Slider
self.msg_heater.send_from_thread({'Activate': 1, 'Power': self.Slider.value()})
def connect(self):
self.ws_client.connect(uri="ws://localhost:8765")
@@ -43,7 +40,11 @@ class Window(QtWidgets.QMainWindow, Ui_MainWindow):
def on_slider_changed(self, value):
print("on_slider_changed {}".format(value))
self.msg_heater.send_from_thread({'Activate': 1, 'Power': value})
self.msg_heater.send_from_thread({'Power': value})
def on_checkbox_changed(self, value):
print("on_checkbox_changed {}".format(value))
self.msg_heater.send_from_thread({'Activate': int(value == 2)})
async def on_pot_changed(self, msg):
print("on_pot_changed {}".format(msg))
@@ -58,8 +59,11 @@ class Window(QtWidgets.QMainWindow, Ui_MainWindow):
async def on_heater_changed(self, msg):
print("on_heater_changed {}".format(msg))
for key in msg:
if "Power" in key:
if "Activate" in key:
self.checkbox_heater_activate.setCheckState(2 if msg['Activate'] == 1 else 0)
elif "Power" in key:
self.lcdNumber.display(msg['Power'])
self.Slider.setValue(msg['Power'])
elif "Capabilities" in key:
submsg = msg['Capabilities']
if "Power" in submsg:
+10 -2
View File
@@ -658,8 +658,14 @@ class Ui_MainWindow(object):
self.Thermo = QwtThermo(self.centralwidget)
self.Thermo.setGeometry(QtCore.QRect(890, 50, 56, 201))
self.Thermo.setObjectName("Thermo")
self.Slider = QwtSlider(self.centralwidget)
self.Slider.setGeometry(QtCore.QRect(430, 90, 91, 381))
self.groupBox = QtWidgets.QGroupBox(self.centralwidget)
self.groupBox.setGeometry(QtCore.QRect(410, 30, 261, 441))
self.groupBox.setObjectName("groupBox")
self.checkbox_heater_activate = QtWidgets.QCheckBox(self.groupBox)
self.checkbox_heater_activate.setGeometry(QtCore.QRect(140, 390, 92, 23))
self.checkbox_heater_activate.setObjectName("checkbox_heater_activate")
self.Slider = QwtSlider(self.groupBox)
self.Slider.setGeometry(QtCore.QRect(10, 40, 91, 381))
self.Slider.setLowerBound(0.0)
self.Slider.setUpperBound(100.0)
self.Slider.setScaleMaxMajor(7)
@@ -702,6 +708,8 @@ class Ui_MainWindow(object):
MainWindow.setWindowTitle(_translate("MainWindow", "BrewPi"))
self.horizontalTabWidget.setTabText(self.horizontalTabWidget.indexOf(self.tab), _translate("MainWindow", "Seite"))
self.horizontalTabWidget.setTabText(self.horizontalTabWidget.indexOf(self.tab_2), _translate("MainWindow", "Seite"))
self.groupBox.setTitle(_translate("MainWindow", "Heater"))
self.checkbox_heater_activate.setText(_translate("MainWindow", "Activate"))
self.menu_File.setTitle(_translate("MainWindow", "&File"))
self.menu_Help.setTitle(_translate("MainWindow", "&Help"))
self.toolBar.setWindowTitle(_translate("MainWindow", "toolBar"))