From b58a0fa7cab89937586e2d08d79274fab3f14edc Mon Sep 17 00:00:00 2001 From: Andreas Monzner Date: Sun, 7 Jan 2007 01:28:51 +0000 Subject: [PATCH] ask user before a recordtimer set the box to standby or deepstandby --- RecordTimer.py | 12 ++++++++++-- lib/python/Screens/MessageBox.py | 6 +----- lib/python/Screens/Standby.py | 8 ++++---- 3 files changed, 15 insertions(+), 11 deletions(-) diff --git a/RecordTimer.py b/RecordTimer.py index 839069ac..a380d67c 100644 --- a/RecordTimer.py +++ b/RecordTimer.py @@ -215,13 +215,21 @@ class RecordTimerEntry(timer.TimerEntry): if self.afterEvent == AFTEREVENT.STANDBY: global inStandby if not inStandby: - Notifications.AddNotification(Standby) + Notifications.AddNotificationWithCallback(self.sendStandbyNotification, MessageBox, _("A record timer want's to set your\nDreambox to standby. Do that now?"), timeout = 20) if self.afterEvent == AFTEREVENT.DEEPSTANDBY: global inTryQuitMainloop if not inTryQuitMainloop: - Notifications.AddNotification(TryQuitMainloop, 1) + Notifications.AddNotificationWithCallback(self.sendTryQuitMainloopNotification, MessageBox, _("A record timer want's to shut down\nyour Dreambox. Shutdown now?"), timeout = 20) return True + def sendStandbyNotification(self, answer): + if answer: + Notifications.AddNotification(Standby) + + def sendTryQuitMainloopNotification(self, answer): + if answer: + Notifications.AddNotification(TryQuitMainloop, 1) + def getNextActivation(self): if self.state == self.StateEnded: return self.end diff --git a/lib/python/Screens/MessageBox.py b/lib/python/Screens/MessageBox.py index e9c0786f..6c7bdd3c 100644 --- a/lib/python/Screens/MessageBox.py +++ b/lib/python/Screens/MessageBox.py @@ -124,12 +124,8 @@ class MessageBox(Screen): def move(self, direction): if self.close_on_any_key: self.close(True) - 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 + ")" diff --git a/lib/python/Screens/Standby.py b/lib/python/Screens/Standby.py index cb0a957e..0401cd90 100644 --- a/lib/python/Screens/Standby.py +++ b/lib/python/Screens/Standby.py @@ -89,7 +89,7 @@ from time import time inTryQuitMainloop = False class TryQuitMainloop(MessageBox): - def __init__(self, session, retvalue=1): + def __init__(self, session, retvalue=1, timeout=-1): self.retval=retvalue recordings = len(session.nav.getRecordings()) self.connected = False @@ -98,13 +98,13 @@ class TryQuitMainloop(MessageBox): next_rec_time = session.nav.RecordTimer.getNextRecordingTime() if recordings or (next_rec_time > 0 and (next_rec_time - time()) < 360): if retvalue == 1: - MessageBox.__init__(self, session, _("Recording(s) are in progress or comming up in few seconds... really shutdown now?"), type = MessageBox.TYPE_YESNO, timeout = -1, close_on_any_key = False) + MessageBox.__init__(self, session, _("Recording(s) are in progress or comming up in few seconds... really shutdown now?"), type = MessageBox.TYPE_YESNO, timeout = timeout) elif retvalue == 2: - MessageBox.__init__(self, session, _("Recording(s) are in progress or comming up in few seconds... really reboot now?"), type = MessageBox.TYPE_YESNO, timeout = -1, close_on_any_key = False) + MessageBox.__init__(self, session, _("Recording(s) are in progress or comming up in few seconds... really reboot now?"), type = MessageBox.TYPE_YESNO, timeout = timeout) elif retvalue == 4: pass else: - MessageBox.__init__(self, session, _("Recording(s) are in progress or comming up in few seconds... really restart now?"), type = MessageBox.TYPE_YESNO, timeout = -1, close_on_any_key = False) + MessageBox.__init__(self, session, _("Recording(s) are in progress or comming up in few seconds... really restart now?"), type = MessageBox.TYPE_YESNO, timeout = timeout) self.skinName = "MessageBox" session.nav.record_event.append(self.getRecordEvent) self.connected = True -- 2.30.2