from Screen import Screen
from Components.ActionMap import ActionMap
from Components.Label import Label
-from Components.Button import Button
from Components.Pixmap import Pixmap
from Components.MenuList import MenuList
-from enigma import eSize, ePoint, eTimer
+from enigma import eTimer
class MessageBox(Screen):
TYPE_YESNO = 0
TYPE_INFO = 1
TYPE_WARNING = 2
TYPE_ERROR = 3
-
- def __init__(self, session, text, type = TYPE_YESNO, timeout = -1, close_on_any_key = False):
+
+ def __init__(self, session, text, type = TYPE_YESNO, timeout = -1, close_on_any_key = False, default = True):
self.type = type
Screen.__init__(self, session)
-
+
self["text"] = Label(text)
-
+
self.text = text
self.close_on_any_key = close_on_any_key
-
+
self["ErrorPixmap"] = Pixmap()
self["QuestionPixmap"] = Pixmap()
self["InfoPixmap"] = Pixmap()
self["QuestionPixmap"].hide()
if type != self.TYPE_INFO:
self["InfoPixmap"].hide()
-
+
if type == self.TYPE_YESNO:
- self.list = [ (_("yes"), 0), (_("no"), 1) ]
+ if default == True:
+ self.list = [ (_("yes"), 0), (_("no"), 1) ]
+ else:
+ self.list = [ (_("no"), 1), (_("yes"), 0) ]
self["list"] = MenuList(self.list)
-
+
self["actions"] = ActionMap(["MsgBoxActions", "DirectionActions"],
{
"cancel": self.cancel,
self.timeout = timeout
if timeout > 0:
self.timer = eTimer()
- self.timer.timeout.get().append(self.timerTick)
+ self.timer.callback.append(self.timerTick)
self.onExecBegin.append(self.startTimer)
self.origTitle = None
if self.execing:
def timeoutCallback(self):
print "Timeout!"
self.ok()
-
+
def cancel(self):
self.close(False)
-
+
def ok(self):
if self.type == self.TYPE_YESNO:
self.close(self["list"].getCurrent()[1] == 0)
def up(self):
self.move(self["list"].instance.moveUp)
-
+
def down(self):
self.move(self["list"].instance.moveDown)
def left(self):
self.move(self["list"].instance.pageUp)
-
+
def right(self):
self.move(self["list"].instance.pageDown)