forked from openlp/openlp
r1515
This commit is contained in:
commit
2df3de81f2
10
openlp.pyw
10
openlp.pyw
@ -241,8 +241,14 @@ def main():
|
||||
+ "/qt4_plugins")
|
||||
# i18n Set Language
|
||||
language = LanguageManager.get_language()
|
||||
appTranslator = LanguageManager.get_translator(language)
|
||||
app.installTranslator(appTranslator)
|
||||
app_translator, default_translator = \
|
||||
LanguageManager.get_translator(language)
|
||||
if not app_translator.isEmpty():
|
||||
app.installTranslator(app_translator)
|
||||
if not default_translator.isEmpty():
|
||||
app.installTranslator(default_translator)
|
||||
else:
|
||||
log.debug(u'Could not find default_translator.')
|
||||
if not options.no_error_form:
|
||||
sys.excepthook = app.hookException
|
||||
sys.exit(app.run())
|
||||
|
@ -37,6 +37,7 @@ log = logging.getLogger(__name__)
|
||||
|
||||
base_html_expands = []
|
||||
|
||||
# Hex Color tags from http://www.w3schools.com/html/html_colornames.asp
|
||||
base_html_expands.append({u'desc': u'Red', u'start tag': u'{r}',
|
||||
u'start html': u'<span style="-webkit-text-fill-color:red">',
|
||||
u'end tag': u'{/r}', u'end html': u'</span>', u'protected': True})
|
||||
@ -53,13 +54,13 @@ base_html_expands.append({u'desc': u'Green', u'start tag': u'{g}',
|
||||
u'start html': u'<span style="-webkit-text-fill-color:green">',
|
||||
u'end tag': u'{/g}', u'end html': u'</span>', u'protected': True})
|
||||
base_html_expands.append({u'desc': u'Pink', u'start tag': u'{pk}',
|
||||
u'start html': u'<span style="-webkit-text-fill-color:#CC33CC">',
|
||||
u'start html': u'<span style="-webkit-text-fill-color:#FFC0CB">',
|
||||
u'end tag': u'{/pk}', u'end html': u'</span>', u'protected': True})
|
||||
base_html_expands.append({u'desc': u'Orange', u'start tag': u'{o}',
|
||||
u'start html': u'<span style="-webkit-text-fill-color:#CC0033">',
|
||||
u'start html': u'<span style="-webkit-text-fill-color:#FFA500">',
|
||||
u'end tag': u'{/o}', u'end html': u'</span>', u'protected': True})
|
||||
base_html_expands.append({u'desc': u'Purple', u'start tag': u'{pp}',
|
||||
u'start html': u'<span style="-webkit-text-fill-color:#9900FF">',
|
||||
u'start html': u'<span style="-webkit-text-fill-color:#800080">',
|
||||
u'end tag': u'{/pp}', u'end html': u'</span>', u'protected': True})
|
||||
base_html_expands.append({u'desc': u'White', u'start tag': u'{w}',
|
||||
u'start html': u'<span style="-webkit-text-fill-color:white">',
|
||||
@ -84,7 +85,8 @@ base_html_expands.append({u'desc': u'Underline', u'start tag': u'{u}',
|
||||
u'end tag': u'{/u}', u'end html': u'</span>', u'protected': True})
|
||||
|
||||
def translate(context, text, comment=None,
|
||||
encoding=QtCore.QCoreApplication.CodecForTr, n=-1):
|
||||
encoding=QtCore.QCoreApplication.CodecForTr, n=-1,
|
||||
translate=QtCore.QCoreApplication.translate):
|
||||
"""
|
||||
A special shortcut method to wrap around the Qt4 translation functions.
|
||||
This abstracts the translation procedure so that we can change it if at a
|
||||
@ -101,8 +103,7 @@ def translate(context, text, comment=None,
|
||||
An identifying string for when the same text is used in different roles
|
||||
within the same context.
|
||||
"""
|
||||
return QtCore.QCoreApplication.translate(
|
||||
context, text, comment, encoding, n)
|
||||
return translate(context, text, comment, encoding, n)
|
||||
|
||||
def get_text_file_string(text_file):
|
||||
"""
|
||||
|
@ -34,7 +34,7 @@ from PyQt4 import QtCore, QtGui
|
||||
from openlp.core.lib import SettingsManager, OpenLPToolbar, ServiceItem, \
|
||||
StringContent, build_icon, translate, Receiver, ListWidgetWithDnD
|
||||
from openlp.core.lib.ui import UiStrings, context_menu_action, \
|
||||
context_menu_separator
|
||||
context_menu_separator, critical_error_message_box
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
@ -333,7 +333,21 @@ class MediaManagerItem(QtGui.QWidget):
|
||||
log.info(u'New files(s) %s', unicode(files))
|
||||
if files:
|
||||
Receiver.send_message(u'cursor_busy')
|
||||
self.loadList(files)
|
||||
names = []
|
||||
for count in range(0, self.listView.count()):
|
||||
names.append(self.listView.item(count).text())
|
||||
newFiles = []
|
||||
for file in files:
|
||||
filename = os.path.split(unicode(file))[1]
|
||||
if filename in names:
|
||||
critical_error_message_box(
|
||||
UiStrings().Duplicate,
|
||||
unicode(translate('OpenLP.MediaManagerItem',
|
||||
'Duplicate file name %s.\nFilename already exists in '
|
||||
'list')) % filename)
|
||||
else:
|
||||
newFiles.append(file)
|
||||
self.loadList(newFiles)
|
||||
lastDir = os.path.split(unicode(files[0]))[0]
|
||||
SettingsManager.set_last_dir(self.settingsSection, lastDir)
|
||||
SettingsManager.set_list(self.settingsSection,
|
||||
|
@ -67,6 +67,7 @@ class UiStrings(object):
|
||||
self.Default = unicode(translate('OpenLP.Ui', 'Default'))
|
||||
self.Delete = translate('OpenLP.Ui', '&Delete')
|
||||
self.DisplayStyle = translate('OpenLP.Ui', 'Display style:')
|
||||
self.Duplicate = translate('OpenLP.Ui', 'Duplicate Error')
|
||||
self.Edit = translate('OpenLP.Ui', '&Edit')
|
||||
self.EmptyField = translate('OpenLP.Ui', 'Empty Field')
|
||||
self.Error = translate('OpenLP.Ui', 'Error')
|
||||
@ -124,6 +125,7 @@ class UiStrings(object):
|
||||
self.Themes = translate('OpenLP.Ui', 'Themes', 'Plural')
|
||||
self.Tools = translate('OpenLP.Ui', 'Tools')
|
||||
self.Top = translate('OpenLP.Ui', 'Top')
|
||||
self.UnsupportedFile = translate('OpenLP.Ui', 'Unsupported File')
|
||||
self.VersePerSlide = translate('OpenLP.Ui', 'Verse Per Slide')
|
||||
self.VersePerLine = translate('OpenLP.Ui', 'Verse Per Line')
|
||||
self.Version = translate('OpenLP.Ui', 'Version')
|
||||
|
@ -127,8 +127,8 @@ class ThemeManager(QtGui.QWidget):
|
||||
QtCore.QObject.connect(self.themeListWidget,
|
||||
QtCore.SIGNAL(u'doubleClicked(QModelIndex)'),
|
||||
self.changeGlobalFromScreen)
|
||||
QtCore.QObject.connect(self.themeListWidget,
|
||||
QtCore.SIGNAL(u'itemClicked(QListWidgetItem *)'),
|
||||
QtCore.QObject.connect(self.themeListWidget, QtCore.SIGNAL(
|
||||
u'currentItemChanged(QListWidgetItem *, QListWidgetItem *)'),
|
||||
self.checkListState)
|
||||
QtCore.QObject.connect(Receiver.get_receiver(),
|
||||
QtCore.SIGNAL(u'theme_update_global'), self.changeGlobalFromTab)
|
||||
@ -170,6 +170,8 @@ class ThemeManager(QtGui.QWidget):
|
||||
"""
|
||||
If Default theme selected remove delete button.
|
||||
"""
|
||||
if item is None:
|
||||
return
|
||||
realThemeName = unicode(item.data(QtCore.Qt.UserRole).toString())
|
||||
themeName = unicode(item.text())
|
||||
# If default theme restrict actions
|
||||
@ -748,7 +750,8 @@ class ThemeManager(QtGui.QWidget):
|
||||
'Theme %s is used in the %s plugin.')) % \
|
||||
(theme, plugin.name))
|
||||
return False
|
||||
return True
|
||||
return True
|
||||
return False
|
||||
|
||||
def _migrateVersion122(self, xml_data):
|
||||
"""
|
||||
@ -806,4 +809,5 @@ class ThemeManager(QtGui.QWidget):
|
||||
vAlignCorrection = VerticalType.Bottom
|
||||
newtheme.display_horizontal_align = theme.HorizontalAlign
|
||||
newtheme.display_vertical_align = vAlignCorrection
|
||||
return newtheme.extract_xml()
|
||||
return newtheme.extract_xml()
|
||||
|
||||
|
@ -28,6 +28,7 @@ The :mod:`languagemanager` module provides all the translation settings and
|
||||
language file loading for OpenLP.
|
||||
"""
|
||||
import logging
|
||||
import sys
|
||||
|
||||
from PyQt4 import QtCore, QtGui
|
||||
|
||||
@ -55,8 +56,14 @@ class LanguageManager(object):
|
||||
language = QtCore.QLocale.system().name()
|
||||
lang_path = AppLocation.get_directory(AppLocation.LanguageDir)
|
||||
app_translator = QtCore.QTranslator()
|
||||
if app_translator.load(language, lang_path):
|
||||
return app_translator
|
||||
app_translator.load(language, lang_path)
|
||||
# A translator for buttons and other default strings provided by Qt.
|
||||
if sys.platform != u'win32' and sys.platform != u'darwin':
|
||||
lang_path = QtCore.QLibraryInfo.location(
|
||||
QtCore.QLibraryInfo.TranslationsPath)
|
||||
default_translator = QtCore.QTranslator()
|
||||
default_translator.load(u'qt_%s' % language, lang_path)
|
||||
return app_translator, default_translator
|
||||
|
||||
@staticmethod
|
||||
def find_qm_files():
|
||||
|
@ -72,76 +72,85 @@ class BibleMediaItem(MediaManagerItem):
|
||||
self.hasDeleteIcon = False
|
||||
self.addToServiceItem = False
|
||||
|
||||
def addSearchTab(self, prefix, name):
|
||||
"""
|
||||
Creates and adds generic search tab.
|
||||
|
||||
``prefix``
|
||||
The prefix of the tab, this is either ``quick`` or ``advanced``.
|
||||
|
||||
``name``
|
||||
The translated string to display.
|
||||
"""
|
||||
tab = QtGui.QWidget()
|
||||
tab.setObjectName(prefix + u'Tab')
|
||||
layout = QtGui.QGridLayout(tab)
|
||||
layout.setObjectName(prefix + u'Layout')
|
||||
versionLabel = QtGui.QLabel(tab)
|
||||
versionLabel.setObjectName(prefix + u'VersionLabel')
|
||||
layout.addWidget(versionLabel, 0, 0, QtCore.Qt.AlignRight)
|
||||
versionComboBox = media_item_combo_box(tab, prefix + u'VersionComboBox')
|
||||
versionLabel.setBuddy(versionComboBox)
|
||||
layout.addWidget(versionComboBox, 0, 1, 1, 2)
|
||||
secondLabel = QtGui.QLabel(tab)
|
||||
secondLabel.setObjectName(prefix + u'SecondLabel')
|
||||
layout.addWidget(secondLabel, 1, 0, QtCore.Qt.AlignRight)
|
||||
secondComboBox = media_item_combo_box(tab, prefix + u'SecondComboBox')
|
||||
versionLabel.setBuddy(secondComboBox)
|
||||
layout.addWidget(secondComboBox, 1, 1, 1, 2)
|
||||
searchButtonLayout = QtGui.QHBoxLayout()
|
||||
searchButtonLayout.setObjectName(prefix + u'SearchButtonLayout')
|
||||
searchButtonLayout.addStretch()
|
||||
searchButton = QtGui.QPushButton(tab)
|
||||
searchButton.setObjectName(prefix + u'SearchButton')
|
||||
searchButtonLayout.addWidget(searchButton)
|
||||
self.searchTabWidget.addTab(tab, name)
|
||||
setattr(self, prefix + u'Tab', tab)
|
||||
setattr(self, prefix + u'Layout', layout)
|
||||
setattr(self, prefix + u'VersionLabel', versionLabel)
|
||||
setattr(self, prefix + u'VersionComboBox', versionComboBox)
|
||||
setattr(self, prefix + u'SecondLabel', secondLabel)
|
||||
setattr(self, prefix + u'SecondComboBox', secondComboBox)
|
||||
setattr(self, prefix + u'SearchButtonLayout', searchButtonLayout)
|
||||
setattr(self, prefix + u'SearchButton', searchButton)
|
||||
|
||||
def addEndHeaderBar(self):
|
||||
self.searchTabWidget = QtGui.QTabWidget(self)
|
||||
self.searchTabWidget.setSizePolicy(
|
||||
QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Minimum)
|
||||
self.searchTabWidget.setObjectName(u'SearchTabWidget')
|
||||
self.searchTabWidget.setObjectName(u'searchTabWidget')
|
||||
# Add the Quick Search tab.
|
||||
self.quickTab = QtGui.QWidget()
|
||||
self.quickTab.setObjectName(u'quickTab')
|
||||
self.quickLayout = QtGui.QFormLayout(self.quickTab)
|
||||
self.quickLayout.setObjectName(u'quickLayout')
|
||||
self.quickVersionLabel = QtGui.QLabel(self.quickTab)
|
||||
self.quickVersionLabel.setObjectName(u'quickVersionLabel')
|
||||
self.quickVersionComboBox = media_item_combo_box(self.quickTab,
|
||||
u'quickVersionComboBox')
|
||||
self.quickVersionLabel.setBuddy(self.quickVersionComboBox)
|
||||
self.quickLayout.addRow(self.quickVersionLabel,
|
||||
self.quickVersionComboBox)
|
||||
self.quickSecondLabel = QtGui.QLabel(self.quickTab)
|
||||
self.quickSecondLabel.setObjectName(u'quickSecondLabel')
|
||||
self.quickSecondComboBox = media_item_combo_box(self.quickTab,
|
||||
u'quickSecondComboBox')
|
||||
self.quickSecondLabel.setBuddy(self.quickSecondComboBox)
|
||||
self.quickLayout.addRow(self.quickSecondLabel, self.quickSecondComboBox)
|
||||
self.addSearchTab(
|
||||
u'quick', translate('BiblesPlugin.MediaItem', 'Quick'))
|
||||
self.quickSearchLabel = QtGui.QLabel(self.quickTab)
|
||||
self.quickSearchLabel.setObjectName(u'quickSearchLabel')
|
||||
self.quickLayout.addWidget(
|
||||
self.quickSearchLabel, 2, 0, QtCore.Qt.AlignRight)
|
||||
self.quickSearchEdit = SearchEdit(self.quickTab)
|
||||
self.quickSearchEdit.setObjectName(u'quickSearchEdit')
|
||||
self.quickSearchLabel.setBuddy(self.quickSearchEdit)
|
||||
self.quickLayout.addRow(self.quickSearchLabel, self.quickSearchEdit)
|
||||
self.quickLayout.addWidget(self.quickSearchEdit, 2, 1, 1, 2)
|
||||
self.quickLayoutLabel = QtGui.QLabel(self.quickTab)
|
||||
self.quickLayoutLabel.setObjectName(u'quickClearLabel')
|
||||
self.quickLayout.addWidget(
|
||||
self.quickLayoutLabel, 3, 0, QtCore.Qt.AlignRight)
|
||||
self.quickLayoutComboBox = media_item_combo_box(self.quickTab,
|
||||
u'quickLayoutComboBox')
|
||||
self.quickLayoutComboBox.addItems([u'', u'', u''])
|
||||
self.quickLayout.addRow(self.quickLayoutLabel, self.quickLayoutComboBox)
|
||||
self.quickLayout.addWidget(self.quickLayoutComboBox, 3, 1, 1, 2)
|
||||
self.quickClearLabel = QtGui.QLabel(self.quickTab)
|
||||
self.quickClearLabel.setObjectName(u'quickClearLabel')
|
||||
self.quickLayout.addWidget(
|
||||
self.quickClearLabel, 4, 0, QtCore.Qt.AlignRight)
|
||||
self.quickClearComboBox = media_item_combo_box(self.quickTab,
|
||||
u'quickClearComboBox')
|
||||
self.quickLayout.addRow(self.quickClearLabel, self.quickClearComboBox)
|
||||
self.quickSearchButtonLayout = QtGui.QHBoxLayout()
|
||||
self.quickSearchButtonLayout.setObjectName(u'quickSearchButtonLayout')
|
||||
self.quickSearchButtonLayout.addStretch()
|
||||
self.quickSearchButton = QtGui.QPushButton(self.quickTab)
|
||||
self.quickSearchButton.setObjectName(u'quickSearchButton')
|
||||
self.quickSearchButtonLayout.addWidget(self.quickSearchButton)
|
||||
self.quickLayout.addRow(self.quickSearchButtonLayout)
|
||||
self.searchTabWidget.addTab(self.quickTab,
|
||||
translate('BiblesPlugin.MediaItem', 'Quick'))
|
||||
self.quickLayout.addWidget(self.quickClearComboBox, 4, 1, 1, 2)
|
||||
self.quickLayout.addLayout(self.quickSearchButtonLayout, 6, 1, 1, 2)
|
||||
# Add a QWidget, so that the quick tab has as many rows as the advanced
|
||||
# tab.
|
||||
self.quickLayout.addWidget(QtGui.QWidget(), 7, 0)
|
||||
# Add the Advanced Search tab.
|
||||
self.advancedTab = QtGui.QWidget()
|
||||
self.advancedTab.setObjectName(u'advancedTab')
|
||||
self.advancedLayout = QtGui.QGridLayout(self.advancedTab)
|
||||
self.advancedLayout.setObjectName(u'advancedLayout')
|
||||
self.advancedVersionLabel = QtGui.QLabel(self.advancedTab)
|
||||
self.advancedVersionLabel.setObjectName(u'advancedVersionLabel')
|
||||
self.advancedLayout.addWidget(self.advancedVersionLabel, 0, 0,
|
||||
QtCore.Qt.AlignRight)
|
||||
self.advancedVersionComboBox = media_item_combo_box(self.advancedTab,
|
||||
u'advancedVersionComboBox')
|
||||
self.advancedVersionLabel.setBuddy(self.advancedVersionComboBox)
|
||||
self.advancedLayout.addWidget(self.advancedVersionComboBox, 0, 1, 1, 2)
|
||||
self.advancedSecondLabel = QtGui.QLabel(self.advancedTab)
|
||||
self.advancedSecondLabel.setObjectName(u'advancedSecondLabel')
|
||||
self.advancedLayout.addWidget(self.advancedSecondLabel, 1, 0,
|
||||
QtCore.Qt.AlignRight)
|
||||
self.advancedSecondComboBox = media_item_combo_box(self.advancedTab,
|
||||
u'advancedSecondComboBox')
|
||||
self.advancedSecondLabel.setBuddy(self.advancedSecondComboBox)
|
||||
self.advancedLayout.addWidget(self.advancedSecondComboBox, 1, 1, 1, 2)
|
||||
self.addSearchTab(u'advanced', UiStrings().Advanced)
|
||||
self.advancedBookLabel = QtGui.QLabel(self.advancedTab)
|
||||
self.advancedBookLabel.setObjectName(u'advancedBookLabel')
|
||||
self.advancedLayout.addWidget(self.advancedBookLabel, 2, 0,
|
||||
@ -152,7 +161,7 @@ class BibleMediaItem(MediaManagerItem):
|
||||
self.advancedLayout.addWidget(self.advancedBookComboBox, 2, 1, 1, 2)
|
||||
self.advancedChapterLabel = QtGui.QLabel(self.advancedTab)
|
||||
self.advancedChapterLabel.setObjectName(u'advancedChapterLabel')
|
||||
self.advancedLayout.addWidget(self.advancedChapterLabel, 3, 1)
|
||||
self.advancedLayout.addWidget(self.advancedChapterLabel, 3, 1, 1, 2)
|
||||
self.advancedVerseLabel = QtGui.QLabel(self.advancedTab)
|
||||
self.advancedVerseLabel.setObjectName(u'advancedVerseLabel')
|
||||
self.advancedLayout.addWidget(self.advancedVerseLabel, 3, 2)
|
||||
@ -184,16 +193,8 @@ class BibleMediaItem(MediaManagerItem):
|
||||
u'advancedClearComboBox')
|
||||
self.advancedClearLabel.setBuddy(self.advancedClearComboBox)
|
||||
self.advancedLayout.addWidget(self.advancedClearComboBox, 6, 1, 1, 2)
|
||||
self.advancedSearchButtonLayout = QtGui.QHBoxLayout()
|
||||
self.advancedSearchButtonLayout.setObjectName(
|
||||
u'advancedSearchButtonLayout')
|
||||
self.advancedSearchButtonLayout.addStretch()
|
||||
self.advancedSearchButton = QtGui.QPushButton(self.advancedTab)
|
||||
self.advancedSearchButton.setObjectName(u'advancedSearchButton')
|
||||
self.advancedSearchButtonLayout.addWidget(self.advancedSearchButton)
|
||||
self.advancedLayout.addLayout(
|
||||
self.advancedSearchButtonLayout, 7, 0, 1, 3)
|
||||
self.searchTabWidget.addTab(self.advancedTab, UiStrings().Advanced)
|
||||
# Add the search tab widget to the page layout.
|
||||
self.pageLayout.addWidget(self.searchTabWidget)
|
||||
# Combo Boxes
|
||||
@ -213,7 +214,7 @@ class BibleMediaItem(MediaManagerItem):
|
||||
QtCore.SIGNAL(u'activated(int)'), self.updateAutoCompleter)
|
||||
QtCore.QObject.connect(
|
||||
self.quickLayoutComboBox, QtCore.SIGNAL(u'activated(int)'),
|
||||
self.onlayoutStyleComboBoxChanged)
|
||||
self.onLayoutStyleComboBoxChanged)
|
||||
# Buttons
|
||||
QtCore.QObject.connect(self.advancedSearchButton,
|
||||
QtCore.SIGNAL(u'pressed()'), self.onAdvancedSearchButton)
|
||||
@ -844,7 +845,7 @@ class BibleMediaItem(MediaManagerItem):
|
||||
return u'{su}[%s]{/su}' % verse_text
|
||||
return u'{su}%s{/su}' % verse_text
|
||||
|
||||
def onlayoutStyleComboBoxChanged(self):
|
||||
def onLayoutStyleComboBoxChanged(self):
|
||||
self.settings.layout_style = self.quickLayoutComboBox.currentIndex()
|
||||
self.settings.layoutStyleComboBox.setCurrentIndex(
|
||||
self.settings.layout_style)
|
||||
|
@ -108,7 +108,6 @@ class ImageMediaItem(MediaManagerItem):
|
||||
self.settingsSection, self.getFileList())
|
||||
|
||||
def loadList(self, list, initialLoad=False):
|
||||
Receiver.send_message(u'cursor_busy')
|
||||
if not initialLoad:
|
||||
self.parent.formparent.displayProgressBar(len(list))
|
||||
for imageFile in list:
|
||||
@ -127,7 +126,6 @@ class ImageMediaItem(MediaManagerItem):
|
||||
item_name.setIcon(icon)
|
||||
item_name.setData(QtCore.Qt.UserRole, QtCore.QVariant(imageFile))
|
||||
self.listView.addItem(item_name)
|
||||
Receiver.send_message(u'cursor_normal')
|
||||
if not initialLoad:
|
||||
self.parent.formparent.finishedProgressBar()
|
||||
|
||||
|
@ -138,10 +138,8 @@ class MediaMediaItem(MediaManagerItem):
|
||||
if not self.mediaStateWait(Phonon.StoppedState):
|
||||
# Due to string freeze, borrow a message from presentations
|
||||
# This will be corrected in 1.9.6
|
||||
critical_error_message_box(
|
||||
translate('PresentationPlugin.MediaItem', 'Unsupported File'),
|
||||
unicode(translate('PresentationPlugin.MediaItem',
|
||||
'Unsupported File')))
|
||||
critical_error_message_box(UiStrings().UnsupportedFile,
|
||||
UiStrings().UnsupportedFile)
|
||||
return False
|
||||
# File too big for processing
|
||||
if os.path.getsize(filename) <= 52428800: # 50MiB
|
||||
@ -152,15 +150,11 @@ class MediaMediaItem(MediaManagerItem):
|
||||
# Due to string freeze, borrow a message from presentations
|
||||
# This will be corrected in 1.9.6
|
||||
self.mediaObject.stop()
|
||||
critical_error_message_box(
|
||||
translate('PresentationPlugin.MediaItem',
|
||||
'Unsupported File'),
|
||||
unicode(translate('PresentationPlugin.MediaItem',
|
||||
'Unsupported File')))
|
||||
critical_error_message_box(UiStrings().UnsupportedFile,
|
||||
UiStrings().UnsupportedFile)
|
||||
return False
|
||||
self.mediaLength = self.mediaObject.totalTime() / 1000
|
||||
self.mediaObject.stop()
|
||||
service_item.media_length = self.mediaLength
|
||||
service_item.media_length = self.mediaObject.totalTime() / 1000
|
||||
service_item.add_capability(
|
||||
ItemCapabilities.AllowsVariableStartTime)
|
||||
service_item.title = unicode(self.plugin.nameStrings[u'singular'])
|
||||
|
@ -193,9 +193,7 @@ class PresentationMediaItem(MediaManagerItem):
|
||||
if initialLoad:
|
||||
icon = build_icon(u':/general/general_delete.png')
|
||||
else:
|
||||
critical_error_message_box(
|
||||
translate('PresentationPlugin.MediaItem',
|
||||
'Unsupported File'),
|
||||
critical_error_message_box(UiStrings().UnsupportedFile,
|
||||
translate('PresentationPlugin.MediaItem',
|
||||
'This type of presentation is not supported.'))
|
||||
continue
|
||||
|
1683
resources/i18n/af.ts
1683
resources/i18n/af.ts
File diff suppressed because it is too large
Load Diff
3550
resources/i18n/cs.ts
3550
resources/i18n/cs.ts
File diff suppressed because it is too large
Load Diff
1602
resources/i18n/de.ts
1602
resources/i18n/de.ts
File diff suppressed because it is too large
Load Diff
1491
resources/i18n/en.ts
1491
resources/i18n/en.ts
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
1491
resources/i18n/es.ts
1491
resources/i18n/es.ts
File diff suppressed because it is too large
Load Diff
1495
resources/i18n/et.ts
1495
resources/i18n/et.ts
File diff suppressed because it is too large
Load Diff
1491
resources/i18n/fr.ts
1491
resources/i18n/fr.ts
File diff suppressed because it is too large
Load Diff
1559
resources/i18n/hu.ts
1559
resources/i18n/hu.ts
File diff suppressed because it is too large
Load Diff
2699
resources/i18n/id.ts
2699
resources/i18n/id.ts
File diff suppressed because it is too large
Load Diff
1495
resources/i18n/ja.ts
1495
resources/i18n/ja.ts
File diff suppressed because it is too large
Load Diff
1491
resources/i18n/ko.ts
1491
resources/i18n/ko.ts
File diff suppressed because it is too large
Load Diff
2030
resources/i18n/nb.ts
2030
resources/i18n/nb.ts
File diff suppressed because it is too large
Load Diff
1495
resources/i18n/nl.ts
1495
resources/i18n/nl.ts
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
1495
resources/i18n/ru.ts
1495
resources/i18n/ru.ts
File diff suppressed because it is too large
Load Diff
1491
resources/i18n/sv.ts
1491
resources/i18n/sv.ts
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user