git.cweiske.de
/
enigma2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
allow gstreamer to signalize missing plugins to the gui (requires reconfiguring enigm...
[enigma2.git]
/
lib
/
python
/
Plugins
/
Extensions
/
DVDPlayer
/
plugin.py
diff --git
a/lib/python/Plugins/Extensions/DVDPlayer/plugin.py
b/lib/python/Plugins/Extensions/DVDPlayer/plugin.py
index f9f45cbcff5c7c0c780f4606610f67767419e961..b201d2c6df682a8a2e006e4dec01bdce6965525d 100644
(file)
--- a/
lib/python/Plugins/Extensions/DVDPlayer/plugin.py
+++ b/
lib/python/Plugins/Extensions/DVDPlayer/plugin.py
@@
-12,6
+12,7
@@
from Components.MenuList import MenuList
from Components.ServiceEventTracker import ServiceEventTracker, InfoBarBase
from Components.config import config
from Tools.Directories import pathExists, fileExists
from Components.ServiceEventTracker import ServiceEventTracker, InfoBarBase
from Components.config import config
from Tools.Directories import pathExists, fileExists
+from Components.Harddisk import harddiskmanager
import servicedvd # load c++ part of dvd player plugin
import servicedvd # load c++ part of dvd player plugin
@@
-22,15
+23,13
@@
class FileBrowser(Screen):
<screen name="FileBrowser" position="100,100" size="520,376" title="DVD File Browser" >
<widget name="filelist" position="0,0" size="520,376" scrollbarMode="showOnDemand" />
</screen>"""
<screen name="FileBrowser" position="100,100" size="520,376" title="DVD File Browser" >
<widget name="filelist" position="0,0" size="520,376" scrollbarMode="showOnDemand" />
</screen>"""
- def __init__(self, session, dvd_filelist =
None
):
+ def __init__(self, session, dvd_filelist =
[ ]
):
Screen.__init__(self, session)
Screen.__init__(self, session)
- if dvd_filelist:
- self.dvd_filelist = dvd_filelist
+ self.dvd_filelist = dvd_filelist
+ if len(dvd_filelist):
self["filelist"] = MenuList(self.dvd_filelist)
self["filelist"] = MenuList(self.dvd_filelist)
-
else:
else:
- self.dvd_filelist = None
global lastpath
if lastpath is not None:
currDir = lastpath + "/"
global lastpath
if lastpath is not None:
currDir = lastpath + "/"
@@
-49,7
+48,7
@@
class FileBrowser(Screen):
})
def ok(self):
})
def ok(self):
- if
self.dvd_filelist
:
+ if
len(self.dvd_filelist)
:
print "OK " + self["filelist"].getCurrent()
self.close(self["filelist"].getCurrent())
else:
print "OK " + self["filelist"].getCurrent()
self.close(self["filelist"].getCurrent())
else:
@@
-235,7
+234,7
@@
class DVDPlayer(Screen, InfoBarBase, InfoBarNotifications, InfoBarSeek, InfoBarP
config.seek.stepwise_repeat.value = self.saved_config_seek_stepwise_repeat
config.seek.on_pause.value = self.saved_config_seek_on_pause
config.seek.stepwise_repeat.value = self.saved_config_seek_stepwise_repeat
config.seek.on_pause.value = self.saved_config_seek_on_pause
- def __init__(self, session, dvd_device = None, dvd_filelist =
None
, args = None):
+ def __init__(self, session, dvd_device = None, dvd_filelist =
[ ]
, args = None):
Screen.__init__(self, session)
InfoBarBase.__init__(self)
InfoBarNotifications.__init__(self)
Screen.__init__(self, session)
InfoBarBase.__init__(self)
InfoBarNotifications.__init__(self)
@@
-277,13
+276,13
@@
class DVDPlayer(Screen, InfoBarBase, InfoBarNotifications, InfoBarSeek, InfoBarP
iPlayableService.evUser+12: self.__menuClosed
})
iPlayableService.evUser+12: self.__menuClosed
})
- self["DVDPlayerDirectionActions"] =
HelpableActionMap(self, "DirectionActions"
,
+ self["DVDPlayerDirectionActions"] =
ActionMap(["DirectionActions"]
,
{
#MENU KEY DOWN ACTIONS
{
#MENU KEY DOWN ACTIONS
- "left":
(self.keyLeft, _("DVD left key"))
,
- "right":
(self.keyRight, _("DVD right key"))
,
- "up":
(self.keyUp, _("DVD up key"))
,
- "down":
(self.keyDown, _("DVD down key"))
,
+ "left":
self.keyLeft
,
+ "right":
self.keyRight
,
+ "up":
self.keyUp
,
+ "down":
self.keyDown
,
#MENU KEY REPEATED ACTIONS
"leftRepeated": self.doNothing,
#MENU KEY REPEATED ACTIONS
"leftRepeated": self.doNothing,
@@
-296,13
+295,13
@@
class DVDPlayer(Screen, InfoBarBase, InfoBarNotifications, InfoBarSeek, InfoBarP
"rightUp": self.doNothing,
"upUp": self.doNothing,
"downUp": self.doNothing,
"rightUp": self.doNothing,
"upUp": self.doNothing,
"downUp": self.doNothing,
- }
, -2
)
+ })
- self["OkCancelActions"] =
HelpableActionMap(self, "OkCancelActions"
,
+ self["OkCancelActions"] =
ActionMap(["OkCancelActions"]
,
{
{
- "ok":
(self.keyOk, _("DVD ENTER key"))
,
+ "ok":
self.keyOk
,
"cancel": self.keyCancel,
"cancel": self.keyCancel,
- }
, -2
)
+ })
self["DVDPlayerPlaybackActions"] = HelpableActionMap(self, "DVDPlayerActions",
{
self["DVDPlayerPlaybackActions"] = HelpableActionMap(self, "DVDPlayerActions",
{
@@
-317,7
+316,7
@@
class DVDPlayer(Screen, InfoBarBase, InfoBarNotifications, InfoBarSeek, InfoBarP
"dvdAudioMenu": (self.enterDVDAudioMenu, _("(show optional DVD audio menu)")),
"nextAudioTrack": (self.nextAudioTrack, _("switch to the next audio track")),
"nextSubtitleTrack": (self.nextSubtitleTrack, _("switch to the next subtitle language")),
"dvdAudioMenu": (self.enterDVDAudioMenu, _("(show optional DVD audio menu)")),
"nextAudioTrack": (self.nextAudioTrack, _("switch to the next audio track")),
"nextSubtitleTrack": (self.nextSubtitleTrack, _("switch to the next subtitle language")),
- "seekBeginning":
(self.seekBeginning, _("Jump to video title 1 (play movie from start)"))
,
+ "seekBeginning":
self.seekBeginning
,
}, -2)
self["NumberActions"] = NumberActionMap( [ "NumberActions"],
}, -2)
self["NumberActions"] = NumberActionMap( [ "NumberActions"],
@@
-340,9
+339,9
@@
class DVDPlayer(Screen, InfoBarBase, InfoBarNotifications, InfoBarSeek, InfoBarP
self.dvd_device = dvd_device
self.physicalDVD = True
else:
self.dvd_device = dvd_device
self.physicalDVD = True
else:
- if fileExists(
"/dev/cdroms/cdrom0"
):
- print "physical dvd found
(/dev/cdroms/cdrom0)"
- self.dvd_device =
"/dev/cdroms/cdrom0"
+ if fileExists(
harddiskmanager.getCD()
):
+ print "physical dvd found
:", harddiskmanager.getCD()
+ self.dvd_device =
harddiskmanager.getCD()
self.physicalDVD = True
else:
self.dvd_device = None
self.physicalDVD = True
else:
self.dvd_device = None
@@
-431,22
+430,24
@@
class DVDPlayer(Screen, InfoBarBase, InfoBarNotifications, InfoBarSeek, InfoBarP
def __osdAudioInfoAvail(self):
audioTuple = self.service.info().getInfoObject(iServiceInformation.sUser+6)
print "AudioInfoAvail ", repr(audioTuple)
def __osdAudioInfoAvail(self):
audioTuple = self.service.info().getInfoObject(iServiceInformation.sUser+6)
print "AudioInfoAvail ", repr(audioTuple)
- audioString = "%d: %s (%s)" % (audioTuple[0],audioTuple[1],audioTuple[2])
- self["audioLabel"].setText(audioString)
- if audioTuple != self.last_audioTuple and not self.in_menu:
- self.doShow()
- self.last_audioTuple = audioTuple
+ if audioTuple:
+ audioString = "%d: %s (%s)" % (audioTuple[0],audioTuple[1],audioTuple[2])
+ self["audioLabel"].setText(audioString)
+ if audioTuple != self.last_audioTuple and not self.in_menu:
+ self.doShow()
+ self.last_audioTuple = audioTuple
def __osdSubtitleInfoAvail(self):
subtitleTuple = self.service.info().getInfoObject(iServiceInformation.sUser+7)
print "SubtitleInfoAvail ", repr(subtitleTuple)
def __osdSubtitleInfoAvail(self):
subtitleTuple = self.service.info().getInfoObject(iServiceInformation.sUser+7)
print "SubtitleInfoAvail ", repr(subtitleTuple)
- subtitleString = ""
- if subtitleTuple[0] is not 0:
- subtitleString = "%d: %s" % (subtitleTuple[0],subtitleTuple[1])
- self["subtitleLabel"].setText(subtitleString)
- if subtitleTuple != self.last_subtitleTuple and not self.in_menu:
- self.doShow()
- self.last_subtitleTuple = subtitleTuple
+ if subtitleTuple:
+ subtitleString = ""
+ if subtitleTuple[0] is not 0:
+ subtitleString = "%d: %s" % (subtitleTuple[0],subtitleTuple[1])
+ self["subtitleLabel"].setText(subtitleString)
+ if subtitleTuple != self.last_subtitleTuple and not self.in_menu:
+ self.doShow()
+ self.last_subtitleTuple = subtitleTuple
def __chapterUpdated(self):
self.currentChapter = self.service.info().getInfo(iServiceInformation.sCurrentChapter)
def __chapterUpdated(self):
self.currentChapter = self.service.info().getInfo(iServiceInformation.sCurrentChapter)
@@
-540,11
+541,13
@@
class DVDPlayer(Screen, InfoBarBase, InfoBarNotifications, InfoBarSeek, InfoBarP
self.askLeavePlayer()
def showFileBrowser(self):
self.askLeavePlayer()
def showFileBrowser(self):
- if self.physicalDVD:
- if self.dvd_device ==
"/dev/cdroms/cdrom0"
:
+ if self.physicalDVD
and len(self.dvd_filelist) == 0
:
+ if self.dvd_device ==
harddiskmanager.getCD()
:
self.session.openWithCallback(self.DVDdriveCB, MessageBox, text=_("Do you want to play DVD in drive?"), timeout=5 )
else:
self.DVDdriveCB(True)
self.session.openWithCallback(self.DVDdriveCB, MessageBox, text=_("Do you want to play DVD in drive?"), timeout=5 )
else:
self.DVDdriveCB(True)
+ elif len(self.dvd_filelist) == 1:
+ self.FileBrowserClosed(self.dvd_filelist[0])
else:
self.session.openWithCallback(self.FileBrowserClosed, FileBrowser, self.dvd_filelist)
else:
self.session.openWithCallback(self.FileBrowserClosed, FileBrowser, self.dvd_filelist)