git.cweiske.de
/
enigma2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
ugly messagebox summary screen, choices is still missing
[enigma2.git]
/
lib
/
python
/
Screens
/
MessageBox.py
diff --git
a/lib/python/Screens/MessageBox.py
b/lib/python/Screens/MessageBox.py
index e9c0786ff7d64811aeed0872fe2e568512fed9a1..c3e3813b0c65d14f2bfce2d9e69f73b04df1ab98 100644
(file)
--- a/
lib/python/Screens/MessageBox.py
+++ b/
lib/python/Screens/MessageBox.py
@@
-1,26
+1,27
@@
from Screen import Screen
from Components.ActionMap import ActionMap
from Components.Label import Label
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 Components.Pixmap import Pixmap
from Components.MenuList import MenuList
-from enigma import eSize, ePoint, eTimer
+from Components.Sources.StaticText import StaticText
+from enigma import eTimer
class MessageBox(Screen):
TYPE_YESNO = 0
TYPE_INFO = 1
TYPE_WARNING = 2
TYPE_ERROR = 3
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.type = type
Screen.__init__(self, session)
-
+
self["text"] = Label(text)
self["text"] = Label(text)
-
+ self["Text"] = StaticText(text)
+
self.text = text
self.close_on_any_key = close_on_any_key
self.text = text
self.close_on_any_key = close_on_any_key
-
+
self["ErrorPixmap"] = Pixmap()
self["QuestionPixmap"] = Pixmap()
self["InfoPixmap"] = Pixmap()
self["ErrorPixmap"] = Pixmap()
self["QuestionPixmap"] = Pixmap()
self["InfoPixmap"] = Pixmap()
@@
-34,12
+35,15
@@
class MessageBox(Screen):
self["QuestionPixmap"].hide()
if type != self.TYPE_INFO:
self["InfoPixmap"].hide()
self["QuestionPixmap"].hide()
if type != self.TYPE_INFO:
self["InfoPixmap"].hide()
-
+
if type == self.TYPE_YESNO:
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["list"] = MenuList(self.list)
-
+
self["actions"] = ActionMap(["MsgBoxActions", "DirectionActions"],
{
"cancel": self.cancel,
self["actions"] = ActionMap(["MsgBoxActions", "DirectionActions"],
{
"cancel": self.cancel,
@@
-59,20
+63,21
@@
class MessageBox(Screen):
self.timeout = timeout
if timeout > 0:
self.timer = eTimer()
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
self.onExecBegin.append(self.startTimer)
self.origTitle = None
- try:
- if self.instance and self.instance.isVisible():
- self.timerTick()
- else:
- self.onShown.append(self.timerTick)
- except AttributeError:
- self.onShown.append(self.timerTick)
+ if self.execing:
+ self.timerTick()
+ else:
+ self.onShown.append(self.__onShown)
self.timerRunning = True
else:
self.timerRunning = False
self.timerRunning = True
else:
self.timerRunning = False
+ def __onShown(self):
+ self.onShown.remove(self.__onShown)
+ self.timerTick()
+
def startTimer(self):
self.timer.start(1000)
def startTimer(self):
self.timer.start(1000)
@@
-80,7
+85,7
@@
class MessageBox(Screen):
if self.timerRunning:
del self.timer
self.setTitle(self.origTitle)
if self.timerRunning:
del self.timer
self.setTitle(self.origTitle)
- self.
onShown.remove(self.timerTick)
+ self.
timerRunning = False
def timerTick(self):
if self.execing:
def timerTick(self):
if self.execing:
@@
-96,10
+101,10
@@
class MessageBox(Screen):
def timeoutCallback(self):
print "Timeout!"
self.ok()
def timeoutCallback(self):
print "Timeout!"
self.ok()
-
+
def cancel(self):
self.close(False)
def cancel(self):
self.close(False)
-
+
def ok(self):
if self.type == self.TYPE_YESNO:
self.close(self["list"].getCurrent()[1] == 0)
def ok(self):
if self.type == self.TYPE_YESNO:
self.close(self["list"].getCurrent()[1] == 0)
@@
-111,25
+116,21
@@
class MessageBox(Screen):
def up(self):
self.move(self["list"].instance.moveUp)
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 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)
def move(self, direction):
if self.close_on_any_key:
self.close(True)
def right(self):
self.move(self["list"].instance.pageDown)
def move(self, direction):
if self.close_on_any_key:
self.close(True)
-
self["list"].instance.moveSelection(direction)
self["list"].instance.moveSelection(direction)
- if self.timerRunning:
- self.timer.stop()
- self.setTitle(self.origTitle)
- self.timerRunning = False
+ self.stopTimer()
def __repr__(self):
return str(type(self)) + "(" + self.text + ")"
def __repr__(self):
return str(type(self)) + "(" + self.text + ")"