Skip to content
Snippets Groups Projects
Commit 23b7358d authored by Tim Huppertz's avatar Tim Huppertz
Browse files

Made cycle length configurable.

parent 956e6401
No related branches found
No related tags found
No related merge requests found
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
# Form implementation generated from reading ui file 'ui/config.ui' # Form implementation generated from reading ui file 'ui/config.ui'
# #
# Created: Sat May 11 23:55:31 2013 # Created: Sun May 12 00:55:31 2013
# by: PyQt4 UI code generator 4.9.3 # by: PyQt4 UI code generator 4.9.3
# #
# WARNING! All changes made in this file will be lost! # WARNING! All changes made in this file will be lost!
...@@ -22,6 +22,7 @@ class Ui_configDialog(object): ...@@ -22,6 +22,7 @@ class Ui_configDialog(object):
self.formLayoutWidget.setGeometry(QtCore.QRect(0, 0, 401, 301)) self.formLayoutWidget.setGeometry(QtCore.QRect(0, 0, 401, 301))
self.formLayoutWidget.setObjectName(_fromUtf8("formLayoutWidget")) self.formLayoutWidget.setObjectName(_fromUtf8("formLayoutWidget"))
self.formLayout = QtGui.QFormLayout(self.formLayoutWidget) self.formLayout = QtGui.QFormLayout(self.formLayoutWidget)
self.formLayout.setFieldGrowthPolicy(QtGui.QFormLayout.AllNonFixedFieldsGrow)
self.formLayout.setMargin(0) self.formLayout.setMargin(0)
self.formLayout.setObjectName(_fromUtf8("formLayout")) self.formLayout.setObjectName(_fromUtf8("formLayout"))
self.lblName = QtGui.QLabel(self.formLayoutWidget) self.lblName = QtGui.QLabel(self.formLayoutWidget)
...@@ -30,18 +31,26 @@ class Ui_configDialog(object): ...@@ -30,18 +31,26 @@ class Ui_configDialog(object):
self.linName = QtGui.QLineEdit(self.formLayoutWidget) self.linName = QtGui.QLineEdit(self.formLayoutWidget)
self.linName.setObjectName(_fromUtf8("linName")) self.linName.setObjectName(_fromUtf8("linName"))
self.formLayout.setWidget(0, QtGui.QFormLayout.FieldRole, self.linName) self.formLayout.setWidget(0, QtGui.QFormLayout.FieldRole, self.linName)
self.cmbAnimal = QtGui.QComboBox(self.formLayoutWidget)
self.cmbAnimal.setObjectName(_fromUtf8("cmbAnimal"))
self.formLayout.setWidget(1, QtGui.QFormLayout.FieldRole, self.cmbAnimal)
self.lblAnimal = QtGui.QLabel(self.formLayoutWidget) self.lblAnimal = QtGui.QLabel(self.formLayoutWidget)
self.lblAnimal.setObjectName(_fromUtf8("lblAnimal")) self.lblAnimal.setObjectName(_fromUtf8("lblAnimal"))
self.formLayout.setWidget(1, QtGui.QFormLayout.LabelRole, self.lblAnimal) self.formLayout.setWidget(1, QtGui.QFormLayout.LabelRole, self.lblAnimal)
self.timBrushtime = QtGui.QTimeEdit(self.formLayoutWidget) self.cmbAnimal = QtGui.QComboBox(self.formLayoutWidget)
self.timBrushtime.setObjectName(_fromUtf8("timBrushtime")) self.cmbAnimal.setObjectName(_fromUtf8("cmbAnimal"))
self.formLayout.setWidget(2, QtGui.QFormLayout.FieldRole, self.timBrushtime) self.formLayout.setWidget(1, QtGui.QFormLayout.FieldRole, self.cmbAnimal)
self.lblBrushtime = QtGui.QLabel(self.formLayoutWidget) self.lblBrushtime = QtGui.QLabel(self.formLayoutWidget)
self.lblBrushtime.setObjectName(_fromUtf8("lblBrushtime")) self.lblBrushtime.setObjectName(_fromUtf8("lblBrushtime"))
self.formLayout.setWidget(2, QtGui.QFormLayout.LabelRole, self.lblBrushtime) self.formLayout.setWidget(2, QtGui.QFormLayout.LabelRole, self.lblBrushtime)
self.timBrushtime = QtGui.QTimeEdit(self.formLayoutWidget)
self.timBrushtime.setObjectName(_fromUtf8("timBrushtime"))
self.formLayout.setWidget(2, QtGui.QFormLayout.FieldRole, self.timBrushtime)
self.lblTimeout = QtGui.QLabel(self.formLayoutWidget)
self.lblTimeout.setObjectName(_fromUtf8("lblTimeout"))
self.formLayout.setWidget(3, QtGui.QFormLayout.LabelRole, self.lblTimeout)
self.spnTimeout = QtGui.QSpinBox(self.formLayoutWidget)
self.spnTimeout.setMinimum(1)
self.spnTimeout.setMaximum(120)
self.spnTimeout.setObjectName(_fromUtf8("spnTimeout"))
self.formLayout.setWidget(3, QtGui.QFormLayout.FieldRole, self.spnTimeout)
self.retranslateUi(configDialog) self.retranslateUi(configDialog)
QtCore.QMetaObject.connectSlotsByName(configDialog) QtCore.QMetaObject.connectSlotsByName(configDialog)
...@@ -50,8 +59,10 @@ class Ui_configDialog(object): ...@@ -50,8 +59,10 @@ class Ui_configDialog(object):
configDialog.setWindowTitle(QtGui.QApplication.translate("configDialog", "Form", None, QtGui.QApplication.UnicodeUTF8)) configDialog.setWindowTitle(QtGui.QApplication.translate("configDialog", "Form", None, QtGui.QApplication.UnicodeUTF8))
self.lblName.setText(QtGui.QApplication.translate("configDialog", "Name:", None, QtGui.QApplication.UnicodeUTF8)) self.lblName.setText(QtGui.QApplication.translate("configDialog", "Name:", None, QtGui.QApplication.UnicodeUTF8))
self.linName.setToolTip(QtGui.QApplication.translate("configDialog", "<html><head/><body><p>Name of the pet.</p></body></html>", None, QtGui.QApplication.UnicodeUTF8)) self.linName.setToolTip(QtGui.QApplication.translate("configDialog", "<html><head/><body><p>Name of the pet.</p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
self.cmbAnimal.setToolTip(QtGui.QApplication.translate("configDialog", "<html><head/><body><p>The kind of animal to use.</p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
self.lblAnimal.setText(QtGui.QApplication.translate("configDialog", "Animal", None, QtGui.QApplication.UnicodeUTF8)) self.lblAnimal.setText(QtGui.QApplication.translate("configDialog", "Animal", None, QtGui.QApplication.UnicodeUTF8))
self.timBrushtime.setToolTip(QtGui.QApplication.translate("configDialog", "<html><head/><body><p>Time of day the animal needs to brush its teeth.</p></body></html>", None, QtGui.QApplication.UnicodeUTF8)) self.cmbAnimal.setToolTip(QtGui.QApplication.translate("configDialog", "<html><head/><body><p>The kind of animal to use.</p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
self.lblBrushtime.setText(QtGui.QApplication.translate("configDialog", "Brush time", None, QtGui.QApplication.UnicodeUTF8)) self.lblBrushtime.setText(QtGui.QApplication.translate("configDialog", "Brush time", None, QtGui.QApplication.UnicodeUTF8))
self.timBrushtime.setToolTip(QtGui.QApplication.translate("configDialog", "<html><head/><body><p>Time of day the animal needs to brush its teeth.</p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
self.lblTimeout.setText(QtGui.QApplication.translate("configDialog", "Cycle length", None, QtGui.QApplication.UnicodeUTF8))
self.spnTimeout.setToolTip(QtGui.QApplication.translate("configDialog", "<html><head/><body><p>Seconds between changes in the animal\'s state over time</p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
...@@ -45,6 +45,7 @@ class Koala(): ...@@ -45,6 +45,7 @@ class Koala():
self.weight = 10 self.weight = 10
self.name = "Tim" self.name = "Tim"
self.animal = "koala" self.animal = "koala"
self.timeout = 5000
self.load() self.load()
...@@ -105,6 +106,7 @@ class Koala(): ...@@ -105,6 +106,7 @@ class Koala():
cfgParser.set('koala', 'name', self.name) cfgParser.set('koala', 'name', self.name)
cfgParser.set('koala', 'animal', self.animal) cfgParser.set('koala', 'animal', self.animal)
cfgParser.set('behaviour', 'brushtime', self.brushtime) cfgParser.set('behaviour', 'brushtime', self.brushtime)
cfgParser.set('behaviour', 'timeout', self.timeout)
cfgParser.set('state', 'happiness', self.happiness) cfgParser.set('state', 'happiness', self.happiness)
cfgParser.set('state', 'hunger', self.hunger) cfgParser.set('state', 'hunger', self.hunger)
...@@ -128,6 +130,7 @@ class Koala(): ...@@ -128,6 +130,7 @@ class Koala():
self.name = cfgParser.get('koala', 'name') self.name = cfgParser.get('koala', 'name')
self.animal = cfgParser.get('koala', 'animal') self.animal = cfgParser.get('koala', 'animal')
self.brushtime = cfgParser.get('behaviour', 'brushtime') self.brushtime = cfgParser.get('behaviour', 'brushtime')
self.timeout = int(cfgParser.get('behaviour', 'timeout'))
self.happiness = float(cfgParser.get('state', 'happiness')) self.happiness = float(cfgParser.get('state', 'happiness'))
self.hunger = float(cfgParser.get('state', 'hunger')) self.hunger = float(cfgParser.get('state', 'hunger'))
...@@ -196,7 +199,6 @@ class Deskoala(plasmascript.Applet): ...@@ -196,7 +199,6 @@ class Deskoala(plasmascript.Applet):
def init(self): def init(self):
self.setHasConfigurationInterface(True) self.setHasConfigurationInterface(True)
self.resize(320, 260) self.resize(320, 260)
# self.setAspectRatioMode(Plasma.Square)
self.layout = QGraphicsLinearLayout(Qt.Horizontal,self.applet) self.layout = QGraphicsLinearLayout(Qt.Horizontal,self.applet)
self.label = Plasma.Label(self.applet) self.label = Plasma.Label(self.applet)
self.layout.addItem(self.label) self.layout.addItem(self.label)
...@@ -219,7 +221,7 @@ class Deskoala(plasmascript.Applet): ...@@ -219,7 +221,7 @@ class Deskoala(plasmascript.Applet):
self.buttons.append(buttons) self.buttons.append(buttons)
self.layout.addItem(buttons) self.layout.addItem(buttons)
self.startTimer(5000) self.startTimer(self.koala.timeout)
def createConfigurationInterface(self,parent): def createConfigurationInterface(self,parent):
self.koalaConfig = KoalaConfig(self) self.koalaConfig = KoalaConfig(self)
...@@ -230,6 +232,7 @@ class Deskoala(plasmascript.Applet): ...@@ -230,6 +232,7 @@ class Deskoala(plasmascript.Applet):
self.koalaConfig.linName.setText(self.koala.name) self.koalaConfig.linName.setText(self.koala.name)
self.koalaConfig.timBrushtime.setTime(QTime.fromString(self.koala.brushtime, "h:m")) self.koalaConfig.timBrushtime.setTime(QTime.fromString(self.koala.brushtime, "h:m"))
self.koalaConfig.spnTimeout.setValue(self.koala.timeout / 1000)
animals = ["koala", "kangaroo"] animals = ["koala", "kangaroo"]
for i in animals: for i in animals:
...@@ -249,8 +252,11 @@ class Deskoala(plasmascript.Applet): ...@@ -249,8 +252,11 @@ class Deskoala(plasmascript.Applet):
self.koala.name = self.koalaConfig.linName.text() self.koala.name = self.koalaConfig.linName.text()
self.koala.brushtime = str(self.koalaConfig.timBrushtime.time().toString("h:m")) self.koala.brushtime = str(self.koalaConfig.timBrushtime.time().toString("h:m"))
self.koala.animal = self.koalaConfig.cmbAnimal.currentText() self.koala.animal = self.koalaConfig.cmbAnimal.currentText()
self.koala.timeout = self.koalaConfig.spnTimeout.value() * 1000
self.koala.save() self.koala.save()
self.startTimer(self.koala.timeout)
def configDenied(self): def configDenied(self):
pass pass
......
...@@ -23,6 +23,9 @@ ...@@ -23,6 +23,9 @@
</rect> </rect>
</property> </property>
<layout class="QFormLayout" name="formLayout"> <layout class="QFormLayout" name="formLayout">
<property name="fieldGrowthPolicy">
<enum>QFormLayout::AllNonFixedFieldsGrow</enum>
</property>
<item row="0" column="0"> <item row="0" column="0">
<widget class="QLabel" name="lblName"> <widget class="QLabel" name="lblName">
<property name="text"> <property name="text">
...@@ -37,6 +40,13 @@ ...@@ -37,6 +40,13 @@
</property> </property>
</widget> </widget>
</item> </item>
<item row="1" column="0">
<widget class="QLabel" name="lblAnimal">
<property name="text">
<string>Animal</string>
</property>
</widget>
</item>
<item row="1" column="1"> <item row="1" column="1">
<widget class="QComboBox" name="cmbAnimal"> <widget class="QComboBox" name="cmbAnimal">
<property name="toolTip"> <property name="toolTip">
...@@ -44,10 +54,10 @@ ...@@ -44,10 +54,10 @@
</property> </property>
</widget> </widget>
</item> </item>
<item row="1" column="0"> <item row="2" column="0">
<widget class="QLabel" name="lblAnimal"> <widget class="QLabel" name="lblBrushtime">
<property name="text"> <property name="text">
<string>Animal</string> <string>Brush time</string>
</property> </property>
</widget> </widget>
</item> </item>
...@@ -58,10 +68,23 @@ ...@@ -58,10 +68,23 @@
</property> </property>
</widget> </widget>
</item> </item>
<item row="2" column="0"> <item row="3" column="0">
<widget class="QLabel" name="lblBrushtime"> <widget class="QLabel" name="lblTimeout">
<property name="text"> <property name="text">
<string>Brush time</string> <string>Cycle length</string>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QSpinBox" name="spnTimeout">
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Seconds between changes in the animal's state over time&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>120</number>
</property> </property>
</widget> </widget>
</item> </item>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment