This commit is contained in:
Andreas Preikschat 2013-05-11 19:41:26 +02:00
parent 23d5df568b
commit d9288ac267
2 changed files with 246 additions and 248 deletions

View File

@ -68,7 +68,7 @@ class ThemeScreenshotThread(QtCore.QThread):
screenshot = config.get(u'theme_%s' % theme, u'screenshot') screenshot = config.get(u'theme_%s' % theme, u'screenshot')
urllib.urlretrieve(u'%s%s' % (self.parent().web, screenshot), urllib.urlretrieve(u'%s%s' % (self.parent().web, screenshot),
os.path.join(unicode(gettempdir(), get_filesystem_encoding()), u'openlp', screenshot)) os.path.join(unicode(gettempdir(), get_filesystem_encoding()), u'openlp', screenshot))
item = QtGui.QListWidgetItem(title, self.parent().themesListWidget) item = QtGui.QListWidgetItem(title, self.parent().themes_list_widget)
item.setData(QtCore.Qt.UserRole, filename) item.setData(QtCore.Qt.UserRole, filename)
item.setCheckState(QtCore.Qt.Unchecked) item.setCheckState(QtCore.Qt.Unchecked)
item.setFlags(item.flags() | QtCore.Qt.ItemIsUserCheckable) item.setFlags(item.flags() | QtCore.Qt.ItemIsUserCheckable)
@ -118,7 +118,7 @@ class FirstTimeForm(QtGui.QWizard, Ui_FirstTimeWizard):
check_directory_exists(os.path.join(unicode(gettempdir(), get_filesystem_encoding()), u'openlp')) check_directory_exists(os.path.join(unicode(gettempdir(), get_filesystem_encoding()), u'openlp'))
self.no_internet_finish_button.setVisible(False) self.no_internet_finish_button.setVisible(False)
# Check if this is a re-run of the wizard. # Check if this is a re-run of the wizard.
self.hasRunWizard = Settings().value(u'core/has run wizard') self.has_run_wizard = Settings().value(u'core/has run wizard')
# Sort out internet access for downloads # Sort out internet access for downloads
if self.web_access: if self.web_access:
songs = self.config.get(u'songs', u'languages') songs = self.config.get(u'songs', u'languages')
@ -126,7 +126,7 @@ class FirstTimeForm(QtGui.QWizard, Ui_FirstTimeWizard):
for song in songs: for song in songs:
title = unicode(self.config.get(u'songs_%s' % song, u'title'), u'utf8') title = unicode(self.config.get(u'songs_%s' % song, u'title'), u'utf8')
filename = unicode(self.config.get(u'songs_%s' % song, u'filename'), u'utf8') filename = unicode(self.config.get(u'songs_%s' % song, u'filename'), u'utf8')
item = QtGui.QListWidgetItem(title, self.songsListWidget) item = QtGui.QListWidgetItem(title, self.songs_list_widget)
item.setData(QtCore.Qt.UserRole, filename) item.setData(QtCore.Qt.UserRole, filename)
item.setCheckState(QtCore.Qt.Unchecked) item.setCheckState(QtCore.Qt.Unchecked)
item.setFlags(item.flags() | QtCore.Qt.ItemIsUserCheckable) item.setFlags(item.flags() | QtCore.Qt.ItemIsUserCheckable)
@ -134,7 +134,7 @@ class FirstTimeForm(QtGui.QWizard, Ui_FirstTimeWizard):
bible_languages = bible_languages.split(u',') bible_languages = bible_languages.split(u',')
for lang in bible_languages: for lang in bible_languages:
language = unicode(self.config.get(u'bibles_%s' % lang, u'title'), u'utf8') language = unicode(self.config.get(u'bibles_%s' % lang, u'title'), u'utf8')
langItem = QtGui.QTreeWidgetItem(self.biblesTreeWidget, [language]) langItem = QtGui.QTreeWidgetItem(self.bibles_tree_widget, [language])
bibles = self.config.get(u'bibles_%s' % lang, u'translations') bibles = self.config.get(u'bibles_%s' % lang, u'translations')
bibles = bibles.split(u',') bibles = bibles.split(u',')
for bible in bibles: for bible in bibles:
@ -144,7 +144,7 @@ class FirstTimeForm(QtGui.QWizard, Ui_FirstTimeWizard):
item.setData(0, QtCore.Qt.UserRole, filename) item.setData(0, QtCore.Qt.UserRole, filename)
item.setCheckState(0, QtCore.Qt.Unchecked) item.setCheckState(0, QtCore.Qt.Unchecked)
item.setFlags(item.flags() | QtCore.Qt.ItemIsUserCheckable) item.setFlags(item.flags() | QtCore.Qt.ItemIsUserCheckable)
self.biblesTreeWidget.expandAll() self.bibles_tree_widget.expandAll()
# Download the theme screenshots. # Download the theme screenshots.
self.theme_screenshot_thread = ThemeScreenshotThread(self) self.theme_screenshot_thread = ThemeScreenshotThread(self)
self.theme_screenshot_thread.start() self.theme_screenshot_thread.start()
@ -176,44 +176,43 @@ class FirstTimeForm(QtGui.QWizard, Ui_FirstTimeWizard):
else: else:
return self.currentId() + 1 return self.currentId() + 1
def on_current_id_changed(self, pageId): def on_current_id_changed(self, page_id):
""" """
Detects Page changes and updates as appropriate. Detects Page changes and updates as appropriate.
""" """
# Keep track of the page we are at. Triggering "Cancel" causes pageId # Keep track of the page we are at. Triggering "Cancel" causes page_id to be a -1.
# to be a -1.
self.application.process_events() self.application.process_events()
if pageId != -1: if page_id != -1:
self.lastId = pageId self.last_id = page_id
if pageId == FirstTimePage.Plugins: if page_id == FirstTimePage.Plugins:
# Set the no internet page text. # Set the no internet page text.
if self.hasRunWizard: if self.has_run_wizard:
self.noInternetLabel.setText(self.noInternetText) self.no_internet_label.setText(self.no_internet_text)
else: else:
self.noInternetLabel.setText(self.noInternetText + self.cancelWizardText) self.no_internet_label.setText(self.no_internet_text + self.cancelWizardText)
elif pageId == FirstTimePage.Defaults: elif page_id == FirstTimePage.Defaults:
self.themeComboBox.clear() self.theme_combo_box.clear()
for iter in xrange(self.themesListWidget.count()): for iter in xrange(self.themes_list_widget.count()):
item = self.themesListWidget.item(iter) item = self.themes_list_widget.item(iter)
if item.checkState() == QtCore.Qt.Checked: if item.checkState() == QtCore.Qt.Checked:
self.themeComboBox.addItem(item.text()) self.theme_combo_box.addItem(item.text())
if self.hasRunWizard: if self.has_run_wizard:
# Add any existing themes to list. # Add any existing themes to list.
for theme in self.theme_manager.get_themes(): for theme in self.theme_manager.get_themes():
index = self.themeComboBox.findText(theme) index = self.theme_combo_box.findText(theme)
if index == -1: if index == -1:
self.themeComboBox.addItem(theme) self.theme_combo_box.addItem(theme)
default_theme = Settings().value(u'themes/global theme') default_theme = Settings().value(u'themes/global theme')
# Pre-select the current default theme. # Pre-select the current default theme.
index = self.themeComboBox.findText(default_theme) index = self.theme_combo_box.findText(default_theme)
self.themeComboBox.setCurrentIndex(index) self.theme_combo_box.setCurrentIndex(index)
elif pageId == FirstTimePage.NoInternet: elif page_id == FirstTimePage.NoInternet:
self.backButton.setVisible(False) self.back_button.setVisible(False)
self.nextButton.setVisible(False) self.next_button.setVisible(False)
self.no_internet_finish_button.setVisible(True) self.no_internet_finish_button.setVisible(True)
if self.hasRunWizard: if self.has_run_wizard:
self.cancel_button.setVisible(False) self.cancel_button.setVisible(False)
elif pageId == FirstTimePage.Progress: elif page_id == FirstTimePage.Progress:
self.application.set_busy_cursor() self.application.set_busy_cursor()
self.repaint() self.repaint()
self.application.process_events() self.application.process_events()
@ -229,15 +228,15 @@ class FirstTimeForm(QtGui.QWizard, Ui_FirstTimeWizard):
The user changed screen resolution or enabled/disabled more screens, so The user changed screen resolution or enabled/disabled more screens, so
we need to update the combo box. we need to update the combo box.
""" """
self.displayComboBox.clear() self.display_combo_box.clear()
self.displayComboBox.addItems(self.screens.get_screen_list()) self.display_combo_box.addItems(self.screens.get_screen_list())
self.displayComboBox.setCurrentIndex(self.displayComboBox.count() - 1) self.display_combo_box.setCurrentIndex(self.display_combo_box.count() - 1)
def onCancelButtonClicked(self): def onCancelButtonClicked(self):
""" """
Process the triggering of the cancel button. Process the triggering of the cancel button.
""" """
if self.lastId == FirstTimePage.NoInternet or (self.lastId <= FirstTimePage.Plugins and not self.hasRunWizard): if self.last_id == FirstTimePage.NoInternet or (self.last_id <= FirstTimePage.Plugins and not self.has_run_wizard):
QtCore.QCoreApplication.exit() QtCore.QCoreApplication.exit()
sys.exit() sys.exit()
self.was_download_cancelled = True self.was_download_cancelled = True
@ -282,15 +281,15 @@ class FirstTimeForm(QtGui.QWizard, Ui_FirstTimeWizard):
def _buildThemeScreenshots(self): def _buildThemeScreenshots(self):
""" """
This method builds the theme screenshots' icons for all items in the This method builds the theme screenshots' icons for all items in the
``self.themesListWidget``. ``self.themes_list_widget``.
""" """
themes = self.config.get(u'themes', u'files') themes = self.config.get(u'themes', u'files')
themes = themes.split(u',') themes = themes.split(u',')
for theme in themes: for theme in themes:
filename = self.config.get(u'theme_%s' % theme, u'filename') filename = self.config.get(u'theme_%s' % theme, u'filename')
screenshot = self.config.get(u'theme_%s' % theme, u'screenshot') screenshot = self.config.get(u'theme_%s' % theme, u'screenshot')
for index in xrange(self.themesListWidget.count()): for index in xrange(self.themes_list_widget.count()):
item = self.themesListWidget.item(index) item = self.themes_list_widget.item(index)
if item.data(QtCore.Qt.UserRole) == filename: if item.data(QtCore.Qt.UserRole) == filename:
break break
item.setIcon(build_icon(os.path.join(unicode(gettempdir(), item.setIcon(build_icon(os.path.join(unicode(gettempdir(),
@ -326,9 +325,9 @@ class FirstTimeForm(QtGui.QWizard, Ui_FirstTimeWizard):
The value to increment the progress bar by. The value to increment the progress bar by.
""" """
if status_text: if status_text:
self.progressLabel.setText(status_text) self.progress_label.setText(status_text)
if increment > 0: if increment > 0:
self.progressBar.setValue(self.progressBar.value() + increment) self.progress_bar.setValue(self.progress_bar.value() + increment)
self.application.process_events() self.application.process_events()
def _pre_wizard(self): def _pre_wizard(self):
@ -336,18 +335,18 @@ class FirstTimeForm(QtGui.QWizard, Ui_FirstTimeWizard):
Prepare the UI for the process. Prepare the UI for the process.
""" """
self.max_progress = 0 self.max_progress = 0
self.finishButton.setVisible(False) self.finish_button.setVisible(False)
self.application.process_events() self.application.process_events()
# Loop through the songs list and increase for each selected item # Loop through the songs list and increase for each selected item
for i in xrange(self.songsListWidget.count()): for i in xrange(self.songs_list_widget.count()):
self.application.process_events() self.application.process_events()
item = self.songsListWidget.item(i) item = self.songs_list_widget.item(i)
if item.checkState() == QtCore.Qt.Checked: if item.checkState() == QtCore.Qt.Checked:
filename = item.data(QtCore.Qt.UserRole) filename = item.data(QtCore.Qt.UserRole)
size = self._getFileSize(u'%s%s' % (self.web, filename)) size = self._getFileSize(u'%s%s' % (self.web, filename))
self.max_progress += size self.max_progress += size
# Loop through the Bibles list and increase for each selected item # Loop through the Bibles list and increase for each selected item
iterator = QtGui.QTreeWidgetItemIterator(self.biblesTreeWidget) iterator = QtGui.QTreeWidgetItemIterator(self.bibles_tree_widget)
while iterator.value(): while iterator.value():
self.application.process_events() self.application.process_events()
item = iterator.value() item = iterator.value()
@ -357,9 +356,9 @@ class FirstTimeForm(QtGui.QWizard, Ui_FirstTimeWizard):
self.max_progress += size self.max_progress += size
iterator += 1 iterator += 1
# Loop through the themes list and increase for each selected item # Loop through the themes list and increase for each selected item
for i in xrange(self.themesListWidget.count()): for i in xrange(self.themes_list_widget.count()):
self.application.process_events() self.application.process_events()
item = self.themesListWidget.item(i) item = self.themes_list_widget.item(i)
if item.checkState() == QtCore.Qt.Checked: if item.checkState() == QtCore.Qt.Checked:
filename = item.data(QtCore.Qt.UserRole) filename = item.data(QtCore.Qt.UserRole)
size = self._getFileSize(u'%s%s' % (self.web, filename)) size = self._getFileSize(u'%s%s' % (self.web, filename))
@ -367,16 +366,16 @@ class FirstTimeForm(QtGui.QWizard, Ui_FirstTimeWizard):
if self.max_progress: if self.max_progress:
# Add on 2 for plugins status setting plus a "finished" point. # Add on 2 for plugins status setting plus a "finished" point.
self.max_progress += 2 self.max_progress += 2
self.progressBar.setValue(0) self.progress_bar.setValue(0)
self.progressBar.setMinimum(0) self.progress_bar.setMinimum(0)
self.progressBar.setMaximum(self.max_progress) self.progress_bar.setMaximum(self.max_progress)
self.progressPage.setTitle(translate('OpenLP.FirstTimeWizard', 'Setting Up And Downloading')) self.progress_page.setTitle(translate('OpenLP.FirstTimeWizard', 'Setting Up And Downloading'))
self.progressPage.setSubTitle( self.progress_page.setSubTitle(
translate('OpenLP.FirstTimeWizard', 'Please wait while OpenLP is set up and your data is downloaded.')) translate('OpenLP.FirstTimeWizard', 'Please wait while OpenLP is set up and your data is downloaded.'))
else: else:
self.progressBar.setVisible(False) self.progress_bar.setVisible(False)
self.progressPage.setTitle(translate('OpenLP.FirstTimeWizard', 'Setting Up')) self.progress_page.setTitle(translate('OpenLP.FirstTimeWizard', 'Setting Up'))
self.progressPage.setSubTitle(u'Setup complete.') self.progress_page.setSubTitle(u'Setup complete.')
self.repaint() self.repaint()
self.application.process_events() self.application.process_events()
# Try to give the wizard a chance to repaint itself # Try to give the wizard a chance to repaint itself
@ -387,24 +386,24 @@ class FirstTimeForm(QtGui.QWizard, Ui_FirstTimeWizard):
Clean up the UI after the process has finished. Clean up the UI after the process has finished.
""" """
if self.max_progress: if self.max_progress:
self.progressBar.setValue(self.progressBar.maximum()) self.progress_bar.setValue(self.progress_bar.maximum())
if self.hasRunWizard: if self.has_run_wizard:
self.progressLabel.setText(translate('OpenLP.FirstTimeWizard', self.progress_label.setText(translate('OpenLP.FirstTimeWizard',
'Download complete. Click the finish button to return to OpenLP.')) 'Download complete. Click the finish button to return to OpenLP.'))
else: else:
self.progressLabel.setText(translate('OpenLP.FirstTimeWizard', self.progress_label.setText(translate('OpenLP.FirstTimeWizard',
'Download complete. Click the finish button to start OpenLP.')) 'Download complete. Click the finish button to start OpenLP.'))
else: else:
if self.hasRunWizard: if self.has_run_wizard:
self.progressLabel.setText(translate('OpenLP.FirstTimeWizard', self.progress_label.setText(translate('OpenLP.FirstTimeWizard',
'Click the finish button to return to OpenLP.')) 'Click the finish button to return to OpenLP.'))
else: else:
self.progressLabel.setText(translate('OpenLP.FirstTimeWizard', self.progress_label.setText(translate('OpenLP.FirstTimeWizard',
'Click the finish button to start OpenLP.')) 'Click the finish button to start OpenLP.'))
self.finishButton.setVisible(True) self.finish_button.setVisible(True)
self.finishButton.setEnabled(True) self.finish_button.setEnabled(True)
self.cancel_button.setVisible(False) self.cancel_button.setVisible(False)
self.nextButton.setVisible(False) self.next_button.setVisible(False)
self.application.process_events() self.application.process_events()
def _performWizard(self): def _performWizard(self):
@ -413,18 +412,18 @@ class FirstTimeForm(QtGui.QWizard, Ui_FirstTimeWizard):
""" """
# Set plugin states # Set plugin states
self._increment_progress_bar(translate('OpenLP.FirstTimeWizard', 'Enabling selected plugins...')) self._increment_progress_bar(translate('OpenLP.FirstTimeWizard', 'Enabling selected plugins...'))
self._setPluginStatus(self.songsCheckBox, u'songs/status') self._setPluginStatus(self.songs_check_box, u'songs/status')
self._setPluginStatus(self.bibleCheckBox, u'bibles/status') self._setPluginStatus(self.bible_check_box, u'bibles/status')
# TODO Presentation plugin is not yet working on Mac OS X. # TODO Presentation plugin is not yet working on Mac OS X.
# For now just ignore it. # For now just ignore it.
if sys.platform != 'darwin': if sys.platform != 'darwin':
self._setPluginStatus(self.presentationCheckBox, u'presentations/status') self._setPluginStatus(self.presentation_check_box, u'presentations/status')
self._setPluginStatus(self.imageCheckBox, u'images/status') self._setPluginStatus(self.image_check_box, u'images/status')
self._setPluginStatus(self.mediaCheckBox, u'media/status') self._setPluginStatus(self.media_check_box, u'media/status')
self._setPluginStatus(self.remoteCheckBox, u'remotes/status') self._setPluginStatus(self.remote_check_box, u'remotes/status')
self._setPluginStatus(self.customCheckBox, u'custom/status') self._setPluginStatus(self.custom_check_box, u'custom/status')
self._setPluginStatus(self.songUsageCheckBox, u'songusage/status') self._setPluginStatus(self.song_usage_check_box, u'songusage/status')
self._setPluginStatus(self.alertCheckBox, u'alerts/status') self._setPluginStatus(self.alert_check_box, u'alerts/status')
if self.web_access: if self.web_access:
# Build directories for downloads # Build directories for downloads
songs_destination = os.path.join( songs_destination = os.path.join(
@ -432,8 +431,8 @@ class FirstTimeForm(QtGui.QWizard, Ui_FirstTimeWizard):
bibles_destination = AppLocation.get_section_data_path(u'bibles') bibles_destination = AppLocation.get_section_data_path(u'bibles')
themes_destination = AppLocation.get_section_data_path(u'themes') themes_destination = AppLocation.get_section_data_path(u'themes')
# Download songs # Download songs
for i in xrange(self.songsListWidget.count()): for i in xrange(self.songs_list_widget.count()):
item = self.songsListWidget.item(i) item = self.songs_list_widget.item(i)
if item.checkState() == QtCore.Qt.Checked: if item.checkState() == QtCore.Qt.Checked:
filename = item.data(QtCore.Qt.UserRole) filename = item.data(QtCore.Qt.UserRole)
self._increment_progress_bar(self.downloading % filename, 0) self._increment_progress_bar(self.downloading % filename, 0)
@ -442,7 +441,7 @@ class FirstTimeForm(QtGui.QWizard, Ui_FirstTimeWizard):
self.urlGetFile(u'%s%s' % (self.web, filename), destination) self.urlGetFile(u'%s%s' % (self.web, filename), destination)
# Download Bibles # Download Bibles
bibles_iterator = QtGui.QTreeWidgetItemIterator( bibles_iterator = QtGui.QTreeWidgetItemIterator(
self.biblesTreeWidget) self.bibles_tree_widget)
while bibles_iterator.value(): while bibles_iterator.value():
item = bibles_iterator.value() item = bibles_iterator.value()
if item.parent() and item.checkState(0) == QtCore.Qt.Checked: if item.parent() and item.checkState(0) == QtCore.Qt.Checked:
@ -452,20 +451,20 @@ class FirstTimeForm(QtGui.QWizard, Ui_FirstTimeWizard):
self.urlGetFile(u'%s%s' % (self.web, bible), os.path.join(bibles_destination, bible)) self.urlGetFile(u'%s%s' % (self.web, bible), os.path.join(bibles_destination, bible))
bibles_iterator += 1 bibles_iterator += 1
# Download themes # Download themes
for i in xrange(self.themesListWidget.count()): for i in xrange(self.themes_list_widget.count()):
item = self.themesListWidget.item(i) item = self.themes_list_widget.item(i)
if item.checkState() == QtCore.Qt.Checked: if item.checkState() == QtCore.Qt.Checked:
theme = item.data(QtCore.Qt.UserRole) theme = item.data(QtCore.Qt.UserRole)
self._increment_progress_bar(self.downloading % theme, 0) self._increment_progress_bar(self.downloading % theme, 0)
self.previous_size = 0 self.previous_size = 0
self.urlGetFile(u'%s%s' % (self.web, theme), os.path.join(themes_destination, theme)) self.urlGetFile(u'%s%s' % (self.web, theme), os.path.join(themes_destination, theme))
# Set Default Display # Set Default Display
if self.displayComboBox.currentIndex() != -1: if self.display_combo_box.currentIndex() != -1:
Settings().setValue(u'core/monitor', self.displayComboBox.currentIndex()) Settings().setValue(u'core/monitor', self.display_combo_box.currentIndex())
self.screens.set_current_display(self.displayComboBox.currentIndex()) self.screens.set_current_display(self.display_combo_box.currentIndex())
# Set Global Theme # Set Global Theme
if self.themeComboBox.currentIndex() != -1: if self.theme_combo_box.currentIndex() != -1:
Settings().setValue(u'themes/global theme', self.themeComboBox.currentText()) Settings().setValue(u'themes/global theme', self.theme_combo_box.currentText())
def _setPluginStatus(self, field, tag): def _setPluginStatus(self, field, tag):
""" """

View File

@ -55,200 +55,199 @@ class Ui_FirstTimeWizard(object):
""" """
The UI widgets for the first time wizard. The UI widgets for the first time wizard.
""" """
def setupUi(self, FirstTimeWizard): def setupUi(self, first_time_wizard):
""" """
Set up the UI. Set up the UI.
""" """
FirstTimeWizard.setObjectName(u'FirstTimeWizard') first_time_wizard.setObjectName(u'first_time_wizard')
FirstTimeWizard.resize(550, 386) first_time_wizard.resize(550, 386)
FirstTimeWizard.setModal(True) first_time_wizard.setModal(True)
FirstTimeWizard.setWizardStyle(QtGui.QWizard.ModernStyle) first_time_wizard.setWizardStyle(QtGui.QWizard.ModernStyle)
FirstTimeWizard.setOptions(QtGui.QWizard.IndependentPages | QtGui.QWizard.NoBackButtonOnStartPage | first_time_wizard.setOptions(QtGui.QWizard.IndependentPages | QtGui.QWizard.NoBackButtonOnStartPage |
QtGui.QWizard.NoBackButtonOnLastPage | QtGui.QWizard.HaveCustomButton1) QtGui.QWizard.NoBackButtonOnLastPage | QtGui.QWizard.HaveCustomButton1)
self.finishButton = self.button(QtGui.QWizard.FinishButton) self.finish_button = self.button(QtGui.QWizard.FinishButton)
self.no_internet_finish_button = self.button(QtGui.QWizard.CustomButton1) self.no_internet_finish_button = self.button(QtGui.QWizard.CustomButton1)
self.cancel_button = self.button(QtGui.QWizard.CancelButton) self.cancel_button = self.button(QtGui.QWizard.CancelButton)
self.nextButton = self.button(QtGui.QWizard.NextButton) self.next_button = self.button(QtGui.QWizard.NextButton)
self.backButton = self.button(QtGui.QWizard.BackButton) self.back_button = self.button(QtGui.QWizard.BackButton)
add_welcome_page(FirstTimeWizard, u':/wizards/wizard_firsttime.bmp') add_welcome_page(first_time_wizard, u':/wizards/wizard_firsttime.bmp')
# The plugins page # The plugins page
self.pluginPage = QtGui.QWizardPage() self.plugin_page = QtGui.QWizardPage()
self.pluginPage.setObjectName(u'pluginPage') self.plugin_page.setObjectName(u'plugin_page')
self.pluginLayout = QtGui.QVBoxLayout(self.pluginPage) self.plugin_layout = QtGui.QVBoxLayout(self.plugin_page)
self.pluginLayout.setContentsMargins(40, 15, 40, 0) self.plugin_layout.setContentsMargins(40, 15, 40, 0)
self.pluginLayout.setObjectName(u'pluginLayout') self.plugin_layout.setObjectName(u'plugin_layout')
self.songsCheckBox = QtGui.QCheckBox(self.pluginPage) self.songs_check_box = QtGui.QCheckBox(self.plugin_page)
self.songsCheckBox.setChecked(True) self.songs_check_box.setChecked(True)
self.songsCheckBox.setObjectName(u'songsCheckBox') self.songs_check_box.setObjectName(u'songs_check_box')
self.pluginLayout.addWidget(self.songsCheckBox) self.plugin_layout.addWidget(self.songs_check_box)
self.customCheckBox = QtGui.QCheckBox(self.pluginPage) self.custom_check_box = QtGui.QCheckBox(self.plugin_page)
self.customCheckBox.setChecked(True) self.custom_check_box.setChecked(True)
self.customCheckBox.setObjectName(u'customCheckBox') self.custom_check_box.setObjectName(u'custom_check_box')
self.pluginLayout.addWidget(self.customCheckBox) self.plugin_layout.addWidget(self.custom_check_box)
self.bibleCheckBox = QtGui.QCheckBox(self.pluginPage) self.bible_check_box = QtGui.QCheckBox(self.plugin_page)
self.bibleCheckBox.setChecked(True) self.bible_check_box.setChecked(True)
self.bibleCheckBox.setObjectName(u'bibleCheckBox') self.bible_check_box.setObjectName(u'bible_check_box')
self.pluginLayout.addWidget(self.bibleCheckBox) self.plugin_layout.addWidget(self.bible_check_box)
self.imageCheckBox = QtGui.QCheckBox(self.pluginPage) self.image_check_box = QtGui.QCheckBox(self.plugin_page)
self.imageCheckBox.setChecked(True) self.image_check_box.setChecked(True)
self.imageCheckBox.setObjectName(u'imageCheckBox') self.image_check_box.setObjectName(u'image_check_box')
self.pluginLayout.addWidget(self.imageCheckBox) self.plugin_layout.addWidget(self.image_check_box)
# TODO Presentation plugin is not yet working on Mac OS X. # TODO Presentation plugin is not yet working on Mac OS X.
# For now just ignore it. # For now just ignore it.
if sys.platform != 'darwin': if sys.platform != 'darwin':
self.presentationCheckBox = QtGui.QCheckBox(self.pluginPage) self.presentation_check_box = QtGui.QCheckBox(self.plugin_page)
self.presentationCheckBox.setChecked(True) self.presentation_check_box.setChecked(True)
self.presentationCheckBox.setObjectName(u'presentationCheckBox') self.presentation_check_box.setObjectName(u'presentation_check_box')
self.pluginLayout.addWidget(self.presentationCheckBox) self.plugin_layout.addWidget(self.presentation_check_box)
self.mediaCheckBox = QtGui.QCheckBox(self.pluginPage) self.media_check_box = QtGui.QCheckBox(self.plugin_page)
self.mediaCheckBox.setChecked(True) self.media_check_box.setChecked(True)
self.mediaCheckBox.setObjectName(u'mediaCheckBox') self.media_check_box.setObjectName(u'media_check_box')
self.pluginLayout.addWidget(self.mediaCheckBox) self.plugin_layout.addWidget(self.media_check_box)
self.remoteCheckBox = QtGui.QCheckBox(self.pluginPage) self.remote_check_box = QtGui.QCheckBox(self.plugin_page)
self.remoteCheckBox.setObjectName(u'remoteCheckBox') self.remote_check_box.setObjectName(u'remote_check_box')
self.pluginLayout.addWidget(self.remoteCheckBox) self.plugin_layout.addWidget(self.remote_check_box)
self.songUsageCheckBox = QtGui.QCheckBox(self.pluginPage) self.song_usage_check_box = QtGui.QCheckBox(self.plugin_page)
self.songUsageCheckBox.setChecked(True) self.song_usage_check_box.setChecked(True)
self.songUsageCheckBox.setObjectName(u'songUsageCheckBox') self.song_usage_check_box.setObjectName(u'song_usage_check_box')
self.pluginLayout.addWidget(self.songUsageCheckBox) self.plugin_layout.addWidget(self.song_usage_check_box)
self.alertCheckBox = QtGui.QCheckBox(self.pluginPage) self.alert_check_box = QtGui.QCheckBox(self.plugin_page)
self.alertCheckBox.setChecked(True) self.alert_check_box.setChecked(True)
self.alertCheckBox.setObjectName(u'alertCheckBox') self.alert_check_box.setObjectName(u'alert_check_box')
self.pluginLayout.addWidget(self.alertCheckBox) self.plugin_layout.addWidget(self.alert_check_box)
FirstTimeWizard.setPage(FirstTimePage.Plugins, self.pluginPage) first_time_wizard.setPage(FirstTimePage.Plugins, self.plugin_page)
# The "you don't have an internet connection" page. # The "you don't have an internet connection" page.
self.noInternetPage = QtGui.QWizardPage() self.no_internet_page = QtGui.QWizardPage()
self.noInternetPage.setObjectName(u'noInternetPage') self.no_internet_page.setObjectName(u'no_internet_page')
self.noInternetLayout = QtGui.QVBoxLayout(self.noInternetPage) self.no_internet_layout = QtGui.QVBoxLayout(self.no_internet_page)
self.noInternetLayout.setContentsMargins(50, 30, 50, 40) self.no_internet_layout.setContentsMargins(50, 30, 50, 40)
self.noInternetLayout.setObjectName(u'noInternetLayout') self.no_internet_layout.setObjectName(u'no_internet_layout')
self.noInternetLabel = QtGui.QLabel(self.noInternetPage) self.no_internet_label = QtGui.QLabel(self.no_internet_page)
self.noInternetLabel.setWordWrap(True) self.no_internet_label.setWordWrap(True)
self.noInternetLabel.setObjectName(u'noInternetLabel') self.no_internet_label.setObjectName(u'no_internet_label')
self.noInternetLayout.addWidget(self.noInternetLabel) self.no_internet_layout.addWidget(self.no_internet_label)
FirstTimeWizard.setPage(FirstTimePage.NoInternet, self.noInternetPage) first_time_wizard.setPage(FirstTimePage.NoInternet, self.no_internet_page)
# The song samples page # The song samples page
self.songsPage = QtGui.QWizardPage() self.songs_page = QtGui.QWizardPage()
self.songsPage.setObjectName(u'songsPage') self.songs_page.setObjectName(u'songs_page')
self.songsLayout = QtGui.QVBoxLayout(self.songsPage) self.songs_layout = QtGui.QVBoxLayout(self.songs_page)
self.songsLayout.setContentsMargins(50, 20, 50, 20) self.songs_layout.setContentsMargins(50, 20, 50, 20)
self.songsLayout.setObjectName(u'songsLayout') self.songs_layout.setObjectName(u'songs_layout')
self.songsListWidget = QtGui.QListWidget(self.songsPage) self.songs_list_widget = QtGui.QListWidget(self.songs_page)
self.songsListWidget.setAlternatingRowColors(True) self.songs_list_widget.setAlternatingRowColors(True)
self.songsListWidget.setObjectName(u'songsListWidget') self.songs_list_widget.setObjectName(u'songs_list_widget')
self.songsLayout.addWidget(self.songsListWidget) self.songs_layout.addWidget(self.songs_list_widget)
FirstTimeWizard.setPage(FirstTimePage.Songs, self.songsPage) first_time_wizard.setPage(FirstTimePage.Songs, self.songs_page)
# The Bible samples page # The Bible samples page
self.biblesPage = QtGui.QWizardPage() self.bibles_page = QtGui.QWizardPage()
self.biblesPage.setObjectName(u'biblesPage') self.bibles_page.setObjectName(u'bibles_page')
self.biblesLayout = QtGui.QVBoxLayout(self.biblesPage) self.bibles_layout = QtGui.QVBoxLayout(self.bibles_page)
self.biblesLayout.setContentsMargins(50, 20, 50, 20) self.bibles_layout.setContentsMargins(50, 20, 50, 20)
self.biblesLayout.setObjectName(u'biblesLayout') self.bibles_layout.setObjectName(u'bibles_layout')
self.biblesTreeWidget = QtGui.QTreeWidget(self.biblesPage) self.bibles_tree_widget = QtGui.QTreeWidget(self.bibles_page)
self.biblesTreeWidget.setAlternatingRowColors(True) self.bibles_tree_widget.setAlternatingRowColors(True)
self.biblesTreeWidget.header().setVisible(False) self.bibles_tree_widget.header().setVisible(False)
self.biblesTreeWidget.setObjectName(u'biblesTreeWidget') self.bibles_tree_widget.setObjectName(u'bibles_tree_widget')
self.biblesLayout.addWidget(self.biblesTreeWidget) self.bibles_layout.addWidget(self.bibles_tree_widget)
FirstTimeWizard.setPage(FirstTimePage.Bibles, self.biblesPage) first_time_wizard.setPage(FirstTimePage.Bibles, self.bibles_page)
# The theme samples page # The theme samples page
self.themesPage = QtGui.QWizardPage() self.themes_page = QtGui.QWizardPage()
self.themesPage.setObjectName(u'themesPage') self.themes_page.setObjectName(u'themes_page')
self.themesLayout = QtGui.QVBoxLayout(self.themesPage) self.themes_layout = QtGui.QVBoxLayout(self.themes_page)
self.themesLayout.setContentsMargins(20, 50, 20, 60) self.themes_layout.setContentsMargins(20, 50, 20, 60)
self.themesLayout.setObjectName(u'themesLayout') self.themes_layout.setObjectName(u'themes_layout')
self.themesListWidget = QtGui.QListWidget(self.themesPage) self.themes_list_widget = QtGui.QListWidget(self.themes_page)
self.themesListWidget.setViewMode(QtGui.QListView.IconMode) self.themes_list_widget.setViewMode(QtGui.QListView.IconMode)
self.themesListWidget.setMovement(QtGui.QListView.Static) self.themes_list_widget.setMovement(QtGui.QListView.Static)
self.themesListWidget.setFlow(QtGui.QListView.LeftToRight) self.themes_list_widget.setFlow(QtGui.QListView.LeftToRight)
self.themesListWidget.setSpacing(4) self.themes_list_widget.setSpacing(4)
self.themesListWidget.setUniformItemSizes(True) self.themes_list_widget.setUniformItemSizes(True)
self.themesListWidget.setIconSize(QtCore.QSize(133, 100)) self.themes_list_widget.setIconSize(QtCore.QSize(133, 100))
self.themesListWidget.setWrapping(False) self.themes_list_widget.setWrapping(False)
self.themesListWidget.setObjectName(u'themesListWidget') self.themes_list_widget.setObjectName(u'themes_list_widget')
self.themesLayout.addWidget(self.themesListWidget) self.themes_layout.addWidget(self.themes_list_widget)
FirstTimeWizard.setPage(FirstTimePage.Themes, self.themesPage) first_time_wizard.setPage(FirstTimePage.Themes, self.themes_page)
# the default settings page # the default settings page
self.defaultsPage = QtGui.QWizardPage() self.defaults_page = QtGui.QWizardPage()
self.defaultsPage.setObjectName(u'defaultsPage') self.defaults_page.setObjectName(u'defaults_page')
self.defaultsLayout = QtGui.QFormLayout(self.defaultsPage) self.defaults_layout = QtGui.QFormLayout(self.defaults_page)
self.defaultsLayout.setContentsMargins(50, 20, 50, 20) self.defaults_layout.setContentsMargins(50, 20, 50, 20)
self.defaultsLayout.setObjectName(u'defaultsLayout') self.defaults_layout.setObjectName(u'defaults_layout')
self.displayLabel = QtGui.QLabel(self.defaultsPage) self.display_label = QtGui.QLabel(self.defaults_page)
self.displayLabel.setObjectName(u'displayLabel') self.display_label.setObjectName(u'display_label')
self.displayComboBox = QtGui.QComboBox(self.defaultsPage) self.display_combo_box = QtGui.QComboBox(self.defaults_page)
self.displayComboBox.setEditable(False) self.display_combo_box.setEditable(False)
self.displayComboBox.setInsertPolicy(QtGui.QComboBox.NoInsert) self.display_combo_box.setInsertPolicy(QtGui.QComboBox.NoInsert)
self.displayComboBox.setObjectName(u'displayComboBox') self.display_combo_box.setObjectName(u'display_combo_box')
self.defaultsLayout.addRow(self.displayLabel, self.displayComboBox) self.defaults_layout.addRow(self.display_label, self.display_combo_box)
self.themeLabel = QtGui.QLabel(self.defaultsPage) self.theme_label = QtGui.QLabel(self.defaults_page)
self.themeLabel.setObjectName(u'themeLabel') self.theme_label.setObjectName(u'theme_label')
self.themeComboBox = QtGui.QComboBox(self.defaultsPage) self.theme_combo_box = QtGui.QComboBox(self.defaults_page)
self.themeComboBox.setEditable(False) self.theme_combo_box.setEditable(False)
self.themeComboBox.setInsertPolicy(QtGui.QComboBox.NoInsert) self.theme_combo_box.setInsertPolicy(QtGui.QComboBox.NoInsert)
self.themeComboBox.setSizeAdjustPolicy(QtGui.QComboBox.AdjustToContents) self.theme_combo_box.setSizeAdjustPolicy(QtGui.QComboBox.AdjustToContents)
self.themeComboBox.setObjectName(u'themeComboBox') self.theme_combo_box.setObjectName(u'theme_combo_box')
self.defaultsLayout.addRow(self.themeLabel, self.themeComboBox) self.defaults_layout.addRow(self.theme_label, self.theme_combo_box)
FirstTimeWizard.setPage(FirstTimePage.Defaults, self.defaultsPage) first_time_wizard.setPage(FirstTimePage.Defaults, self.defaults_page)
# Progress page # Progress page
self.progressPage = QtGui.QWizardPage() self.progress_page = QtGui.QWizardPage()
self.progressPage.setObjectName(u'progressPage') self.progress_page.setObjectName(u'progress_page')
self.progressLayout = QtGui.QVBoxLayout(self.progressPage) self.progress_layout = QtGui.QVBoxLayout(self.progress_page)
self.progressLayout.setMargin(48) self.progress_layout.setMargin(48)
self.progressLayout.setObjectName(u'progressLayout') self.progress_layout.setObjectName(u'progress_layout')
self.progressLabel = QtGui.QLabel(self.progressPage) self.progress_label = QtGui.QLabel(self.progress_page)
self.progressLabel.setObjectName(u'progressLabel') self.progress_label.setObjectName(u'progress_label')
self.progressLayout.addWidget(self.progressLabel) self.progress_layout.addWidget(self.progress_label)
self.progressBar = QtGui.QProgressBar(self.progressPage) self.progress_bar = QtGui.QProgressBar(self.progress_page)
self.progressBar.setObjectName(u'progressBar') self.progress_bar.setObjectName(u'progress_bar')
self.progressLayout.addWidget(self.progressBar) self.progress_layout.addWidget(self.progress_bar)
FirstTimeWizard.setPage(FirstTimePage.Progress, self.progressPage) first_time_wizard.setPage(FirstTimePage.Progress, self.progress_page)
self.retranslateUi(FirstTimeWizard) self.retranslateUi(first_time_wizard)
def retranslateUi(self, FirstTimeWizard): def retranslateUi(self, first_time_wizard):
""" """
Translate the UI on the fly Translate the UI on the fly
""" """
FirstTimeWizard.setWindowTitle(translate('OpenLP.FirstTimeWizard', 'First Time Wizard')) first_time_wizard.setWindowTitle(translate('OpenLP.FirstTimeWizard', 'First Time Wizard'))
self.title_label.setText(u'<span style="font-size:14pt; font-weight:600;">%s</span>' % self.title_label.setText(u'<span style="font-size:14pt; font-weight:600;">%s</span>' %
translate('OpenLP.FirstTimeWizard', 'Welcome to the First Time Wizard')) translate('OpenLP.FirstTimeWizard', 'Welcome to the First Time Wizard'))
self.information_label.setText(translate('OpenLP.FirstTimeWizard', self.information_label.setText(translate('OpenLP.FirstTimeWizard',
'This wizard will help you to configure OpenLP for initial use. Click the next button below to start.')) 'This wizard will help you to configure OpenLP for initial use. Click the next button below to start.'))
self.pluginPage.setTitle(translate('OpenLP.FirstTimeWizard', 'Activate required Plugins')) self.plugin_page.setTitle(translate('OpenLP.FirstTimeWizard', 'Activate required Plugins'))
self.pluginPage.setSubTitle(translate('OpenLP.FirstTimeWizard', 'Select the Plugins you wish to use. ')) self.plugin_page.setSubTitle(translate('OpenLP.FirstTimeWizard', 'Select the Plugins you wish to use. '))
self.songsCheckBox.setText(translate('OpenLP.FirstTimeWizard', 'Songs')) self.songs_check_box.setText(translate('OpenLP.FirstTimeWizard', 'Songs'))
self.customCheckBox.setText(translate('OpenLP.FirstTimeWizard', 'Custom Slides')) self.custom_check_box.setText(translate('OpenLP.FirstTimeWizard', 'Custom Slides'))
self.bibleCheckBox.setText(translate('OpenLP.FirstTimeWizard', 'Bible')) self.bible_check_box.setText(translate('OpenLP.FirstTimeWizard', 'Bible'))
self.imageCheckBox.setText(translate('OpenLP.FirstTimeWizard', 'Images')) self.image_check_box.setText(translate('OpenLP.FirstTimeWizard', 'Images'))
# TODO Presentation plugin is not yet working on Mac OS X. # TODO Presentation plugin is not yet working on Mac OS X.
# For now just ignore it. # For now just ignore it.
if sys.platform != 'darwin': if sys.platform != 'darwin':
self.presentationCheckBox.setText(translate('OpenLP.FirstTimeWizard', 'Presentations')) self.presentation_check_box.setText(translate('OpenLP.FirstTimeWizard', 'Presentations'))
self.mediaCheckBox.setText(translate('OpenLP.FirstTimeWizard', 'Media (Audio and Video)')) self.media_check_box.setText(translate('OpenLP.FirstTimeWizard', 'Media (Audio and Video)'))
self.remoteCheckBox.setText(translate('OpenLP.FirstTimeWizard', 'Allow remote access')) self.remote_check_box.setText(translate('OpenLP.FirstTimeWizard', 'Allow remote access'))
self.songUsageCheckBox.setText(translate('OpenLP.FirstTimeWizard', 'Monitor Song Usage')) self.song_usage_check_box.setText(translate('OpenLP.FirstTimeWizard', 'Monitor Song Usage'))
self.alertCheckBox.setText(translate('OpenLP.FirstTimeWizard', 'Allow Alerts')) self.alert_check_box.setText(translate('OpenLP.FirstTimeWizard', 'Allow Alerts'))
self.noInternetPage.setTitle(translate('OpenLP.FirstTimeWizard', 'No Internet Connection')) self.no_internet_page.setTitle(translate('OpenLP.FirstTimeWizard', 'No Internet Connection'))
self.noInternetPage.setSubTitle(translate('OpenLP.FirstTimeWizard', 'Unable to detect an Internet connection.')) self.no_internet_page.setSubTitle(
self.noInternetText = translate('OpenLP.FirstTimeWizard', translate('OpenLP.FirstTimeWizard', 'Unable to detect an Internet connection.'))
'No Internet connection was found. The First Time Wizard needs an ' self.no_internet_text = translate('OpenLP.FirstTimeWizard',
'Internet connection in order to be able to download sample ' 'No Internet connection was found. The First Time Wizard needs an Internet connection in order to be able '
'songs, Bibles and themes. Click the Finish button now to start ' 'to download sample songs, Bibles and themes. Click the Finish button now to start OpenLP with initial '
'OpenLP with initial settings and no sample data.\n\nTo re-run the ' 'settings and no sample data.\n\nTo re-run the First Time Wizard and import this sample data at a later '
'First Time Wizard and import this sample data at a later time, ' 'time, check your Internet connection and re-run this wizard by selecting "Tools/Re-run First Time Wizard" '
'check your Internet connection and re-run this wizard by ' 'from OpenLP.')
'selecting "Tools/Re-run First Time Wizard" from OpenLP.')
self.cancelWizardText = translate('OpenLP.FirstTimeWizard', self.cancelWizardText = translate('OpenLP.FirstTimeWizard',
'\n\nTo cancel the First Time Wizard completely (and not start OpenLP), click the Cancel button now.') '\n\nTo cancel the First Time Wizard completely (and not start OpenLP), click the Cancel button now.')
self.songsPage.setTitle(translate('OpenLP.FirstTimeWizard', 'Sample Songs')) self.songs_page.setTitle(translate('OpenLP.FirstTimeWizard', 'Sample Songs'))
self.songsPage.setSubTitle(translate('OpenLP.FirstTimeWizard', 'Select and download public domain songs.')) self.songs_page.setSubTitle(translate('OpenLP.FirstTimeWizard', 'Select and download public domain songs.'))
self.biblesPage.setTitle(translate('OpenLP.FirstTimeWizard', 'Sample Bibles')) self.bibles_page.setTitle(translate('OpenLP.FirstTimeWizard', 'Sample Bibles'))
self.biblesPage.setSubTitle(translate('OpenLP.FirstTimeWizard', 'Select and download free Bibles.')) self.bibles_page.setSubTitle(translate('OpenLP.FirstTimeWizard', 'Select and download free Bibles.'))
self.themesPage.setTitle(translate('OpenLP.FirstTimeWizard', 'Sample Themes')) self.themes_page.setTitle(translate('OpenLP.FirstTimeWizard', 'Sample Themes'))
self.themesPage.setSubTitle(translate('OpenLP.FirstTimeWizard', 'Select and download sample themes.')) self.themes_page.setSubTitle(translate('OpenLP.FirstTimeWizard', 'Select and download sample themes.'))
self.defaultsPage.setTitle(translate('OpenLP.FirstTimeWizard', 'Default Settings')) self.defaults_page.setTitle(translate('OpenLP.FirstTimeWizard', 'Default Settings'))
self.defaultsPage.setSubTitle(translate('OpenLP.FirstTimeWizard', self.defaults_page.setSubTitle(translate('OpenLP.FirstTimeWizard',
'Set up default settings to be used by OpenLP.')) 'Set up default settings to be used by OpenLP.'))
self.displayLabel.setText(translate('OpenLP.FirstTimeWizard', 'Default output display:')) self.display_label.setText(translate('OpenLP.FirstTimeWizard', 'Default output display:'))
self.themeLabel.setText(translate('OpenLP.FirstTimeWizard', 'Select default theme:')) self.theme_label.setText(translate('OpenLP.FirstTimeWizard', 'Select default theme:'))
self.progressLabel.setText(translate('OpenLP.FirstTimeWizard', 'Starting configuration process...')) self.progress_label.setText(translate('OpenLP.FirstTimeWizard', 'Starting configuration process...'))
FirstTimeWizard.setButtonText(QtGui.QWizard.CustomButton1, translate('OpenLP.FirstTimeWizard', 'Finish')) first_time_wizard.setButtonText(QtGui.QWizard.CustomButton1, translate('OpenLP.FirstTimeWizard', 'Finish'))