diff --git a/documentation/manual/source/bibles.rst b/documentation/manual/source/bibles.rst index 9fbae9b81..005ab72db 100644 --- a/documentation/manual/source/bibles.rst +++ b/documentation/manual/source/bibles.rst @@ -21,20 +21,35 @@ You will see the Bible Importer window, click :guilabel:`Next`. .. image:: pics/bibleimport01.png -After clicking :guilabel:`Next` you can select from the various types of -software that OpenLP will convert Bibles from. +After clicking :guilabel:`Next` you can select from the various types of +software that OpenLP will convert Bibles from. Click on the file folder icon to +choose the file(s) of the Bible database you want to import. See the sections +below for more information on the different formats that OpenLP will import. +Click :guilabel:`Next` to continue. .. image:: pics/bibleimport02.png -Click on the file folder icon to choose the file of the Bible database you -want to import. See the following sections for information on the different -formats that OpenLP will import. +After selecting your file(s), you'll be asked to fill in the details of the +Bible you are importing. Remember to check what information you need to display +for your Bible's translation, as some of them have strict rules around the +copyright notice. Click :guilabel:`Next` to continue. -Importing from OpenLP Version 1 -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +.. image:: pics/bibleimportdetails1.png -Converting from OpenLP Version 1 is a simple process. First you will need to -locate your Version 1 Bibles. +After filling in the copyright details, OpenLP will start to import your Bible. +It may take some time to import your Bible so please be patient. + +.. image:: pics/bibleimportfinished1.png + +When the import has finished click :guilabel:`Finish` and you should be +ready to use your Bible in OpenLP. + +Importing from openlp.org 1.x +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Importing Bibles from openlp.org 1.x is a simple process. First you will need to +locate your version 1.x Bibles. Version 1.x Bibles have the `.bible` file +extension. Windows XP:: @@ -44,22 +59,15 @@ Windows Vista / Windows 7:: C:\ProgramData\openlp.org\Data\Bibles\ -OpenLP Version 1 Bibles have the `.bible` file extension. After selecting -all of the OpenLP Version 1 Bibles you want to convert, click :guilabel:`Next` - -.. image:: pics/bibleimportdetails1.png - -Enter your Bible name and copyright details. Click :guilabel:`Next`. It may -take some time to convert your Bibles so please be patient. - -.. image:: pics/bibleimportfinished1.png - -When the import has finished click :guilabel:`Finish` and you should be -ready to use your OpenLP Version 1 Bibles. +After selecting all of the openlp.org 1.x Bibles you want to convert, click +:guilabel:`Next` to continue the import process. Importing OSIS Bibles ^^^^^^^^^^^^^^^^^^^^^ +Importing OSIS files is very simple. Select OSIS as your import source, select +your OSIS Bible file and continue the import process. + **About OSIS Formatted Bibles** The OSIS XML standard was designed to provide a common format for distribution @@ -69,24 +77,11 @@ of electronic Bibles. More information can be found out at the `Bible Technologi If you have any software installed that is part of the `Sword Project `_ it can be easily converted. -Importing OSIS files is very simple. Select your OSIS Bible file and click -:guilabel:`Next` - -.. image:: pics/bibleimportdetails1.png - -Enter you Bible name and copyright details. Click :guilabel:`Next`. It may take -some time to convert your Bibles so please be patient. - -.. image:: pics/bibleimportfinished1.png - -Click :guilabel:`Finish` and you should be ready to use your OpenLP Version -1 Bibles. - You can use the commands below convert Bibles from that software to OSIS format. The following commands are used in all platforms and the commands are case -sensitive across all platforms. To convert a Bible using Command Prompt in -Windows or a Terminal in Linux or MAC you would type:: +sensitive across all platforms. To convert a Bible using the command prompt in +Windows or a terminal in Linux or Mac OS X you would type:: mod2osis biblename > biblename.osis @@ -114,17 +109,9 @@ You may also import downloaded bibles from OpenSong. The process is the same, except you will need to extract the bible from a zip file. This is usually done by right clicking on the downloaded file and select `Extract` or `Extract Here`. -After selecting the OpenSong Bibles you want to convert, click :guilabel:`Next` - -.. image:: pics/bibleimportdetails1.png - -Enter your Bible name and copyright details. Click :guilabel:`Next`. It may -take some time to convert your Bibles so please be patient. - -.. image:: pics/bibleimportfinished1.png - -When the import has finished then click :guilabel:`Finish` and you should now be -ready to use your OpenSong Bibles. +After selecting the OpenSong Bibles you want to import, follow the rest of the +import process. When the import has finished you should be ready to use your +OpenSong Bibles. Importing Web Download Bibles ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -139,8 +126,6 @@ as another option and does require an internet connection. To use the web download feature select web download from the import wizard. -.. image:: pics/bibleimport01.png - You can select from several options of location to download from and also what Bible translation you need. You will probably want to choose the location from where you get the best performance or has the translation you need. @@ -154,30 +139,20 @@ not be needed. .. image:: pics/webbibleproxy1.png After selecting your download location and the Bible you wish to use, click -:guilabel:`Next` When your import is completed click :guilabel:`Finish` - -.. image:: pics/biblewebcomplete.png - -You should now be ready to use the web bible. +:guilabel:`Next` to continue the import process. When your import is completed +you should now be ready to use the web bible. Importing CSV formatted Bibles ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ If you have a Bible in .csv format OpenLP can import it. CSV Bibles will -consist of two files a `books` file and a `verse` file. - -Select CSV from the list of Bible types to import. - -.. image:: pics/bibleimport02.png +consist of two files a `books` file and a `verse` file. Select CSV from the list +of Bible types to import. You are now ready to select your .csv files. You will need to select both your books and verse file location. .. image:: pics/csvimport1.png -After you have selected the file locations you can click :guilabel:`Next` - -.. image:: pics/bibleimportfinished1.png - -Click :guilabel:`Finish` and you should now be ready to use your imported CSV -Bible \ No newline at end of file +After you have selected the file locations you can continue with the import +process. Once it is complete you should be ready to use your imported CSV Bible. diff --git a/documentation/manual/source/pics/song_edit_author_maintenance.png b/documentation/manual/source/pics/song_edit_author_maintenance.png new file mode 100644 index 000000000..56b5550d2 Binary files /dev/null and b/documentation/manual/source/pics/song_edit_author_maintenance.png differ diff --git a/documentation/manual/source/pics/song_edit_authors.png b/documentation/manual/source/pics/song_edit_authors.png new file mode 100644 index 000000000..4a4a3a773 Binary files /dev/null and b/documentation/manual/source/pics/song_edit_authors.png differ diff --git a/documentation/manual/source/pics/song_edit_lyrics.png b/documentation/manual/source/pics/song_edit_lyrics.png new file mode 100644 index 000000000..10727376c Binary files /dev/null and b/documentation/manual/source/pics/song_edit_lyrics.png differ diff --git a/documentation/manual/source/pics/song_edit_maintenance.png b/documentation/manual/source/pics/song_edit_maintenance.png new file mode 100644 index 000000000..23bcb62df Binary files /dev/null and b/documentation/manual/source/pics/song_edit_maintenance.png differ diff --git a/documentation/manual/source/pics/song_edit_songbook_maintenance.png b/documentation/manual/source/pics/song_edit_songbook_maintenance.png new file mode 100644 index 000000000..d8634ba31 Binary files /dev/null and b/documentation/manual/source/pics/song_edit_songbook_maintenance.png differ diff --git a/documentation/manual/source/pics/song_edit_theme_copyright.png b/documentation/manual/source/pics/song_edit_theme_copyright.png new file mode 100644 index 000000000..5234ccc13 Binary files /dev/null and b/documentation/manual/source/pics/song_edit_theme_copyright.png differ diff --git a/documentation/manual/source/pics/song_edit_topic_maintenance.png b/documentation/manual/source/pics/song_edit_topic_maintenance.png new file mode 100644 index 000000000..70446b819 Binary files /dev/null and b/documentation/manual/source/pics/song_edit_topic_maintenance.png differ diff --git a/documentation/manual/source/pics/song_edit_verse_error.png b/documentation/manual/source/pics/song_edit_verse_error.png new file mode 100644 index 000000000..4fa10fec3 Binary files /dev/null and b/documentation/manual/source/pics/song_edit_verse_error.png differ diff --git a/documentation/manual/source/pics/song_edit_verse_type.png b/documentation/manual/source/pics/song_edit_verse_type.png new file mode 100644 index 000000000..e4cdfa1a6 Binary files /dev/null and b/documentation/manual/source/pics/song_edit_verse_type.png differ diff --git a/documentation/manual/source/songs.rst b/documentation/manual/source/songs.rst index 56928d831..44cda2f80 100644 --- a/documentation/manual/source/songs.rst +++ b/documentation/manual/source/songs.rst @@ -99,4 +99,134 @@ completed. Press :guilabel:`Finish` and OpenLP will be ready to use your songs imported from CCLI SongSelect. +Creating or editing a song slide +================================ +If you want to create a new song slide or, once you have a song imported, you +want to edit and rearrange the Title & Lyrics, Author, Topics & Song Book, +assign a Theme, or edit Copyright Info & Comments, you will do this through the +`Song Editor`. + +**Edit:** To edit an existing song you can either click on a song in the +`Media Manager` and then click the button to :guilabel:`Edit the selected song` +or right click a song from either the `Media Manager` or additionally from the +`Service Manager` and click :guilabel:`Edit item`. If you are adding a new song +click :guilabel:`Add a new Song` in the `Media Manager`. + +.. image:: pics/song_edit_lyrics.png + +**Title:** This is where you would name your song or edit a song name. + +**Alternate title:**Alternate Title was for songs with two names +"Lord the Light" - "Shine Jesus Shine". You can also add a name in this box that +will bring up the song in Titles search. **Example:** You could use an alternate +title of "hymn" on all your hymn song titles for grouping. When you search "hymn" +it will show all the hymns that have "hymn" for the Alternate title. + +**Lyrics:** The *Lyrics* window shows all lyrics imported or added. On the left +side of the lyrics you will see a capital letter followed by a number. A V1 +would represent verse 1, C1 would be Chorus 1. You will use these letters and +numbers for the order to display the lyrics. + +**Verse Order:** After you entered or edited your song, you will want OpenLP to +display the verses in the correct order you want them displayed. On the left side +of your lyrics you will see C1, V1, V2 etc. the way they were imported or added. +To put your lyrics in the correct order is as simple as typing in the +:guilabel:`Verse order box` at the bottom, the correct order you want them +displayed, with only a blank space in between each entry. The correct format will +look like this: V1 C1 V2 C1 V3 C1. If you forget to put a space in between the +order, or if you do not have the corresponding verse number, OpenLP will politely +tell you with a pop-up error message what is wrong so you can correct your +mistake and save it. Verse order is optional and if left blank the verses will +display in the order seen in *Lyrics*. + +.. image:: pics/song_edit_verse_error.png + +Adding or editing the lyrics +^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +**Add:** To Add a new verse, click on :guilabel:`Add`. The main window is where +you will type your lyrics. OpenLP is packaged with a spell checker for most +languages. If you misspell a word it will be underlined. Right click the +underlined word and left click *Spelling Suggestions* or you can ignore it and +continue typing. You also have the ability to format the font using *Formatting +Tags*. Highlight the word/words you want to format and right click the highlight. +Left click *Formatting Tags* and choose the format you want to apply to the font +and the format tags will be entered with your lyrics. These tags are not visible +when displayed. To remove the format, delete the tag on each end of the word or +sentence. + +**Edit:** To edit an existing verse, click on the verse you wish to *Edit* then click on +:guilabel:`Edit`, make your changes and click :guilabel:`Save`. + +**Edit All:** To edit the whole song at once, click on :guilabel:`Edit All`. + +**Delete:** To delete a verse, click on the verse you want to delete and it will +highlight, click on the :guilabel:`Delete` button and it will be deleted. +**Warning:**, once you click the :guilabel:`Delete` button, you will not be +asked again, it will be deleted immediately. + +.. image:: pics/song_edit_verse_type.png + +**Verse type:** gives you 7 ways to classify your lyrics. Verse, Chorus, Bridge, +Pre-Chorus, Intro, Ending, Other. + +If you have more than one verse, you would number them Verse 1, 2, 3 as needed. +If you find the verse has too many lines for your screen, you can edit and +shorten the verse and :guilabel:`Add` another slide. + +Authors, Topics & Song Book +^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Once your *Title & Lyrics* are added or edited the way you want them you must +add or enter the author or authors of the song. OpenLP requires all songs to +have an author entered. You can add a blank space for the author name. + +.. image:: pics/song_edit_authors.png + +**Authors:** Click the drop down arrow to view all authors or start typing a name +in the box and a list will appear. If the authors name has not been added, type +the authors name in the box and click :guilabel:`Add to Song`. The authors name +will appear below and will also be added to your database. If you accidently add +the wrong author you can click on the authors name and click :guilabel:`Remove`. + +:guilabel:`Manage Authors, Topics, Song Books`: Clicking this button will bring +up your complete list of authors. + +.. image:: pics/song_edit_maintenance.png + +**Add:** Clicking the :guilabel:`Add` button will bring up a box where you will +add the Authors First name, Last name and Display name. Click :guilabel:`Save` +when you are finished. + +.. image:: pics/song_edit_author_maintenance.png + +**Edit:** The :guilabel:`Edit` button will bring up window where you can edit +the info that is already there. + +**Delete:** The :guilabel:`Delete` button will remove the author you have +highlighted. Note: You cannot delete an author that is assigned to a song. +Authors names are displayed in the footer. + +Theme, Copyright info & Comments +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +On this tab you can assign a *Theme* to a song, enter the *Copyright information* +and add the *CCLI number*. If you imported a song from SongSelect this +information will usually be entered. + +.. image:: pics/song_edit_theme_copyright.png + +**Theme:** Click the drop down arrow to display your list of themes or start +typing a theme name in the box and the list will appear. You can also create a +new theme by clicking the :guilabel:`New Theme` button. + +**Copyright information:** Add or edit the copyright information in this box. If +you would like to use the © symbol click "guilabel:`©` button. This information +is displayed in the footer. + +**CCLI number:** Enter the CCLI number in this box. Note: this is the CCLI number +of the song, not your contract number. This number is not displayed in the footer + +**Comments:** You can add comments in this box. This information is not +dispayed in the footer. diff --git a/openlp/core/lib/ui.py b/openlp/core/lib/ui.py index a0686416c..b544efab9 100644 --- a/openlp/core/lib/ui.py +++ b/openlp/core/lib/ui.py @@ -323,7 +323,7 @@ def shortcut_action(parent, name, shortcuts, function, icon=None, checked=None, action.setShortcutContext(context) action_list = ActionList.get_instance() action_list.add_action(action, category) - QtCore.QObject.connect(action, QtCore.SIGNAL(u'triggered()'), function) + QtCore.QObject.connect(action, QtCore.SIGNAL(u'triggered(bool)'), function) return action def context_menu_action(base, icon, text, slot, shortcuts=None, category=None, @@ -356,7 +356,7 @@ def context_menu_action(base, icon, text, slot, shortcuts=None, category=None, action = QtGui.QAction(text, base) if icon: action.setIcon(build_icon(icon)) - QtCore.QObject.connect(action, QtCore.SIGNAL(u'triggered()'), slot) + QtCore.QObject.connect(action, QtCore.SIGNAL(u'triggered(bool)'), slot) if shortcuts is not None: action.setShortcuts(shortcuts) action.setShortcutContext(context) diff --git a/openlp/core/ui/mainwindow.py b/openlp/core/ui/mainwindow.py index d2fbaef9e..32a28d474 100644 --- a/openlp/core/ui/mainwindow.py +++ b/openlp/core/ui/mainwindow.py @@ -896,7 +896,7 @@ class MainWindow(QtGui.QMainWindow, Ui_MainWindow): def toggleThemeManager(self): self.themeManagerDock.setVisible(not self.themeManagerDock.isVisible()) - def setPreviewPanelVisibility(self, visible=None): + def setPreviewPanelVisibility(self, visible): """ Sets the visibility of the preview panel including saving the setting and updating the menu. @@ -906,14 +906,12 @@ class MainWindow(QtGui.QMainWindow, Ui_MainWindow): True - Visible False - Hidden """ - if visible is None: - visible = self.ViewPreviewPanel.isVisible() self.previewController.panel.setVisible(visible) QtCore.QSettings().setValue(u'user interface/preview panel', QtCore.QVariant(visible)) self.ViewPreviewPanel.setChecked(visible) - def setLivePanelVisibility(self, visible=None): + def setLivePanelVisibility(self, visible): """ Sets the visibility of the live panel including saving the setting and updating the menu. @@ -923,8 +921,6 @@ class MainWindow(QtGui.QMainWindow, Ui_MainWindow): True - Visible False - Hidden """ - if visible is None: - visible = self.ViewLivePanel.isVisible() self.liveController.panel.setVisible(visible) QtCore.QSettings().setValue(u'user interface/live panel', QtCore.QVariant(visible)) @@ -1011,4 +1007,4 @@ class MainWindow(QtGui.QMainWindow, Ui_MainWindow): self.recentFiles.insert(0, QtCore.QString(filename)) while self.recentFiles.count() > maxRecentFiles: # Don't care what API says takeLast works, removeLast doesn't! - self.recentFiles.takeLast() \ No newline at end of file + self.recentFiles.takeLast() diff --git a/openlp/core/ui/servicemanager.py b/openlp/core/ui/servicemanager.py index 66cc61989..40bd5e9d4 100644 --- a/openlp/core/ui/servicemanager.py +++ b/openlp/core/ui/servicemanager.py @@ -347,7 +347,8 @@ class ServiceManager(QtGui.QWidget): has been modified. """ self._modified = modified - serviceFile = self.shortFileName() or u'Untitled Service' + serviceFile = self.shortFileName() or translate( + 'OpenLP.ServiceManager', 'Untitled Service') self.mainwindow.setServiceModified(modified, serviceFile) def isModified(self): @@ -614,7 +615,7 @@ class ServiceManager(QtGui.QWidget): u'%s' % fileName) QtGui.QMessageBox.information(self, translate('OpenLP.ServiceManager', 'Corrupt File'), - translate('OpenLP.ServiceManager', 'This file is either' + translate('OpenLP.ServiceManager', 'This file is either ' 'corrupt or not an OpenLP 2.0 service file.')) return finally: diff --git a/openlp/core/ui/thememanager.py b/openlp/core/ui/thememanager.py index d2a653a26..335b9b174 100644 --- a/openlp/core/ui/thememanager.py +++ b/openlp/core/ui/thememanager.py @@ -280,6 +280,8 @@ class ThemeManager(QtGui.QWidget): self.fileRenameForm.fileNameEdit.setText(oldThemeName) if self.fileRenameForm.exec_(): newThemeName = unicode(self.fileRenameForm.fileNameEdit.text()) + if oldThemeName == newThemeName: + return if self.checkIfThemeExists(newThemeName): oldThemeData = self.getThemeData(oldThemeName) self.cloneThemeData(oldThemeData, newThemeName) @@ -333,6 +335,7 @@ class ThemeManager(QtGui.QWidget): self.oldBackgroundImage = theme.background_filename self.themeForm.theme = theme self.themeForm.exec_(True) + self.oldBackgroundImage = None def onDeleteTheme(self): """