More pythonic code, fixes a possible error, where *.ra would be left out of supported extensions if checked after *.ram.

bzr-revno: 1320
This commit is contained in:
2011-02-20 22:57:16 +00:00 committed by Jon Tibble
commit f6cc197e19
2 changed files with 20 additions and 29 deletions

View File

@ -60,8 +60,9 @@ class MediaMediaItem(MediaManagerItem):
def retranslateUi(self): def retranslateUi(self):
self.onNewPrompt = translate('MediaPlugin.MediaItem', 'Select Media') self.onNewPrompt = translate('MediaPlugin.MediaItem', 'Select Media')
self.onNewFileMasks = unicode(translate('MediaPlugin.MediaItem', self.onNewFileMasks = unicode(translate('MediaPlugin.MediaItem',
'Videos (%s);;Audio (%s);;%s (*)')) % (self.parent.video_list, 'Videos (%s);;Audio (%s);;%s (*)')) % (
self.parent.audio_list, UiStrings.AllFiles) u' '.join(self.parent.video_list),
u' '.join(self.parent.audio_list), UiStrings.AllFiles)
self.replaceAction.setText(UiStrings.ReplaceBG) self.replaceAction.setText(UiStrings.ReplaceBG)
self.replaceAction.setToolTip(UiStrings.ReplaceLiveBG) self.replaceAction.setToolTip(UiStrings.ReplaceLiveBG)
self.resetAction.setText(UiStrings.ResetBG) self.resetAction.setText(UiStrings.ResetBG)

View File

@ -45,38 +45,28 @@ class MediaPlugin(Plugin):
self.icon = build_icon(self.icon_path) self.icon = build_icon(self.icon_path)
# passed with drag and drop messages # passed with drag and drop messages
self.dnd_id = u'Media' self.dnd_id = u'Media'
self.audio_list = u'' self.audio_list = []
self.video_list = u'' self.video_list = []
mimetypes.init() mimetypes.init()
for mimetype in Phonon.BackendCapabilities.availableMimeTypes(): for mimetype in Phonon.BackendCapabilities.availableMimeTypes():
mimetype = unicode(mimetype) mimetype = unicode(mimetype)
type = mimetype.split(u'audio/x-') if mimetype.startswith(u'audio/'):
self.audio_list, mimetype = self._addToList(self.audio_list, self._addToList(self.audio_list, mimetype)
type, mimetype) elif mimetype.startswith(u'video/'):
type = mimetype.split(u'audio/') self._addToList(self.video_list, mimetype)
self.audio_list, mimetype = self._addToList(self.audio_list, log.info(u'MediaPlugin handles audio extensions: %s',
type, mimetype) u' '.join(self.audio_list))
type = mimetype.split(u'video/x-') log.info(u'MediaPlugin handles video extensions: %s',
self.video_list, mimetype = self._addToList(self.video_list, u' '.join(self.video_list))
type, mimetype)
type = mimetype.split(u'video/')
self.video_list, mimetype = self._addToList(self.video_list,
type, mimetype)
log.info(u'MediaPlugin handles audio extensions: %s', self.audio_list)
log.info(u'MediaPlugin handles video extensions: %s', self.video_list)
def _addToList(self, list, value, mimetype): def _addToList(self, list, mimetype):
# Is it a media type # Is it a media type
if len(value) == 2:
extensions = mimetypes.guess_all_extensions(unicode(mimetype)) extensions = mimetypes.guess_all_extensions(unicode(mimetype))
# we have an extension
if extensions:
for extension in extensions: for extension in extensions:
if list.find(extension) == -1: ext = u'*%s' % extension
list += u'*%s ' % extension if ext not in list:
list.append(ext)
self.serviceManager.supportedSuffixes(extension[1:]) self.serviceManager.supportedSuffixes(extension[1:])
mimetype = u''
return list, mimetype
def about(self): def about(self):
about_text = translate('MediaPlugin', '<strong>Media Plugin</strong>' about_text = translate('MediaPlugin', '<strong>Media Plugin</strong>'