Trigger State added to handle GPIO and keypress similarly

This commit is contained in:
Balthasar Reuter
2018-05-09 22:49:21 +02:00
parent 613a4dc6de
commit 8881b6aeec
3 changed files with 13 additions and 3 deletions

View File

@@ -262,7 +262,7 @@ class Photobooth:
raise RuntimeError('Unknown event received', str(event))
self._send.send(gui.IdleState())
self._lampOn()
self.triggerOn()
def gpioTrigger(self):
@@ -279,4 +279,4 @@ class Photobooth:
def triggerOn(self):
self._lampOn()
self._gpioTrigger = self.trigger
self._gpioTrigger = lambda : self._send.send(Gui.TriggerState())

View File

@@ -63,7 +63,8 @@ class PyQt5Gui(Gui):
if event.key() == Qt.Key_Escape:
self.showStart()
elif event.key() == Qt.Key_Space:
self._transport.send('triggered')
# self._transport.send('triggered')
self.handleState(TriggerState())
def handleKeypressEventNoTrigger(self, event):
@@ -79,6 +80,8 @@ class PyQt5Gui(Gui):
if isinstance(state, IdleState):
self.showIdle()
elif isinstance(state, TriggerState):
self._transport.send('triggered')
elif isinstance(state, GreeterState):
global cfg
self._p.handleKeypressEvent = self.handleKeypressEventNoTrigger

View File

@@ -115,6 +115,13 @@ class MessageState(GuiState):
class TriggerState(GuiState):
def __init__(self, **kwargs):
super().__init__(**kwargs)
class GreeterState(GuiState):
def __init__(self, **kwargs):