import string
from Screens.HelpMenu import HelpableScreen
-from Components.config import config, KEY_LEFT, KEY_RIGHT
+from Components.config import config, KEY_LEFT, KEY_RIGHT, KEY_DELETE, KEY_BACKSPACE
from Components.Label import Label
from Components.Slider import Slider
from Components.ActionMap import NumberActionMap
def setText(self, text):
self["text"].setText(text)
-class Wizard(Screen, HelpableScreen):
+class Wizard(Screen):
def createSummary(self):
print "WizardCreateSummary"
return WizardSummary
type = str(attrs.get('type'))
self.wizard[self.lastStep]["config"]["type"] = type
if type == "ConfigList" or type == "standalone":
- exec "from Screens." + str(attrs.get('module')) + " import *"
+ try:
+ exec "from Screens." + str(attrs.get('module')) + " import *"
+ except:
+ exec "from " + str(attrs.get('module')) + " import *"
self.wizard[self.lastStep]["config"]["screen"] = eval(str(attrs.get('screen')))
if (attrs.has_key('args')):
def __init__(self, session, showSteps = True, showStepSlider = True, showList = True, showConfig = True):
Screen.__init__(self, session)
- HelpableScreen.__init__(self)
self.stepHistory = []
self["text"] = Label()
if showConfig:
- self["config"] = ConfigList([])
+ self["config"] = ConfigList([], session = session)
if self.showSteps:
self["step"] = Label()
self.disableKeys = False
- self["actions"] = NumberActionMap(["WizardActions", "NumberActions", "ColorActions"],
+ self["actions"] = NumberActionMap(["WizardActions", "NumberActions", "ColorActions", "SetupActions"],
{
"ok": self.ok,
"back": self.back,
"green": self.green,
"yellow": self.yellow,
"blue":self.blue,
+ "deleteBackward": self.deleteBackward,
+ "deleteForward": self.deleteForward,
"1": self.keyNumberGlobal,
"2": self.keyNumberGlobal,
"3": self.keyNumberGlobal,
print "blue"
pass
+ def deleteForward(self):
+ self.resetCounter()
+ if (self.wizard[self.currStep]["config"]["screen"] != None):
+ self.configInstance.keyDelete()
+ elif (self.wizard[self.currStep]["config"]["type"] == "dynamic"):
+ self["config"].handleKey(KEY_DELETE)
+ print "deleteForward"
+
+ def deleteBackward(self):
+ self.resetCounter()
+ if (self.wizard[self.currStep]["config"]["screen"] != None):
+ self.configInstance.keyBackspace()
+ elif (self.wizard[self.currStep]["config"]["type"] == "dynamic"):
+ self["config"].handleKey(KEY_BACKSPACE)
+ print "deleteBackward"
+
def setLCDTextCallback(self, callback):
self.lcdCallbacks.append(callback)