Skip to content
Snippets Groups Projects
Commit 8ee0e8f3 authored by Mark Tearle's avatar Mark Tearle
Browse files

Connect up Door widget callback

parent 9e9d7af9
Branches
No related merge requests found
......@@ -2,3 +2,6 @@ virtualsnack
============
Curses based emulator of the UCC Snack Machine ROM
Requirements:
npyscreen 4.6.1 or later
......@@ -36,7 +36,6 @@ class VirtualSnack(npyscreen.Form):
self.textdisplay.value = self.parentApp.textdisplay
self.display()
def create(self, *args, **keywords):
super(VirtualSnack, self).create(*args, **keywords)
......@@ -53,7 +52,7 @@ class VirtualSnack(npyscreen.Form):
self.reset= self.add(npyscreen.MiniButton,name="RESET", relx = kpx + 7, rely = kpy)
self.dip = self.add(npyscreen.MultiSelect, name = "Door", max_width=15, relx = 4, rely = 10, max_height=4, value = [], values = ["DOOR"], scroll_exit=True)
self.dip = self.add(npyscreen.MultiSelect, name = "Door", max_width=15, relx = 4, rely = 10, max_height=4, value = [], values = ["DOOR"], scroll_exit=True, value_changed_callback=self.parentApp.when_door_toggled)
self.dip = self.add(npyscreen.MultiSelect, name = "DIP Switch", max_width = 45, rely =3, relx = 30, max_height=10, value = [], values = ["DIP1", "DIP2", "DIP3","DIP4","DIP5","DIP6","DIP7","DIP8"], scroll_exit=True)
......@@ -165,6 +164,18 @@ class VirtualSnackApp(npyscreen.NPSAppManaged):
self.sent = data
# Callbacks
def when_door_toggled(self, *args, **keywords):
# See
# https://code.google.com/p/npyscreen/source/detail?r=9768a97fd80ed1e7b3e670f312564c19b1adfef8#
# for callback info
if keywords['widget'].get_selected_objects():
self.do_send('401 door closed\n')
else:
self.do_send('400 door open\n')
# Snack Emulator code below
def do_prompt(self):
......@@ -358,14 +369,6 @@ if __name__ == "__main__":
# key = '0'+key
# self.do_send('2'+key+' keypress\n')
# FIXME
# def door_changed(self, widget):
# self.switches.set_door_open(not widget.get_active())
# if widget.get_active():
# self.do_send('401 door closed\n')
# else:
# self.do_send('400 door open\n')
# FIXME
# def handleNewConnection(self,source,condition):
# #source is a socket in GTK v 1 and a fd in version 2
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment