Merge from trunk
10
MANIFEST.in
|
@ -4,13 +4,11 @@ recursive-include openlp *.csv
|
||||||
recursive-include openlp *.html
|
recursive-include openlp *.html
|
||||||
recursive-include openlp *.js
|
recursive-include openlp *.js
|
||||||
recursive-include openlp *.css
|
recursive-include openlp *.css
|
||||||
recursive-include openlp *.qm
|
recursive-include openlp *.png
|
||||||
recursive-include documentation *
|
recursive-include documentation *
|
||||||
recursive-include resources/forms *
|
recursive-include resources *
|
||||||
recursive-include resources/i18n *
|
recursive-include scripts *
|
||||||
recursive-include resources/images *
|
|
||||||
recursive-include scripts *.py
|
|
||||||
include resources/*.desktop
|
|
||||||
include copyright.txt
|
include copyright.txt
|
||||||
include LICENSE
|
include LICENSE
|
||||||
|
include README.txt
|
||||||
include openlp/.version
|
include openlp/.version
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
|
|
@ -17,3 +17,9 @@ Helper Classes & Functions
|
||||||
|
|
||||||
.. automodule:: openlp.plugins.remotes.lib
|
.. automodule:: openlp.plugins.remotes.lib
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
|
.. autoclass:: openlp.plugins.remotes.lib.httpserver.HttpConnection
|
||||||
|
:members:
|
||||||
|
|
||||||
|
.. autoclass:: openlp.plugins.remotes.lib.httpserver.HttpResponse
|
||||||
|
:members:
|
||||||
|
|
|
@ -0,0 +1,180 @@
|
||||||
|
======
|
||||||
|
Bibles
|
||||||
|
======
|
||||||
|
|
||||||
|
Managing Bibles in OpenLP is a relatively simple process. There are also
|
||||||
|
converters provided to get data from other formats into OpenLP.
|
||||||
|
|
||||||
|
Bible Importer
|
||||||
|
==============
|
||||||
|
|
||||||
|
If you are using an earlier version of OpenLP or, come from another software
|
||||||
|
package, you may be able to convert your existing database to work in OpenLP
|
||||||
|
2.0. To access the Bible Importer :menuselection:`File --> Import --> Bible`.
|
||||||
|
You may also enter the Bible Importer by clicking the :guilabel:`Import Icon:`
|
||||||
|
|
||||||
|
.. image:: pics/themeimportexport.png
|
||||||
|
|
||||||
|
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.
|
||||||
|
|
||||||
|
.. 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.
|
||||||
|
|
||||||
|
Importing from OpenLP Version 1
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
Converting from OpenLP Version 1 is a simple process. First you will need to
|
||||||
|
locate your Version 1 Bibles.
|
||||||
|
|
||||||
|
Windows XP::
|
||||||
|
|
||||||
|
C:\Documents and Settings\All Users\Application Data\openlp.org\Data\Bibles\
|
||||||
|
|
||||||
|
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.
|
||||||
|
|
||||||
|
Importing OSIS Bibles
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
**About OSIS Formatted Bibles**
|
||||||
|
|
||||||
|
OSIS is a format intended to provide a common format for Bibles. More
|
||||||
|
information can be found out here: http://www.bibletechnologies.net/
|
||||||
|
|
||||||
|
If you have any software installed that is part of the Sword Project
|
||||||
|
http://www.crosswire.org/sword/index.jsp 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::
|
||||||
|
|
||||||
|
mod2osis biblename > biblename.osis
|
||||||
|
|
||||||
|
For example: if I wanted to convert a King James Version Bible I would type
|
||||||
|
something similar to this::
|
||||||
|
|
||||||
|
mod2osis KJV > kjv.osis
|
||||||
|
|
||||||
|
You may also wish to dictate a file location for the conversion to place the
|
||||||
|
osis file for example::
|
||||||
|
|
||||||
|
mod2osis KJV > /home/user/bibles/kjv.osis
|
||||||
|
|
||||||
|
Importing OpenSong Bibles
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
Converting from OpenSong you will need to locate your bibles database. In the
|
||||||
|
later versions of OpenSong you are asked to define the location of this. The
|
||||||
|
songs will be located in a folder named :guilabel:`Bibles`. This folder should
|
||||||
|
contain files with all your bibles in them without a file extension. (file.xmms).
|
||||||
|
When you have located this folder you will need to select the bible from the
|
||||||
|
folder.
|
||||||
|
|
||||||
|
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.
|
||||||
|
|
||||||
|
Importing Web Download Bibles
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
**About Web Download**
|
||||||
|
|
||||||
|
OpenLP provides a Web Download method to import Bibles when you do not have a
|
||||||
|
locally installed Bible available. The Web Download method registers the Bible
|
||||||
|
in OpenLP like the other bibles only it downloads the verses as you need them.
|
||||||
|
This import is not meant to be used as your sole source for Bibles, but rather
|
||||||
|
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.
|
||||||
|
|
||||||
|
.. image:: pics/webbible1.png
|
||||||
|
|
||||||
|
You can also select a proxy server if needed from the `Proxy Server` tab. Your
|
||||||
|
network administrator will know if this is necessary, in most cases this will
|
||||||
|
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.
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
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
|
|
@ -1,7 +1,7 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
#
|
#
|
||||||
# OpenLP documentation build configuration file, created by
|
# OpenLP documentation build configuration file, created by
|
||||||
# sphinx-quickstart on Fri Jul 10 17:20:40 2009.
|
# sphinx-quickstart on Thu Sep 30 21:24:54 2010.
|
||||||
#
|
#
|
||||||
# This file is execfile()d with the current directory set to its containing dir.
|
# This file is execfile()d with the current directory set to its containing dir.
|
||||||
#
|
#
|
||||||
|
@ -11,19 +11,22 @@
|
||||||
# All configuration values have a default; values that are commented out
|
# All configuration values have a default; values that are commented out
|
||||||
# serve to show the default.
|
# serve to show the default.
|
||||||
|
|
||||||
import os
|
|
||||||
import sys
|
import sys
|
||||||
|
import os
|
||||||
|
|
||||||
# If extensions (or modules to document with autodoc) are in another directory,
|
# If extensions (or modules to document with autodoc) are in another directory,
|
||||||
# add these directories to sys.path here. If the directory is relative to the
|
# add these directories to sys.path here. If the directory is relative to the
|
||||||
# documentation root, use os.path.abspath to make it absolute, like shown here.
|
# documentation root, use os.path.abspath to make it absolute, like shown here.
|
||||||
#sys.path.insert(0, os.path.abspath(os.path.join('..', '..')))
|
#sys.path.insert(0, os.path.abspath('.'))
|
||||||
|
|
||||||
# -- General configuration -----------------------------------------------------
|
# -- General configuration -----------------------------------------------------
|
||||||
|
|
||||||
|
# If your documentation needs a minimal Sphinx version, state it here.
|
||||||
|
#needs_sphinx = '1.0'
|
||||||
|
|
||||||
# Add any Sphinx extension module names here, as strings. They can be extensions
|
# Add any Sphinx extension module names here, as strings. They can be extensions
|
||||||
# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
|
# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
|
||||||
#extensions = ['sphinx.ext.autodoc']
|
extensions = []
|
||||||
|
|
||||||
# Add any paths that contain templates here, relative to this directory.
|
# Add any paths that contain templates here, relative to this directory.
|
||||||
templates_path = ['_templates']
|
templates_path = ['_templates']
|
||||||
|
@ -32,14 +35,14 @@ templates_path = ['_templates']
|
||||||
source_suffix = '.rst'
|
source_suffix = '.rst'
|
||||||
|
|
||||||
# The encoding of source files.
|
# The encoding of source files.
|
||||||
source_encoding = 'utf-8'
|
#source_encoding = 'utf-8-sig'
|
||||||
|
|
||||||
# The master toctree document.
|
# The master toctree document.
|
||||||
master_doc = 'index'
|
master_doc = 'index'
|
||||||
|
|
||||||
# General information about the project.
|
# General information about the project.
|
||||||
project = u'OpenLP'
|
project = u'OpenLP'
|
||||||
copyright = u'2004-2010 Raoul Snyman'
|
copyright = u'2010, Raoul Snyman'
|
||||||
|
|
||||||
# The version info for the project you're documenting, acts as replacement for
|
# The version info for the project you're documenting, acts as replacement for
|
||||||
# |version| and |release|, also used in various other places throughout the
|
# |version| and |release|, also used in various other places throughout the
|
||||||
|
@ -48,7 +51,7 @@ copyright = u'2004-2010 Raoul Snyman'
|
||||||
# The short X.Y version.
|
# The short X.Y version.
|
||||||
version = '2.0'
|
version = '2.0'
|
||||||
# The full version, including alpha/beta/rc tags.
|
# The full version, including alpha/beta/rc tags.
|
||||||
release = '1.9.5'
|
release = '2.0'
|
||||||
|
|
||||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
# The language for content autogenerated by Sphinx. Refer to documentation
|
||||||
# for a list of supported languages.
|
# for a list of supported languages.
|
||||||
|
@ -60,12 +63,9 @@ release = '1.9.5'
|
||||||
# Else, today_fmt is used as the format for a strftime call.
|
# Else, today_fmt is used as the format for a strftime call.
|
||||||
#today_fmt = '%B %d, %Y'
|
#today_fmt = '%B %d, %Y'
|
||||||
|
|
||||||
# List of documents that shouldn't be included in the build.
|
# List of patterns, relative to source directory, that match files and
|
||||||
#unused_docs = []
|
# directories to ignore when looking for source files.
|
||||||
|
exclude_patterns = ['_build']
|
||||||
# List of directories, relative to source directory, that shouldn't be searched
|
|
||||||
# for source files.
|
|
||||||
exclude_trees = []
|
|
||||||
|
|
||||||
# The reST default role (used for this markup: `text`) to use for all documents.
|
# The reST default role (used for this markup: `text`) to use for all documents.
|
||||||
#default_role = None
|
#default_role = None
|
||||||
|
@ -75,7 +75,7 @@ exclude_trees = []
|
||||||
|
|
||||||
# If true, the current module name will be prepended to all description
|
# If true, the current module name will be prepended to all description
|
||||||
# unit titles (such as .. function::).
|
# unit titles (such as .. function::).
|
||||||
add_module_names = False
|
#add_module_names = True
|
||||||
|
|
||||||
# If true, sectionauthor and moduleauthor directives will be shown in the
|
# If true, sectionauthor and moduleauthor directives will be shown in the
|
||||||
# output. They are ignored by default.
|
# output. They are ignored by default.
|
||||||
|
@ -90,42 +90,33 @@ pygments_style = 'sphinx'
|
||||||
|
|
||||||
# -- Options for HTML output ---------------------------------------------------
|
# -- Options for HTML output ---------------------------------------------------
|
||||||
|
|
||||||
# The theme to use for HTML and HTML Help pages. Major themes that come with
|
# The theme to use for HTML and HTML Help pages. See the documentation for
|
||||||
# Sphinx are currently 'default' and 'sphinxdoc'.
|
# a list of builtin themes.
|
||||||
#html_theme = 'openlp_qthelp'
|
|
||||||
html_theme = 'default'
|
html_theme = 'default'
|
||||||
|
|
||||||
# Theme options are theme-specific and customize the look and feel of a theme
|
# Theme options are theme-specific and customize the look and feel of a theme
|
||||||
# further. For a list of options available for each theme, see the
|
# further. For a list of options available for each theme, see the
|
||||||
# documentation.
|
# documentation.
|
||||||
if html_theme == 'default':
|
#html_theme_options = {}
|
||||||
html_theme_options = {
|
|
||||||
'sidebarbgcolor': '#3a60a9',
|
|
||||||
'relbarbgcolor': '#203b6f',
|
|
||||||
'footerbgcolor': '#26437c',
|
|
||||||
'headtextcolor': '#203b6f',
|
|
||||||
'linkcolor': '#26437c',
|
|
||||||
'sidebarlinkcolor': '#ceceff'
|
|
||||||
}
|
|
||||||
|
|
||||||
# Add any paths that contain custom themes here, relative to this directory.
|
# Add any paths that contain custom themes here, relative to this directory.
|
||||||
html_theme_path = [u'../themes']
|
#html_theme_path = []
|
||||||
|
|
||||||
# The name for this set of Sphinx documents. If None, it defaults to
|
# The name for this set of Sphinx documents. If None, it defaults to
|
||||||
# "<project> v<release> documentation".
|
# "<project> v<release> documentation".
|
||||||
html_title = u'OpenLP 2.0 User Manual'
|
#html_title = None
|
||||||
|
|
||||||
# A shorter title for the navigation bar. Default is the same as html_title.
|
# A shorter title for the navigation bar. Default is the same as html_title.
|
||||||
#html_short_title = None
|
#html_short_title = None
|
||||||
|
|
||||||
# The name of an image file (relative to this directory) to place at the top
|
# The name of an image file (relative to this directory) to place at the top
|
||||||
# of the sidebar.
|
# of the sidebar.
|
||||||
#html_logo = None
|
html_logo = 'pics/logo.png'
|
||||||
|
|
||||||
# The name of an image file (within the static path) to use as favicon of the
|
# The name of an image file (within the static path) to use as favicon of the
|
||||||
# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
|
# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
|
||||||
# pixels large.
|
# pixels large.
|
||||||
#html_favicon = None
|
html_favicon = 'pics/openlp.ico'
|
||||||
|
|
||||||
# Add any paths that contain custom static files (such as style sheets) here,
|
# Add any paths that contain custom static files (such as style sheets) here,
|
||||||
# relative to this directory. They are copied after the builtin static files,
|
# relative to this directory. They are copied after the builtin static files,
|
||||||
|
@ -148,7 +139,7 @@ html_static_path = ['_static']
|
||||||
#html_additional_pages = {}
|
#html_additional_pages = {}
|
||||||
|
|
||||||
# If false, no module index is generated.
|
# If false, no module index is generated.
|
||||||
#html_use_modindex = True
|
#html_domain_indices = True
|
||||||
|
|
||||||
# If false, no index is generated.
|
# If false, no index is generated.
|
||||||
#html_use_index = True
|
#html_use_index = True
|
||||||
|
@ -159,16 +150,22 @@ html_static_path = ['_static']
|
||||||
# If true, links to the reST sources are added to the pages.
|
# If true, links to the reST sources are added to the pages.
|
||||||
#html_show_sourcelink = True
|
#html_show_sourcelink = True
|
||||||
|
|
||||||
|
# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
|
||||||
|
#html_show_sphinx = True
|
||||||
|
|
||||||
|
# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
|
||||||
|
#html_show_copyright = True
|
||||||
|
|
||||||
# If true, an OpenSearch description file will be output, and all pages will
|
# If true, an OpenSearch description file will be output, and all pages will
|
||||||
# contain a <link> tag referring to it. The value of this option must be the
|
# contain a <link> tag referring to it. The value of this option must be the
|
||||||
# base URL from which the finished HTML is served.
|
# base URL from which the finished HTML is served.
|
||||||
#html_use_opensearch = ''
|
#html_use_opensearch = ''
|
||||||
|
|
||||||
# If nonempty, this is the file name suffix for HTML files (e.g. ".xhtml").
|
# This is the file name suffix for HTML files (e.g. ".xhtml").
|
||||||
#html_file_suffix = ''
|
#html_file_suffix = None
|
||||||
|
|
||||||
# Output file base name for HTML help builder.
|
# Output file base name for HTML help builder.
|
||||||
htmlhelp_basename = 'OpenLP-2.0-manual'
|
htmlhelp_basename = 'OpenLPdoc'
|
||||||
|
|
||||||
|
|
||||||
# -- Options for LaTeX output --------------------------------------------------
|
# -- Options for LaTeX output --------------------------------------------------
|
||||||
|
@ -182,8 +179,8 @@ htmlhelp_basename = 'OpenLP-2.0-manual'
|
||||||
# Grouping the document tree into LaTeX files. List of tuples
|
# Grouping the document tree into LaTeX files. List of tuples
|
||||||
# (source start file, target name, title, author, documentclass [howto/manual]).
|
# (source start file, target name, title, author, documentclass [howto/manual]).
|
||||||
latex_documents = [
|
latex_documents = [
|
||||||
('index', 'OpenLP.tex', u'OpenLP 2.0 User Manual',
|
('index', 'OpenLP.tex', u'OpenLP Documentation',
|
||||||
u'Raoul Snyman', 'manual'),
|
u'Wesley Stout', 'manual'),
|
||||||
]
|
]
|
||||||
|
|
||||||
# The name of an image file (relative to this directory) to place at the top of
|
# The name of an image file (relative to this directory) to place at the top of
|
||||||
|
@ -194,6 +191,12 @@ latex_documents = [
|
||||||
# not chapters.
|
# not chapters.
|
||||||
#latex_use_parts = False
|
#latex_use_parts = False
|
||||||
|
|
||||||
|
# If true, show page references after internal links.
|
||||||
|
#latex_show_pagerefs = False
|
||||||
|
|
||||||
|
# If true, show URL addresses after external links.
|
||||||
|
#latex_show_urls = False
|
||||||
|
|
||||||
# Additional stuff for the LaTeX preamble.
|
# Additional stuff for the LaTeX preamble.
|
||||||
#latex_preamble = ''
|
#latex_preamble = ''
|
||||||
|
|
||||||
|
@ -201,10 +204,14 @@ latex_documents = [
|
||||||
#latex_appendices = []
|
#latex_appendices = []
|
||||||
|
|
||||||
# If false, no module index is generated.
|
# If false, no module index is generated.
|
||||||
#latex_use_modindex = True
|
#latex_domain_indices = True
|
||||||
|
|
||||||
# A dictionary that contains LaTeX snippets that override those Sphinx usually
|
|
||||||
# puts into the generated .tex files.
|
# -- Options for manual page output --------------------------------------------
|
||||||
latex_elements = {
|
|
||||||
'fontpkg': '\\usepackage{helvet}'
|
# One entry per manual page. List of tuples
|
||||||
}
|
# (source start file, name, description, authors, manual section).
|
||||||
|
man_pages = [
|
||||||
|
('index', 'openlp', u'OpenLP Documentation',
|
||||||
|
[u'Wesley Stout'], 1)
|
||||||
|
]
|
||||||
|
|
|
@ -0,0 +1,363 @@
|
||||||
|
==================
|
||||||
|
Configuring OpenLP
|
||||||
|
==================
|
||||||
|
|
||||||
|
OpenLP has many options you can configure to suit your needs. Most options are
|
||||||
|
self-explanatory and we will quickly review them.
|
||||||
|
|
||||||
|
To configure OpenLP, click on :menuselection:`Settings --> Configure OpenLP...`
|
||||||
|
|
||||||
|
The plugins you have activated will have configure options. If all the plugins
|
||||||
|
are activated there will be 9 tabs across the top you can configure.
|
||||||
|
|
||||||
|
General Tab
|
||||||
|
===========
|
||||||
|
|
||||||
|
.. image:: pics/configuregeneral.png
|
||||||
|
|
||||||
|
Monitors
|
||||||
|
^^^^^^^^
|
||||||
|
To select the monitor you want to display OpenLP on, click the drop-down box
|
||||||
|
and choose.
|
||||||
|
|
||||||
|
Display if a single screen
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
When this box is selected, you will be able to see your display on a separate
|
||||||
|
window on the monitor you are using. Click the display and push the Esc key
|
||||||
|
on your keyboard to close the display window.
|
||||||
|
|
||||||
|
Application Startup
|
||||||
|
^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
**Show blank screen warning:**
|
||||||
|
|
||||||
|
When this box is selected, you will get a warning when opening OpenLP that the
|
||||||
|
output display has been blanked. You may have blanked it and shut down the
|
||||||
|
program and this will warn you it is still blanked.
|
||||||
|
|
||||||
|
**Automatically open the last service:**
|
||||||
|
|
||||||
|
When this box is selected, OpenLP will remember the last service you were
|
||||||
|
working on when you closed the program.
|
||||||
|
|
||||||
|
**Show the splash screen:**
|
||||||
|
|
||||||
|
When this box it selected, the OpenLP logo will be displayed in the center of
|
||||||
|
the screen until the program opens. This is useful to know if the program is
|
||||||
|
opening.
|
||||||
|
|
||||||
|
Application Settings
|
||||||
|
^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
**Prompt to save before starting a new service**
|
||||||
|
|
||||||
|
When this box is selected, OpenLP will prompt you to save the service you are
|
||||||
|
working on before starting a new service.
|
||||||
|
|
||||||
|
**Automatically preview next item in service**
|
||||||
|
|
||||||
|
When this box is selected, the next item in the Service Manager will show in the
|
||||||
|
Preview pane.
|
||||||
|
|
||||||
|
**Slide loop delay**
|
||||||
|
|
||||||
|
This setting is the time delay in seconds if you want to continuously loop
|
||||||
|
images, verses, or lyrics. This control timer is also accessible on the "live
|
||||||
|
toolbar.
|
||||||
|
|
||||||
|
CCLI Details
|
||||||
|
^^^^^^^^^^^^
|
||||||
|
|
||||||
|
**CCLI number**
|
||||||
|
|
||||||
|
If you subscribe to CCLI, this box is for your License number. This number is
|
||||||
|
also displayed in the Song Footer box.
|
||||||
|
|
||||||
|
Display Position
|
||||||
|
^^^^^^^^^^^^^^^^
|
||||||
|
This setting will default to your computer monitor. It will override the output
|
||||||
|
display combo box. If your projector display is different, select the Override
|
||||||
|
display position and make the changes here to match your projector display. This
|
||||||
|
option also comes in handy when you have the "Display if a single screen" box
|
||||||
|
selected. You can make the display smaller so it does not cover your whole
|
||||||
|
screen.
|
||||||
|
|
||||||
|
Themes Tab
|
||||||
|
==========
|
||||||
|
|
||||||
|
.. image:: pics/configurethemes.png
|
||||||
|
|
||||||
|
Global Theme
|
||||||
|
^^^^^^^^^^^^
|
||||||
|
|
||||||
|
Choose the theme you would like to use as your default global theme from the
|
||||||
|
drop down box. The theme selected appears below. The global theme use is
|
||||||
|
determined by the Theme Level you have selected.
|
||||||
|
|
||||||
|
Theme Level
|
||||||
|
^^^^^^^^^^^
|
||||||
|
|
||||||
|
Choose from one of three options for the default use of your theme.
|
||||||
|
|
||||||
|
**Song Level:**
|
||||||
|
|
||||||
|
With this level selected, your theme is associated with the song. The theme is
|
||||||
|
controlled by adding or editing a song in the Song editor and your song theme
|
||||||
|
takes priority. If your song does not have a theme associated with it, OpenLP
|
||||||
|
will use the theme set in the Service Manager.
|
||||||
|
|
||||||
|
**Service Level:**
|
||||||
|
|
||||||
|
With this level selected, your theme is controlled at the top of the Service
|
||||||
|
Manager. Select your default service theme there. This setting will override
|
||||||
|
your Song theme.
|
||||||
|
|
||||||
|
**Global Level:**
|
||||||
|
|
||||||
|
With this level selected, all songs and verses will use the theme selected on
|
||||||
|
the left in the Global Theme drop down.
|
||||||
|
|
||||||
|
Advanced Tab
|
||||||
|
============
|
||||||
|
|
||||||
|
.. image:: pics/configureadvanced.png
|
||||||
|
|
||||||
|
|
||||||
|
UI Settings (user interface)
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
**Number of recent files to display:**
|
||||||
|
|
||||||
|
Set this number for OpenLP to remember your last files open. These will show
|
||||||
|
under File.
|
||||||
|
|
||||||
|
**Remember active media manager tab on startup:**
|
||||||
|
|
||||||
|
With this box selected OpenLP media manager will open on the same tab that it
|
||||||
|
was closed on.
|
||||||
|
|
||||||
|
**Double-click to send items straight to live:**
|
||||||
|
|
||||||
|
With this box selected, double-clicking on anything in the Media Manager will
|
||||||
|
immediately send it live instead of to Preview.
|
||||||
|
|
||||||
|
**Expand new service items on creation:**
|
||||||
|
|
||||||
|
With this box selected, everything you add to the Service Manager will be
|
||||||
|
expanded so you can see all the verses, lyrics and presentations, line by line.
|
||||||
|
When you open OpenLP, everything will automatically be expanded in the Service
|
||||||
|
Manager.
|
||||||
|
|
||||||
|
Songs Tab
|
||||||
|
=========
|
||||||
|
|
||||||
|
.. image:: pics/configuresongs.png
|
||||||
|
|
||||||
|
Songs Mode
|
||||||
|
^^^^^^^^^^
|
||||||
|
|
||||||
|
**Enable search as you type:**
|
||||||
|
|
||||||
|
With this box selected, Media Manager/Songs will display the song you are
|
||||||
|
searching for as you are typing. If this box is not selected, you need to type
|
||||||
|
in your search box and then click on the Search button.
|
||||||
|
|
||||||
|
**Display verses on live tool bar:**
|
||||||
|
|
||||||
|
With this box selected, a Go To drop down box is available on the live toolbar
|
||||||
|
to select any part of the verse type you want displayed live.
|
||||||
|
|
||||||
|
**Update service from song edit:**
|
||||||
|
|
||||||
|
With this box selected and you edit a song in the media manager, the results
|
||||||
|
will also change the song if it is added to the Service Manager. If this box
|
||||||
|
is not selected, your song edit changes will only be available in the Service
|
||||||
|
Manager if you add it again.
|
||||||
|
|
||||||
|
**Add missing songs when opening service:**
|
||||||
|
|
||||||
|
With this box selected, when you open an order of service created on another
|
||||||
|
computer, or if one of the songs are no longer in your Media Manager, it will
|
||||||
|
automatically enter the song in your Songs Media Manager. If this box is not
|
||||||
|
checked, the song is available in the service but will not be added to the
|
||||||
|
Media Manager.
|
||||||
|
|
||||||
|
Bibles Tab
|
||||||
|
==========
|
||||||
|
|
||||||
|
.. image:: pics/configurebibles.png
|
||||||
|
|
||||||
|
Verse Display
|
||||||
|
^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
**Only show new chapter numbers:**
|
||||||
|
|
||||||
|
With this box selected, the live display of the verse will only show the
|
||||||
|
chapter number and verse for the first verse, and just the verse numbers after
|
||||||
|
that. If the chapter changes, the new chapter number will be displayed with the
|
||||||
|
verse number for the first line, and only the verse number displayed thereafter.
|
||||||
|
|
||||||
|
**Display style:**
|
||||||
|
|
||||||
|
This option will put brackets around the chapter and verse numbers. You may
|
||||||
|
select No Brackets or your bracket style from the drop down menu.
|
||||||
|
|
||||||
|
**Layout style:**
|
||||||
|
|
||||||
|
There are three options to determine how your Bible verses are displayed.
|
||||||
|
|
||||||
|
`Verse Per Slide` will display one verse per slide.
|
||||||
|
`Verse Per Line` will start each verse on a new line until the slide is full.
|
||||||
|
`Continuous` will run all verses together separated by verse number and chapter
|
||||||
|
if chapter is selected to show above.
|
||||||
|
|
||||||
|
**Note: Changes do not affect verses already in the service.**
|
||||||
|
|
||||||
|
**Display second Bible verses:**
|
||||||
|
|
||||||
|
OpenLP has the ability to display the same verse in two different Bible
|
||||||
|
versions for comparison. With this option selected, there will be a Second
|
||||||
|
choice in the Bible Media Manager to use this option. Verses will display with
|
||||||
|
one verse per slide with the second Bible verse below.
|
||||||
|
|
||||||
|
**Bible theme:**
|
||||||
|
|
||||||
|
You may select your default Bible theme from this drop down box. This selected
|
||||||
|
theme will only be used if your `Theme Level` is set at `Song Level`.
|
||||||
|
|
||||||
|
**Note: Changes do not affect verses already in the service.**
|
||||||
|
|
||||||
|
|
||||||
|
Presentations Tab
|
||||||
|
=================
|
||||||
|
|
||||||
|
.. image:: pics/configurepresentations.png
|
||||||
|
|
||||||
|
Available Controllers
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
OpenLP has the ability to import OpenOffice Impress or Microsoft PowerPoint
|
||||||
|
presentations, and use Impress, PowerPoint, or PowerPoint Viewer to display
|
||||||
|
them and they are controlled from within OpenLP. Please remember that in order
|
||||||
|
to use this function, you must have Impress, PowerPoint or PowerPoint Viewer
|
||||||
|
installed on your computer because OpenLP uses these programs to open and run
|
||||||
|
the presentation. You may select your default controllers here in this tab.
|
||||||
|
|
||||||
|
Advanced
|
||||||
|
^^^^^^^^
|
||||||
|
|
||||||
|
**Allow presentation application to be overridden**
|
||||||
|
|
||||||
|
With this option selected, you will see `Present using` area with a dropdown
|
||||||
|
box on the Presentations toolbar in Media Manager which gives you the option
|
||||||
|
to select the presentation program you want to use.
|
||||||
|
|
||||||
|
Media Tab
|
||||||
|
=========
|
||||||
|
|
||||||
|
.. image:: pics/configuremedia.png
|
||||||
|
|
||||||
|
Media Display
|
||||||
|
^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
**Use Phonon for video playback**
|
||||||
|
|
||||||
|
If you are having trouble displaying media, selecting this box could help.
|
||||||
|
|
||||||
|
Custom Tab:
|
||||||
|
===========
|
||||||
|
|
||||||
|
.. image:: pics/configurecustom.png
|
||||||
|
|
||||||
|
Custom Display
|
||||||
|
^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
**Display Footer**
|
||||||
|
|
||||||
|
With this option selected, your Custom slide Title will be displayed in the
|
||||||
|
footer.
|
||||||
|
|
||||||
|
**Note: If you have an entry in the Credits box of your custom slide, title and
|
||||||
|
credits will always be displayed.**
|
||||||
|
|
||||||
|
Alerts Tab
|
||||||
|
==========
|
||||||
|
|
||||||
|
.. image:: pics/configurealerts.png
|
||||||
|
|
||||||
|
Font
|
||||||
|
^^^^
|
||||||
|
|
||||||
|
**Font name:**
|
||||||
|
|
||||||
|
Choose your desired font from the drop down menu
|
||||||
|
|
||||||
|
**Font color:**
|
||||||
|
|
||||||
|
Choose your font color here.
|
||||||
|
|
||||||
|
**Background color:**
|
||||||
|
|
||||||
|
Choose the background color the font will be displayed on.
|
||||||
|
|
||||||
|
**Font size:**
|
||||||
|
|
||||||
|
This will adjust the size of the font.
|
||||||
|
|
||||||
|
**Alert timeout:**
|
||||||
|
|
||||||
|
This setting will determine how long your Alert will be displayed on the screen,
|
||||||
|
in seconds.
|
||||||
|
|
||||||
|
**Location:**
|
||||||
|
|
||||||
|
Choose the location where you want the alert displayed on the
|
||||||
|
screen, Top, Middle or Bottom.
|
||||||
|
|
||||||
|
**Preview:**
|
||||||
|
|
||||||
|
Your choices will be displayed here.
|
||||||
|
|
||||||
|
Remote Tab
|
||||||
|
===========
|
||||||
|
|
||||||
|
.. image:: pics/configureremotes.png
|
||||||
|
|
||||||
|
OpenLP gives you the ability to control your Service Manager from a remote
|
||||||
|
computer through a web browser. This was written actually for a nursery or day
|
||||||
|
care where a "come and get YYYY" message could be triggered remotely. It has
|
||||||
|
now become an interface to control the whole service remotely.
|
||||||
|
|
||||||
|
An example of one use for this would be if you have a missionary with a
|
||||||
|
PowerPoint presentation, it may be easier for that missionary to remotely
|
||||||
|
connect to your projection computer and change the slides when he wants to.
|
||||||
|
|
||||||
|
To use this feature you will need to be on a network, wired or wireless, know
|
||||||
|
the IP address of the projection computer and enter that IP address and port
|
||||||
|
number in the remote computer's web browser.
|
||||||
|
|
||||||
|
To find your projection computer's IP address for Windows, open Command Prompt
|
||||||
|
and type in “ipconfig” (without quotations), press Enter key and your IP
|
||||||
|
address will show. In Linux, open Terminal and type “ifconfig” (without
|
||||||
|
quotations), and use the IP address after “inet addr:” The IP address will
|
||||||
|
always have a format of xxx.xxx.xxx.xxx where x is one to three digits long.
|
||||||
|
|
||||||
|
Server Settings
|
||||||
|
^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
Serve on IP address: Put your projection computer's IP address here.
|
||||||
|
|
||||||
|
Port Number
|
||||||
|
^^^^^^^^^^^
|
||||||
|
|
||||||
|
You can use the default port number or change it to another number.
|
||||||
|
|
||||||
|
With these two settings written down, open a web browser in the remote computer
|
||||||
|
and enter the IP address followed by a colon and then the port number, ie:
|
||||||
|
192.168.1.104:4316 then press enter. You should now have access to the OpenLP
|
||||||
|
Controller. If it does not come up, you either entered the wrong IP address,
|
||||||
|
port number or one or both computer's are not connected to the network.
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -4,11 +4,11 @@ Dual Monitor Setup
|
||||||
|
|
||||||
The first step in getting OpenLP working on your system is to setup your
|
The first step in getting OpenLP working on your system is to setup your
|
||||||
computer properly for dual monitors. This is not very difficult, but the steps
|
computer properly for dual monitors. This is not very difficult, but the steps
|
||||||
do vary depending on operating system.
|
will vary depending on operating system.
|
||||||
|
|
||||||
Most modern computers do have the ability for dual monitors. To be certain
|
Most modern computers have the ability for dual monitors. To be certain,
|
||||||
check your computer's documentation. A typical desktop computer capable of dual
|
check your computer's documentation. A typical desktop computer capable of dual
|
||||||
monitors will have two of, or a combination of the two connectors below.
|
monitors will have two of, or a combination of the two, connectors below.
|
||||||
|
|
||||||
**VGA**
|
**VGA**
|
||||||
|
|
||||||
|
@ -18,8 +18,8 @@ monitors will have two of, or a combination of the two connectors below.
|
||||||
|
|
||||||
.. image:: pics/dvi.png
|
.. image:: pics/dvi.png
|
||||||
|
|
||||||
A laptop computer setup only varies slightly, generally you will need only one
|
A laptop computer setup only varies slightly. Generally you will need only one
|
||||||
of outputs pictured above since your laptops screen serves as one of the
|
of the outputs pictured above since your laptop screen serves as one of the
|
||||||
monitors. Sometimes with older laptops a key stroke generally involving the
|
monitors. Sometimes with older laptops a key stroke generally involving the
|
||||||
:kbd:`Fn` key and another key is required to enable the second monitor on
|
:kbd:`Fn` key and another key is required to enable the second monitor on
|
||||||
laptops.
|
laptops.
|
||||||
|
@ -27,9 +27,10 @@ laptops.
|
||||||
Some computers also incorporate the use of :abbr:`S-Video (Separate Video)` or
|
Some computers also incorporate the use of :abbr:`S-Video (Separate Video)` or
|
||||||
:abbr:`HDMI (High-Definition Multimedia Interface)` connections.
|
:abbr:`HDMI (High-Definition Multimedia Interface)` connections.
|
||||||
|
|
||||||
A typical OpenLP set up consist of your normal single monitor setup, with your
|
A typical OpenLP setup consist of your normal single monitor, with your
|
||||||
projector setup as the second monitor. With the option of extending your
|
projector hooked up to your computer as the second monitor. With the option of
|
||||||
desktop across the second monitor, or your operating system's equivalent.
|
extending your desktop across the second monitor, or your operating system's
|
||||||
|
equivalent.
|
||||||
|
|
||||||
Microsoft Windows
|
Microsoft Windows
|
||||||
-----------------
|
-----------------
|
||||||
|
@ -46,8 +47,8 @@ press :kbd:`Windows+P`.
|
||||||
|
|
||||||
The more traditional way is also fairly straight forward. Go to
|
The more traditional way is also fairly straight forward. Go to
|
||||||
:guilabel:`Control Panel` and click on :guilabel:`Display`. This will open up
|
:guilabel:`Control Panel` and click on :guilabel:`Display`. This will open up
|
||||||
the :guilabel:`Display` dialog. You can also bypass this step by right click on
|
the :guilabel:`Display` dialog. You may also bypass this step by a right click
|
||||||
a blank area on your desktop and selecting :guilabel:`Resolution`.
|
on a blank area on your desktop and selecting :guilabel:`Resolution`.
|
||||||
|
|
||||||
.. image:: pics/winsevendisplay.png
|
.. image:: pics/winsevendisplay.png
|
||||||
|
|
||||||
|
@ -66,7 +67,7 @@ a blank place on the desktop and click :guilabel:`Personalization`.
|
||||||
.. image:: pics/vistapersonalize.png
|
.. image:: pics/vistapersonalize.png
|
||||||
|
|
||||||
From the :guilabel:`Personalization` window click on :guilabel:`Display
|
From the :guilabel:`Personalization` window click on :guilabel:`Display
|
||||||
Settings`. Then enable the montior that represents your projector and make sure
|
Settings`. Click on the monitor that represents your projector and make sure
|
||||||
you have checked :guilabel:`Extend the desktop onto this monitor`.
|
you have checked :guilabel:`Extend the desktop onto this monitor`.
|
||||||
|
|
||||||
.. image:: pics/vistadisplaysettings.png
|
.. image:: pics/vistadisplaysettings.png
|
||||||
|
@ -77,7 +78,7 @@ Windows XP
|
||||||
From :guilabel:`Control Panel` select :guilabel:`Display`, or right click on a
|
From :guilabel:`Control Panel` select :guilabel:`Display`, or right click on a
|
||||||
blank area of the desktop and select :guilabel:`Properties`. From the
|
blank area of the desktop and select :guilabel:`Properties`. From the
|
||||||
:guilabel:`Display Properties` window click on the :guilabel:`Settings` tab.
|
:guilabel:`Display Properties` window click on the :guilabel:`Settings` tab.
|
||||||
Then click on the monitor that represents your projector and make sure you have
|
Click on the monitor that represents your projector and make sure you have
|
||||||
checked :guilabel:`Extend my Windows desktop onto this monitor`.
|
checked :guilabel:`Extend my Windows desktop onto this monitor`.
|
||||||
|
|
||||||
.. image:: pics/xpdisplaysettings.png
|
.. image:: pics/xpdisplaysettings.png
|
||||||
|
@ -87,7 +88,7 @@ Linux
|
||||||
|
|
||||||
Due to the vast varieties of hardware, distributions, desktops, and drivers
|
Due to the vast varieties of hardware, distributions, desktops, and drivers
|
||||||
this is not an exhaustive guide to dual monitor setup on Linux. This guide
|
this is not an exhaustive guide to dual monitor setup on Linux. This guide
|
||||||
assumes that you have properly set up any proprietary drivers if needed. You
|
assumes you have properly set up any proprietary drivers if needed. You
|
||||||
should seek out your distributions documentation if this general guide does not
|
should seek out your distributions documentation if this general guide does not
|
||||||
work.
|
work.
|
||||||
|
|
||||||
|
@ -123,7 +124,8 @@ Linux Systems Using nVidia Drivers
|
||||||
|
|
||||||
This guide is for users of the proprietary nVidia driver on Linux Distributions.
|
This guide is for users of the proprietary nVidia driver on Linux Distributions.
|
||||||
It is assumed that you have properly setup your drivers according to your
|
It is assumed that you have properly setup your drivers according to your
|
||||||
distribution's documentation, and you have a working ``xorg.conf`` file in place.
|
distribution's documentation, and you have a working ``xorg.conf`` file in
|
||||||
|
place.
|
||||||
|
|
||||||
If you wish to make the changes permanent in setting up your system for dual
|
If you wish to make the changes permanent in setting up your system for dual
|
||||||
monitors it will be necessary to modify your ``xorg.conf`` file. It is always a
|
monitors it will be necessary to modify your ``xorg.conf`` file. It is always a
|
||||||
|
@ -166,7 +168,7 @@ After clicking :guilabel:`Configure`, select :guilabel:`TwinView`. Then click
|
||||||
|
|
||||||
.. image:: pics/twinview.png
|
.. image:: pics/twinview.png
|
||||||
|
|
||||||
Then click :guilabel:`Apply` and if you are happy with the way things look click
|
Click :guilabel:`Apply` and if you are happy with the way things look click
|
||||||
:guilabel:`Keep` to keep your new settings. Don't worry if all goes wrong the
|
:guilabel:`Keep` to keep your new settings. Don't worry if all goes wrong the
|
||||||
settings will return back to the previous settings in 15 seconds without any
|
settings will return back to the previous settings in 15 seconds without any
|
||||||
action. nVidia Settings should take care of selecting your optimum resolution
|
action. nVidia Settings should take care of selecting your optimum resolution
|
||||||
|
@ -175,6 +177,6 @@ on :guilabel:`Save to X Configuration File`.
|
||||||
|
|
||||||
.. image:: pics/xorgwrite.png
|
.. image:: pics/xorgwrite.png
|
||||||
|
|
||||||
Then click :guilabel:`Save` and you should be set. You may want to restart X or
|
Click :guilabel:`Save` and you should be set. You may want to restart X or
|
||||||
your machine just to make sure all the settings carry over the next time you log
|
your machine just to make sure all the settings carry over the next time you log
|
||||||
in.
|
in.
|
||||||
|
|
|
@ -18,13 +18,19 @@ The Main Window contains all the tools and plugins that make OpenLP function
|
||||||
Media Manager
|
Media Manager
|
||||||
-------------
|
-------------
|
||||||
|
|
||||||
The Media Manager contains a number of tabs that plugins supply to OpenLP.
|
The Media Manager contains a number of tabs the plugins supply to OpenLP.
|
||||||
Each tab in the Media Manager is called a **Media Item**
|
Each tab in the Media Manager is called a **Media Item**
|
||||||
|
|
||||||
.. image:: pics/mediamanager.png
|
.. image:: pics/mediamanager.png
|
||||||
|
|
||||||
From the Media Manager you can send Media Items to the Preview or Live screens.
|
From the Media Manager you can send Media Items to the Preview or Live screens.
|
||||||
|
|
||||||
|
Platform
|
||||||
|
--------
|
||||||
|
|
||||||
|
When the word platform is used, it is usually referring to your operating system,
|
||||||
|
Windows, Linux or MAC OS.
|
||||||
|
|
||||||
Preview
|
Preview
|
||||||
-------
|
-------
|
||||||
|
|
||||||
|
@ -36,20 +42,20 @@ with them.
|
||||||
Service File
|
Service File
|
||||||
------------
|
------------
|
||||||
|
|
||||||
A service file, is the file that is created when you save your work on OpenLP.
|
A service file is the file that is created when you save your service in OpenLP.
|
||||||
The service file consist of **Service Items**
|
The service file consist of **Service Items**
|
||||||
|
|
||||||
Service Item
|
Service Item
|
||||||
------------
|
------------
|
||||||
|
|
||||||
A service item are the **media items** that are in the **service manager**
|
Service items are the **media items** that are in the **service manager**
|
||||||
|
|
||||||
Service Manger
|
Service Manger
|
||||||
--------------
|
--------------
|
||||||
|
|
||||||
The service manager contains the media items in your service file. This is the
|
The service manager contains the media items in your service file. This is the
|
||||||
area from which your media items go live, and you can also save, open, and edit
|
area where your media items go live. You can also save, open, and edit
|
||||||
services files.
|
services files from here.
|
||||||
|
|
||||||
.. image:: pics/servicemanager.png
|
.. image:: pics/servicemanager.png
|
||||||
|
|
||||||
|
@ -65,6 +71,6 @@ Theme Manager
|
||||||
-------------
|
-------------
|
||||||
|
|
||||||
The theme manager is where themes are created and edited. Themes are the text
|
The theme manager is where themes are created and edited. Themes are the text
|
||||||
styles backgrounds that you use to personalize your services.
|
styles and backgrounds that you use to personalize your services.
|
||||||
|
|
||||||
.. image:: pics/thememanager.png
|
.. image:: pics/thememanager.png
|
||||||
|
|
|
@ -14,6 +14,8 @@ Contents:
|
||||||
introduction
|
introduction
|
||||||
glossary
|
glossary
|
||||||
dualmonitors
|
dualmonitors
|
||||||
|
configure
|
||||||
|
bibles
|
||||||
|
themes
|
||||||
mediamanager
|
mediamanager
|
||||||
songs
|
songs
|
||||||
|
|
|
@ -3,8 +3,8 @@ Media Manager
|
||||||
=============
|
=============
|
||||||
|
|
||||||
Once you get your system set up for OpenLP you will be ready to add content to
|
Once you get your system set up for OpenLP you will be ready to add content to
|
||||||
your setup. This will all happen through the **Media Manager**. The
|
your Service Manager. This will all happen through the **Media Manager**. The
|
||||||
`Media Manager` contains all the bibles, songs, presentations, media, and
|
`Media Manager` contains all the Bibles, Songs, Presentations, Media, and
|
||||||
everything else that you will project through OpenLP.
|
everything else that you will project through OpenLP.
|
||||||
|
|
||||||
Enabling the Plugins
|
Enabling the Plugins
|
||||||
|
@ -16,11 +16,235 @@ this is what the `Media Manager` looks like with all the plugins enabled.
|
||||||
.. image:: pics/mediamanager.png
|
.. image:: pics/mediamanager.png
|
||||||
|
|
||||||
To enable the plugins navigate to :menuselection:`Settings --> Plugins` or
|
To enable the plugins navigate to :menuselection:`Settings --> Plugins` or
|
||||||
press `F7`. You will then want to click on the plugin to the left that you want
|
press `F7`. You will want to click on the plugin to the left that you want to
|
||||||
to enable and select **active** from the drop down box to the right.
|
enable and select **active** from the drop down box to the right.
|
||||||
|
|
||||||
.. image:: pics/plugins.png
|
.. image:: pics/plugins.png
|
||||||
|
|
||||||
|
|
||||||
Now you should be ready to add content to OpenLP check out the section of this
|
You are now ready to add content for your service.
|
||||||
guide on the individual plugins.
|
|
||||||
|
Adding Media Content
|
||||||
|
--------------------
|
||||||
|
|
||||||
|
This section will describe how to add the different types of media OpenLP is
|
||||||
|
capable of displaying.
|
||||||
|
|
||||||
|
Songs
|
||||||
|
^^^^^
|
||||||
|
Clicking on Songs in the Media Manager will display all of the songs you have
|
||||||
|
added by Title and Author/Authors.
|
||||||
|
|
||||||
|
Using the buttons you can:
|
||||||
|
|
||||||
|
`Add a song:` Brings up the dialog box to add a new song
|
||||||
|
|
||||||
|
`Edit the selected song:` Brings up the dialog box to make changes to the song
|
||||||
|
|
||||||
|
`Delete the selected song:` Removes the song from your song list
|
||||||
|
|
||||||
|
`Preview the selected song:` Lets you see what your song will look like
|
||||||
|
displayed live
|
||||||
|
|
||||||
|
`Send the selected song live:` This option will immediately display your song
|
||||||
|
live.
|
||||||
|
|
||||||
|
`Add the selected Song to the service:` This will enter your song in the Service
|
||||||
|
Manager. You may also drag your song over to the Service Manager.
|
||||||
|
|
||||||
|
`Maintain the list of authors, topics and books:` Brings up a dialog box to edit
|
||||||
|
Authors, Topics or Song Books.
|
||||||
|
Note: Right clicking on a song file will bring up some of the same options.
|
||||||
|
|
||||||
|
Bibles
|
||||||
|
^^^^^^
|
||||||
|
Clicking on Bibles in the Media Manager will display your options for searching
|
||||||
|
and adding chapters and verses to the Service Manager.
|
||||||
|
|
||||||
|
Using the buttons you can:
|
||||||
|
|
||||||
|
`Import a Bible:` This is discussed in detail on the Bible Importer page in the
|
||||||
|
manual.
|
||||||
|
|
||||||
|
`Preview the selected Bible:` Sends your selected verses to the Preview window
|
||||||
|
|
||||||
|
`Send the selected Bible live:` This option will immediately display your
|
||||||
|
selected verses live.
|
||||||
|
|
||||||
|
`Add the selected Bible to the service:` This will enter your verses into the
|
||||||
|
Service Manager. You may also click and drag your verses over to the Service
|
||||||
|
Manager.
|
||||||
|
|
||||||
|
**Quick tab**
|
||||||
|
|
||||||
|
`Version:` Once you have imported a Bible, it will be displayed in the Version
|
||||||
|
drop down box. Select the version of the Bible you want to use here.
|
||||||
|
|
||||||
|
**Second**
|
||||||
|
|
||||||
|
If you have “Display second Bible verses” selected in Configure OpenLP, Bibles
|
||||||
|
tab, this choice will be visible. This option is for displaying another version
|
||||||
|
of the Bible for comparison. Both versions will be displayed. If there is not
|
||||||
|
enough space on one slide, the Second version will be displayed on the next
|
||||||
|
slide.
|
||||||
|
|
||||||
|
Use the `Search` button to display your results in the box below.
|
||||||
|
|
||||||
|
**Find**
|
||||||
|
|
||||||
|
You will type your search query in this box for the following two searches.
|
||||||
|
|
||||||
|
`Search type:` You may search for a specific verse using this format below.
|
||||||
|
|
||||||
|
Book Chapter
|
||||||
|
Book Chapter-Chapter
|
||||||
|
Book Chapter:Verse-Verse
|
||||||
|
Book Chapter:Verse-Verse, Verse-Verse
|
||||||
|
Book Chapter:Verse-Verse,Chapter:Verse-Verse
|
||||||
|
Book Chapter: Verse-Chapter:Verse
|
||||||
|
|
||||||
|
`Text Search:`
|
||||||
|
|
||||||
|
You may also search by a keyword or words. The more words you use for the
|
||||||
|
search, the more you will narrow down your results.
|
||||||
|
|
||||||
|
**Results** `Clear and Keep.`
|
||||||
|
|
||||||
|
Each search you make will display your verses below. If you would like to
|
||||||
|
display verses that are out of sequence you may select `Keep` in the drop down
|
||||||
|
box and continue your search for the next verse or verses. All searches will be
|
||||||
|
shown and kept below.
|
||||||
|
If you select `Clear` from the drop down box, each new search clears the
|
||||||
|
previous search from the list below.
|
||||||
|
|
||||||
|
**Advanced tab**
|
||||||
|
|
||||||
|
This tab is convenient for selecting book, chapter and verse by name and number.
|
||||||
|
Version and Second are the same as in Quick tab above. Click on each box and
|
||||||
|
select the version you wish to display and Second version if you wish to display
|
||||||
|
an alternative version.
|
||||||
|
|
||||||
|
Use the `Search` button to display your results in the box below.
|
||||||
|
|
||||||
|
`Book:` Click on the drop down box and select the book you want to display.
|
||||||
|
`Chapter: Verse:` Select your chapter From and To and Verse From and To
|
||||||
|
|
||||||
|
Results will work the same as the Quick tab above.
|
||||||
|
|
||||||
|
Presentations
|
||||||
|
^^^^^^^^^^^^^
|
||||||
|
Using the buttons you can:
|
||||||
|
|
||||||
|
`Load a new presentation:` This brings up a dialog box to find your presentation
|
||||||
|
and list it in OpenLP.
|
||||||
|
|
||||||
|
`Delete the selected Presentation:` This removes your Presentation from the list.
|
||||||
|
Please note: this will not delete the presentation from your computer, only from
|
||||||
|
the OpenLP list.
|
||||||
|
|
||||||
|
`Preview the selected Presentation:` Sends your selected Presentation to the
|
||||||
|
Preview window
|
||||||
|
|
||||||
|
`Send the selected Presentation live:` This option will immediately display your
|
||||||
|
selected Presentation live.
|
||||||
|
|
||||||
|
`Add the selected Presentation to the service:` This will enter your
|
||||||
|
Presentation into the Service Manager. You may also click and drag your
|
||||||
|
Presentation over to the Service Manager.
|
||||||
|
|
||||||
|
Right clicking on a Presentation file will bring up some of the same options.
|
||||||
|
|
||||||
|
Images
|
||||||
|
^^^^^^
|
||||||
|
Using the buttons you can:
|
||||||
|
|
||||||
|
`Load a new Image:` This brings up a dialog box to find your Image and list it
|
||||||
|
in OpenLP.
|
||||||
|
|
||||||
|
`Delete the selected Image:` This removes your Image from the list. Please note:
|
||||||
|
this will not delete the Image from your computer, just the OpenLP list.
|
||||||
|
|
||||||
|
`Preview the selected Image:` Sends your selected Image to the Preview window
|
||||||
|
|
||||||
|
`Send the selected Image live:` This option will immediately display your
|
||||||
|
selected Image live.
|
||||||
|
|
||||||
|
`Add the selected Image to the service:` This will enter your Image into the
|
||||||
|
Service Manager. You may also click and drag your Image over to the Service
|
||||||
|
Manager.
|
||||||
|
|
||||||
|
`Replace Live Background:` With an Image selected, clicking this button will
|
||||||
|
immediately replace the live background being displayed with your selection.
|
||||||
|
The Image will replace the theme background until the theme changes or the
|
||||||
|
"Remove Background" button is pressed.
|
||||||
|
|
||||||
|
|
||||||
|
Right clicking on an Image file will bring up some of the same options.
|
||||||
|
|
||||||
|
Media
|
||||||
|
^^^^^
|
||||||
|
|
||||||
|
Media is an audio or video file. Generally if you can play or view your media
|
||||||
|
on your computer without OpenLP, you can also play it in OpenLP.
|
||||||
|
|
||||||
|
Using the buttons you can:
|
||||||
|
`Load a new Media:` This brings up a dialog box to find your Media and list it
|
||||||
|
in OpenLP.
|
||||||
|
|
||||||
|
`Delete the selected Media:` This removes your Media from the list. Please note:
|
||||||
|
this will not delete the Media from your computer, just the OpenLP list.
|
||||||
|
|
||||||
|
`Preview the selected Media:` Sends your selected Media to the Preview window
|
||||||
|
|
||||||
|
`Send the selected Media live:` This option will immediately display your
|
||||||
|
selected Media live.
|
||||||
|
|
||||||
|
`Add the selected Media to the service:` This will enter your Media into the
|
||||||
|
Service Manager. You may also click and drag your Media over to the Service
|
||||||
|
Manager.
|
||||||
|
|
||||||
|
`Replace Live Background:` With a Media file selected, clicking this button will
|
||||||
|
immediately replace the live background being displayed with your selection.
|
||||||
|
|
||||||
|
Right clicking on a Media file will bring up some of the same options.
|
||||||
|
|
||||||
|
Custom
|
||||||
|
^^^^^^
|
||||||
|
|
||||||
|
Custom gives you the option of creating your own slide. This could be useful for
|
||||||
|
displaying readings, liturgy or any text that may not be found in Songs or
|
||||||
|
Bibles.
|
||||||
|
|
||||||
|
`Add a new Custom:` Brings up the dialog box to add a new Custom display.
|
||||||
|
`Edit the selected Custom:` Brings up the dialog box to make changes to the
|
||||||
|
Custom display.
|
||||||
|
|
||||||
|
`Delete the selected Custom:` Remove the Custom from your list
|
||||||
|
|
||||||
|
`Preview the selected Custom:` Lets you see what your Custom will look like
|
||||||
|
displayed live
|
||||||
|
|
||||||
|
`Send the selected Custom live:` This option will immediately display your
|
||||||
|
Custom live
|
||||||
|
|
||||||
|
`Add the selected Custom to the service:` This will enter your Custom in the
|
||||||
|
Service Manager. You may also drag your Custom over to the Service Manager.
|
||||||
|
|
||||||
|
Right clicking on a Custom file will bring up some of the same options.
|
||||||
|
|
||||||
|
When you Add a new Custom slide a dialog box will appear.
|
||||||
|
|
||||||
|
`Title:` Name of your Custom slide.
|
||||||
|
|
||||||
|
`Add:` After clicking on Add you will enter your text you want to display in
|
||||||
|
this box. To create multiple slides, click the Split Slide button. When you have
|
||||||
|
finished adding your text, click on the Save button.
|
||||||
|
|
||||||
|
`Theme:` Select the theme you want to use for your Custom slide from this drop
|
||||||
|
down box.
|
||||||
|
`Credits:` Anything typed in this box will be displayed in the footer
|
||||||
|
information on the display. When you are finished, click the Save button.
|
||||||
|
|
||||||
|
To Edit your slide, click on the Edit button to edit part of it or the Edit All
|
||||||
|
if you need to make multiple changes. Use the Up and Down arrows to change the
|
||||||
|
arrangement of your Custom slide.
|
||||||
|
|
After Width: | Height: | Size: 599 B |
After Width: | Height: | Size: 76 KiB |
After Width: | Height: | Size: 86 KiB |
After Width: | Height: | Size: 81 KiB |
After Width: | Height: | Size: 159 KiB |
After Width: | Height: | Size: 22 KiB |
After Width: | Height: | Size: 19 KiB |
After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 19 KiB |
After Width: | Height: | Size: 29 KiB |
After Width: | Height: | Size: 37 KiB |
After Width: | Height: | Size: 36 KiB |
After Width: | Height: | Size: 22 KiB |
After Width: | Height: | Size: 60 KiB |
After Width: | Height: | Size: 22 KiB |
After Width: | Height: | Size: 28 KiB |
After Width: | Height: | Size: 24 KiB |
After Width: | Height: | Size: 29 KiB |
After Width: | Height: | Size: 45 KiB |
After Width: | Height: | Size: 892 B |
After Width: | Height: | Size: 22 KiB |
After Width: | Height: | Size: 29 KiB |
After Width: | Height: | Size: 23 KiB |
After Width: | Height: | Size: 4.2 KiB |
After Width: | Height: | Size: 77 KiB |
After Width: | Height: | Size: 84 KiB |
After Width: | Height: | Size: 77 KiB |
After Width: | Height: | Size: 84 KiB |
After Width: | Height: | Size: 28 KiB |
After Width: | Height: | Size: 34 KiB |
After Width: | Height: | Size: 30 KiB |
After Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 22 KiB |
After Width: | Height: | Size: 69 KiB |
After Width: | Height: | Size: 38 KiB |
After Width: | Height: | Size: 20 KiB |
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 44 KiB |
After Width: | Height: | Size: 89 KiB |
After Width: | Height: | Size: 713 B |
After Width: | Height: | Size: 68 KiB |
After Width: | Height: | Size: 58 KiB |
After Width: | Height: | Size: 86 KiB |
After Width: | Height: | Size: 585 B |
After Width: | Height: | Size: 833 B |
After Width: | Height: | Size: 593 B |
After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 25 KiB |
After Width: | Height: | Size: 28 KiB |
After Width: | Height: | Size: 27 KiB |
After Width: | Height: | Size: 22 KiB |
After Width: | Height: | Size: 35 KiB |
After Width: | Height: | Size: 20 KiB |
After Width: | Height: | Size: 24 KiB |
After Width: | Height: | Size: 32 KiB |
After Width: | Height: | Size: 36 KiB |
After Width: | Height: | Size: 157 KiB |
After Width: | Height: | Size: 30 KiB |
After Width: | Height: | Size: 27 KiB |
|
@ -0,0 +1,11 @@
|
||||||
|
========================
|
||||||
|
OpenLP Quick Start Guide
|
||||||
|
========================
|
||||||
|
|
||||||
|
Thank you for choosing OpenLP. The developers of OpenLP have attempted to make
|
||||||
|
OpenLP intuitive and easy to use. This Quick Start Guide will help you to get
|
||||||
|
going quickly.
|
||||||
|
|
||||||
|
Bible Importer
|
||||||
|
==============
|
||||||
|
|
|
@ -8,26 +8,26 @@ converters provided to get data from other formats into OpenLP.
|
||||||
Song Importer
|
Song Importer
|
||||||
=============
|
=============
|
||||||
|
|
||||||
If you are using an earlier version of OpenLP or come from another software
|
If you are using an earlier version of OpenLP or, come from another software
|
||||||
package, you may be able to convert your existing database to work in OpenLP
|
package, you may be able to convert your existing database to work in OpenLP
|
||||||
2.0. To access the Song Importer :menuselection:`File --> Import --> Song`.
|
2.0. To access the Song Importer click :menuselection:`File --> Import --> Song`.
|
||||||
You will then see the Song Importer window, then click :guilabel:`Next`.
|
You will see the Song Importer window, then click :guilabel:`Next`.
|
||||||
|
|
||||||
.. image:: pics/songimporter.png
|
.. image:: pics/songimporter.png
|
||||||
|
|
||||||
After choosing :guilabel:`Next` you can then select from the various types of
|
After choosing :guilabel:`Next` you can select from the various types of
|
||||||
software that OpenLP will convert songs from.
|
software that OpenLP will convert songs from.
|
||||||
|
|
||||||
.. image:: pics/songimporterchoices.png
|
.. image:: pics/songimporterchoices.png
|
||||||
|
|
||||||
Then click on the file folder icon to choose the file of the song database you
|
Click on the file folder icon to choose the file of the song database you
|
||||||
want to import. See the following sections for information on the different
|
want to import. See the following sections for information on the different
|
||||||
formats that OpenLP will import.
|
formats that OpenLP will import.
|
||||||
|
|
||||||
Importing from OpenLP Version 1
|
Importing from OpenLP Version 1
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
Converting from OpenLP Version 1 is a pretty simple process. You will first
|
Converting from OpenLP Version 1 is a simple process. First you will
|
||||||
need to locate your version 1 database file.
|
need to locate your version 1 database file.
|
||||||
|
|
||||||
Windows XP::
|
Windows XP::
|
||||||
|
@ -38,33 +38,34 @@ Windows Vista / Windows 7::
|
||||||
|
|
||||||
C:\ProgramData\openlp.org\Data\songs.olp
|
C:\ProgramData\openlp.org\Data\songs.olp
|
||||||
|
|
||||||
After clicking :guilabel:`Next` your conversion should be complete.
|
After clicking :guilabel:`Next` your conversion will be complete.
|
||||||
|
|
||||||
.. image:: pics/finishedimport.png
|
.. image:: pics/finishedimport.png
|
||||||
|
|
||||||
Then press :guilabel:`Finish` and you should now be ready to use your OpenLP
|
Press :guilabel:`Finish` and you will now be ready to use your OpenLP
|
||||||
version one songs.
|
version 1 songs.
|
||||||
|
|
||||||
Importing from OpenSong
|
Importing from OpenSong
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
Converting from OpenSong you will need to locate your songs database. In the
|
Converting from OpenSong, you will need to locate your songs database. In the
|
||||||
later versions of OpenSong you are asked to define the location of this. The
|
later versions of OpenSong you are asked to define the location of this. The
|
||||||
songs will be located in a folder named :guilabel:`Songs`. This folder should
|
songs will be located in a folder named :guilabel:`Songs`. This folder will
|
||||||
contain files with all your songs in them without a file extension. (file.xxx).
|
contain files with all your songs in them, without a file extension. (file.xxx).
|
||||||
When you have located this folder you will then need to select the songs from
|
When you have located this folder you will need to select the songs from
|
||||||
the folder.
|
the folder.
|
||||||
|
|
||||||
.. image:: pics/selectsongs.png
|
.. image:: pics/selectsongs.png
|
||||||
|
|
||||||
On most operating systems to select all the songs, first select the first song
|
On most operating systems, to select all the songs, first select the first song
|
||||||
in the lest then press shift and select the last song in the list. After this
|
in the list, press the shift key, and select the last song in the list. After
|
||||||
press :guilabel:`Next` and you should see that your import has been successful.
|
this press :guilabel:`Next` and you will see that your import has been
|
||||||
|
successful.
|
||||||
|
|
||||||
.. image:: pics/finishedimport.png
|
.. image:: pics/finishedimport.png
|
||||||
|
|
||||||
Press :guilabel:`Finish` and you will now be ready to use your songs imported
|
Press :guilabel:`Finish` and OpenLP will be ready to use your songs that you
|
||||||
from OpenSong.
|
imported from OpenSong.
|
||||||
|
|
||||||
Importing from CCLI Song Select
|
Importing from CCLI Song Select
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
@ -79,22 +80,23 @@ Then search for your desired song. For this example we will be adding the song
|
||||||
|
|
||||||
.. image:: pics/songselectsongsearch.png
|
.. image:: pics/songselectsongsearch.png
|
||||||
|
|
||||||
For the song you are searching for select `lyrics` This should take you to a
|
For the song you are searching for, select `lyrics` This will take you to a
|
||||||
page displaying the lyrics and copyright info for your song.
|
page displaying the lyrics and copyright information for your song.
|
||||||
|
|
||||||
.. image:: pics/songselectlyrics.png
|
.. image:: pics/songselectlyrics.png
|
||||||
|
|
||||||
Next, hover over the :guilabel:`Lyrics` menu from the upper right corner. Then
|
Next, hover over the :guilabel:`Lyrics` menu from the upper right corner.
|
||||||
choose either the .txt or .usr file. You will then be asked to chose a download
|
Choose either the .txt or .usr file. You will be asked to chose a download
|
||||||
location if your browser does not automatically select that for you. Select
|
location if your browser does not automatically select that for you. Select
|
||||||
this file from the OpenLP import window and then click :guilabel:`Next` You can
|
this file from the OpenLP import window and then click :guilabel:`Next` You can
|
||||||
also select multiple songs for import at once on most operating systems by
|
also select multiple songs for import at once on most operating systems by
|
||||||
selecting the first item in the list then holding shift select the last item in
|
selecting the first item in the list then holding the shift key and select the
|
||||||
the list. When finished you should see that your import has completed.
|
last item in the list. When finished, you will see that your import has
|
||||||
|
completed.
|
||||||
|
|
||||||
.. image:: pics/finishedimport.png
|
.. image:: pics/finishedimport.png
|
||||||
|
|
||||||
Press :guilabel:`Finish` and you will now be ready to use your songs imported
|
Press :guilabel:`Finish` and OpenLP will be ready to use your songs imported
|
||||||
from CCLI SongSelect.
|
from CCLI SongSelect.
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,196 @@
|
||||||
|
======
|
||||||
|
Themes
|
||||||
|
======
|
||||||
|
|
||||||
|
|
||||||
|
The `Theme Manager` is where you can set backgrounds, fonts, and colors to the
|
||||||
|
style you desire. From the theme manager you can create a new theme, Edit a
|
||||||
|
theme, Delete a theme, Import a theme, and Export a theme.
|
||||||
|
|
||||||
|
.. image:: /pics/thememanager1.png
|
||||||
|
|
||||||
|
Creating New Themes
|
||||||
|
===================
|
||||||
|
Click the :guilabel:`Create Theme Icon` to Create a new theme
|
||||||
|
|
||||||
|
.. image:: /pics/createthemeicon.png
|
||||||
|
|
||||||
|
This will bring up the `Theme Wizard`
|
||||||
|
|
||||||
|
.. image:: /pics/themewizardwelcome.png
|
||||||
|
|
||||||
|
Click :guilabel:`Next`. You have 3 choices in the drop down menu for Background
|
||||||
|
type: Solid Color, Gradient, or Image.
|
||||||
|
|
||||||
|
.. image:: /pics/themewizard1.png
|
||||||
|
|
||||||
|
Solid color: select solid color and click on the black button next to Color.
|
||||||
|
You will have the option of choosing among the colors you see or entering your
|
||||||
|
own.
|
||||||
|
|
||||||
|
.. image:: /pics/themewizard2.png
|
||||||
|
|
||||||
|
Gradient: choose the two colors, First and Second, you want to fade together
|
||||||
|
and the Gradient drop down will let you determine the directions of the fade.
|
||||||
|
|
||||||
|
.. image:: /pics/themewizard3.png
|
||||||
|
|
||||||
|
Image: Click on the folder to find and select your image. OpenLP accepts a
|
||||||
|
variety of image types.
|
||||||
|
|
||||||
|
.. image:: /pics/themewizard4.png
|
||||||
|
|
||||||
|
**Note:** If possible, try to use the same size image as your projector is
|
||||||
|
displaying.
|
||||||
|
|
||||||
|
When finished with your selection for background, click the :guilabel:`Next`
|
||||||
|
button.
|
||||||
|
|
||||||
|
This is the area where you will select and define your font characteristics for
|
||||||
|
the Display text.
|
||||||
|
|
||||||
|
.. image:: /pics/themewizard5.png
|
||||||
|
|
||||||
|
**Font:** Choose the font you would like to use from the drop down.
|
||||||
|
|
||||||
|
**Color:** Choose the color of your font.
|
||||||
|
|
||||||
|
**Size:** The size of your font determines how many lines are shown per slide.
|
||||||
|
As you change the font size, the lines per slide will change.
|
||||||
|
|
||||||
|
**Line Spacing:** This setting determines how much space you want between
|
||||||
|
lines. This setting will also change the lines per slide.
|
||||||
|
|
||||||
|
**Outline:** If you desire an outline around your font, select the Outline box,
|
||||||
|
choose your color and size of the outline.
|
||||||
|
|
||||||
|
**Shadow:** If you desire a shadow around your font, select the Shadow box and
|
||||||
|
choose your color and size of the shadow.
|
||||||
|
|
||||||
|
**Bold Display:** select the box for Bold font
|
||||||
|
|
||||||
|
**Italic Display:** select the box for Italic font
|
||||||
|
|
||||||
|
When you are finished selecting your font details click the :guilabel:`Next`
|
||||||
|
button.
|
||||||
|
|
||||||
|
**Footer Area Font Details**
|
||||||
|
|
||||||
|
This page determines the Font, Font Color, and size of the font for the footer.
|
||||||
|
The footer is where the Title of the song, Author or Authors, Copyright and
|
||||||
|
CCLI License are displayed.
|
||||||
|
|
||||||
|
.. image:: /pics/themewizard6.png
|
||||||
|
|
||||||
|
When you are finished setting your footer font details, click :guilabel:`Next`.
|
||||||
|
|
||||||
|
**Text Formatting Details**
|
||||||
|
|
||||||
|
This page determines the alignment of the text on your slide and the transition
|
||||||
|
from one slide to the next.
|
||||||
|
|
||||||
|
.. image:: /pics/themewizard7.png
|
||||||
|
|
||||||
|
**Horizontal Align** the text to the Left, Right or Center of the screen.
|
||||||
|
|
||||||
|
**Vertical Align** the text to the Top, Middle or bottom of the screen.
|
||||||
|
|
||||||
|
**Transitions**
|
||||||
|
|
||||||
|
When this box is selected, switching slides will fade out from one and fade in
|
||||||
|
to the next. When the box is not selected, slide changing will be instant.
|
||||||
|
|
||||||
|
When you are finished setting your Text Formatting Details, click :guilabel:`Next`.
|
||||||
|
|
||||||
|
**Output Area Locations**
|
||||||
|
|
||||||
|
This page gives you the ability to position your Main area or Footer area to a
|
||||||
|
specific area of the screen using the x and y positions. ie: if you do not want
|
||||||
|
your footer on the bottom left, you can make the adjustment here.
|
||||||
|
You can resize the Width and the Height of the Main Area and the Footer Area.
|
||||||
|
ie: If you have a temporary or permanent obstacle in one part of the viewing
|
||||||
|
area, you can resize the Main or Footer area and use x and y positions to
|
||||||
|
display in a different position on the screen.
|
||||||
|
|
||||||
|
.. image:: /pics/themewizard8.png
|
||||||
|
|
||||||
|
You can also change the Width and the Height of the Main Area of the Footer Area.
|
||||||
|
|
||||||
|
When you are finished setting your Output Area Locations, click :guilabel:`Next`.
|
||||||
|
|
||||||
|
Save and Preview
|
||||||
|
|
||||||
|
.. image:: /pics/themewizard9.png
|
||||||
|
|
||||||
|
**Theme Name:** Enter your theme name here.
|
||||||
|
|
||||||
|
**Preview**
|
||||||
|
The Preview shows the choices you made when setting up the previous pages plus,
|
||||||
|
shows all the edit effects possible so you can see what the impact is on all
|
||||||
|
possible font colors and characteristics.
|
||||||
|
|
||||||
|
If you are satisfied with your selections, click :guilabel:`Finish`. If you
|
||||||
|
want to make a change, use the :guilabel:`Back` button.
|
||||||
|
|
||||||
|
Editing Themes
|
||||||
|
==============
|
||||||
|
Now that you created your theme, and you show it on the projector and there is
|
||||||
|
something you don't like, you can easily Edit your theme either by clicking the
|
||||||
|
Theme Edit Button:
|
||||||
|
|
||||||
|
.. image:: /pics/themeeditbutton.png
|
||||||
|
|
||||||
|
Or by right-clicking your theme and selecting the appropriate action.
|
||||||
|
|
||||||
|
Deleting Themes
|
||||||
|
===============
|
||||||
|
|
||||||
|
The Delete Button:
|
||||||
|
|
||||||
|
.. image:: /pics/songs17.png
|
||||||
|
|
||||||
|
will delete a selected theme or by right-clicking your theme and selecting
|
||||||
|
the appropriate action.
|
||||||
|
|
||||||
|
**Note:** deleting the currently selected global theme or the
|
||||||
|
default theme is not possible.
|
||||||
|
|
||||||
|
Exporting Themes
|
||||||
|
================
|
||||||
|
If you would like to transfer a theme from one computer to another, click on
|
||||||
|
the theme you want to Export, click the last button in the Theme Manager:
|
||||||
|
|
||||||
|
.. image:: /pics/themeimportexport.png
|
||||||
|
|
||||||
|
choose the folder you want to save your theme and click the OK button.
|
||||||
|
|
||||||
|
Importing Themes
|
||||||
|
================
|
||||||
|
|
||||||
|
The fourth button in the Theme Manager:
|
||||||
|
|
||||||
|
.. image:: /pics/themeimportexport.png
|
||||||
|
|
||||||
|
will allow you to Import an Exported theme. Click the Import button, select the
|
||||||
|
folder and the theme file, and click OK. Your imported theme will be in the
|
||||||
|
Theme Manager. Import Theme will also handle version 1 Exports. You will need to
|
||||||
|
check your imported theme since many of the values will have been defaulted.
|
||||||
|
|
||||||
|
Rename Theme
|
||||||
|
============
|
||||||
|
|
||||||
|
If you created a theme and want to change the name of it, right-click your
|
||||||
|
theme and click Rename theme and enter the new name.
|
||||||
|
|
||||||
|
Copy Theme
|
||||||
|
==========
|
||||||
|
|
||||||
|
Now that you created a theme with all the attributes you like, you can
|
||||||
|
right-click the theme, click on Copy theme, choose your new name and click OK.
|
||||||
|
You now have a duplicate of your first theme that you can edit the way you want.
|
||||||
|
|
||||||
|
Set as Global default
|
||||||
|
=====================
|
||||||
|
|
||||||
|
If you right-click your theme, you have the option to set the theme as Global
|
||||||
|
default. This option is covered in greater detail under “Configure OpenLP.
|
76
openlp.pyw
|
@ -7,9 +7,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
@ -24,7 +24,6 @@
|
||||||
# with this program; if not, write to the Free Software Foundation, Inc., 59 #
|
# with this program; if not, write to the Free Software Foundation, Inc., 59 #
|
||||||
# Temple Place, Suite 330, Boston, MA 02111-1307 USA #
|
# Temple Place, Suite 330, Boston, MA 02111-1307 USA #
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
import logging
|
import logging
|
||||||
|
@ -37,6 +36,8 @@ from PyQt4 import QtCore, QtGui
|
||||||
from openlp.core.lib import Receiver, check_directory_exists
|
from openlp.core.lib import Receiver, check_directory_exists
|
||||||
from openlp.core.resources import qInitResources
|
from openlp.core.resources import qInitResources
|
||||||
from openlp.core.ui.mainwindow import MainWindow
|
from openlp.core.ui.mainwindow import MainWindow
|
||||||
|
from openlp.core.ui.firsttimelanguageform import FirstTimeLanguageForm
|
||||||
|
from openlp.core.ui.firsttimeform import FirstTimeForm
|
||||||
from openlp.core.ui.exceptionform import ExceptionForm
|
from openlp.core.ui.exceptionform import ExceptionForm
|
||||||
from openlp.core.ui import SplashScreen, ScreenList
|
from openlp.core.ui import SplashScreen, ScreenList
|
||||||
from openlp.core.utils import AppLocation, LanguageManager, VersionThread
|
from openlp.core.utils import AppLocation, LanguageManager, VersionThread
|
||||||
|
@ -70,12 +71,14 @@ class OpenLP(QtGui.QApplication):
|
||||||
The core application class. This class inherits from Qt's QApplication
|
The core application class. This class inherits from Qt's QApplication
|
||||||
class in order to provide the core of the application.
|
class in order to provide the core of the application.
|
||||||
"""
|
"""
|
||||||
log.info(u'OpenLP Application Loaded')
|
app_version = None
|
||||||
|
|
||||||
def _get_version(self):
|
def get_version(self):
|
||||||
"""
|
"""
|
||||||
Load and store current Application Version
|
Load and store current Application Version
|
||||||
"""
|
"""
|
||||||
|
if self.app_version:
|
||||||
|
return self.app_version
|
||||||
if u'--dev-version' in sys.argv or u'-d' in sys.argv:
|
if u'--dev-version' in sys.argv or u'-d' in sys.argv:
|
||||||
# If we're running the dev version, let's use bzr to get the version
|
# If we're running the dev version, let's use bzr to get the version
|
||||||
try:
|
try:
|
||||||
|
@ -135,30 +138,25 @@ class OpenLP(QtGui.QApplication):
|
||||||
if fversion:
|
if fversion:
|
||||||
fversion.close()
|
fversion.close()
|
||||||
bits = full_version.split(u'-')
|
bits = full_version.split(u'-')
|
||||||
app_version = {
|
self.app_version = {
|
||||||
u'full': full_version,
|
u'full': full_version,
|
||||||
u'version': bits[0],
|
u'version': bits[0],
|
||||||
u'build': bits[1] if len(bits) > 1 else None
|
u'build': bits[1] if len(bits) > 1 else None
|
||||||
}
|
}
|
||||||
if app_version[u'build']:
|
if self.app_version[u'build']:
|
||||||
log.info(
|
log.info(
|
||||||
u'Openlp version %s build %s',
|
u'Openlp version %s build %s',
|
||||||
app_version[u'version'],
|
self.app_version[u'version'],
|
||||||
app_version[u'build']
|
self.app_version[u'build']
|
||||||
)
|
)
|
||||||
else:
|
else:
|
||||||
log.info(u'Openlp version %s' % app_version[u'version'])
|
log.info(u'Openlp version %s' % self.app_version[u'version'])
|
||||||
return app_version
|
return self.app_version
|
||||||
|
|
||||||
# def notify(self, obj, evt):
|
|
||||||
# #TODO needed for presentation exceptions
|
|
||||||
# return QtGui.QApplication.notify(self, obj, evt)
|
|
||||||
|
|
||||||
def run(self):
|
def run(self):
|
||||||
"""
|
"""
|
||||||
Run the OpenLP application.
|
Run the OpenLP application.
|
||||||
"""
|
"""
|
||||||
app_version = self._get_version()
|
|
||||||
# provide a listener for widgets to reqest a screen update.
|
# provide a listener for widgets to reqest a screen update.
|
||||||
QtCore.QObject.connect(Receiver.get_receiver(),
|
QtCore.QObject.connect(Receiver.get_receiver(),
|
||||||
QtCore.SIGNAL(u'openlp_process_events'), self.processEvents)
|
QtCore.SIGNAL(u'openlp_process_events'), self.processEvents)
|
||||||
|
@ -166,10 +164,15 @@ class OpenLP(QtGui.QApplication):
|
||||||
QtCore.SIGNAL(u'cursor_busy'), self.setBusyCursor)
|
QtCore.SIGNAL(u'cursor_busy'), self.setBusyCursor)
|
||||||
QtCore.QObject.connect(Receiver.get_receiver(),
|
QtCore.QObject.connect(Receiver.get_receiver(),
|
||||||
QtCore.SIGNAL(u'cursor_normal'), self.setNormalCursor)
|
QtCore.SIGNAL(u'cursor_normal'), self.setNormalCursor)
|
||||||
self.setOrganizationName(u'OpenLP')
|
# Decide how many screens we have and their size
|
||||||
self.setOrganizationDomain(u'openlp.org')
|
screens = ScreenList(self.desktop())
|
||||||
self.setApplicationName(u'OpenLP')
|
# First time checks in settings
|
||||||
self.setApplicationVersion(app_version[u'version'])
|
has_run_wizard = QtCore.QSettings().value(
|
||||||
|
u'general/has run wizard', QtCore.QVariant(False)).toBool()
|
||||||
|
if not has_run_wizard:
|
||||||
|
if FirstTimeForm(screens).exec_() == QtGui.QDialog.Accepted:
|
||||||
|
QtCore.QSettings().setValue(u'general/has run wizard',
|
||||||
|
QtCore.QVariant(True))
|
||||||
if os.name == u'nt':
|
if os.name == u'nt':
|
||||||
self.setStyleSheet(application_stylesheet)
|
self.setStyleSheet(application_stylesheet)
|
||||||
show_splash = QtCore.QSettings().value(
|
show_splash = QtCore.QSettings().value(
|
||||||
|
@ -179,26 +182,21 @@ class OpenLP(QtGui.QApplication):
|
||||||
self.splash.show()
|
self.splash.show()
|
||||||
# make sure Qt really display the splash screen
|
# make sure Qt really display the splash screen
|
||||||
self.processEvents()
|
self.processEvents()
|
||||||
screens = ScreenList()
|
|
||||||
# Decide how many screens we have and their size
|
|
||||||
for screen in xrange(0, self.desktop().numScreens()):
|
|
||||||
size = self.desktop().screenGeometry(screen)
|
|
||||||
screens.add_screen({u'number': screen,
|
|
||||||
u'size': size,
|
|
||||||
u'primary': (self.desktop().primaryScreen() == screen)})
|
|
||||||
log.info(u'Screen %d found with resolution %s', screen, size)
|
|
||||||
# start the main app window
|
# start the main app window
|
||||||
self.appClipboard = self.clipboard()
|
self.mainWindow = MainWindow(screens, self.app_version,
|
||||||
self.mainWindow = MainWindow(screens, app_version, self.appClipboard)
|
self.clipboard())
|
||||||
self.mainWindow.show()
|
self.mainWindow.show()
|
||||||
if show_splash:
|
if show_splash:
|
||||||
# now kill the splashscreen
|
# now kill the splashscreen
|
||||||
self.splash.finish(self.mainWindow)
|
self.splash.finish(self.mainWindow)
|
||||||
self.mainWindow.repaint()
|
self.mainWindow.repaint()
|
||||||
|
self.processEvents()
|
||||||
|
if not has_run_wizard:
|
||||||
|
self.mainWindow.firstTime()
|
||||||
update_check = QtCore.QSettings().value(
|
update_check = QtCore.QSettings().value(
|
||||||
u'general/update check', QtCore.QVariant(True)).toBool()
|
u'general/update check', QtCore.QVariant(True)).toBool()
|
||||||
if update_check:
|
if update_check:
|
||||||
VersionThread(self.mainWindow, app_version).start()
|
VersionThread(self.mainWindow, self.app_version).start()
|
||||||
return self.exec_()
|
return self.exec_()
|
||||||
|
|
||||||
def hookException(self, exctype, value, traceback):
|
def hookException(self, exctype, value, traceback):
|
||||||
|
@ -273,10 +271,20 @@ def main():
|
||||||
qInitResources()
|
qInitResources()
|
||||||
# Now create and actually run the application.
|
# Now create and actually run the application.
|
||||||
app = OpenLP(qt_args)
|
app = OpenLP(qt_args)
|
||||||
if sys.platform == 'darwin':
|
app.setOrganizationName(u'OpenLP')
|
||||||
|
app.setOrganizationDomain(u'openlp.org')
|
||||||
|
app.setApplicationName(u'OpenLP')
|
||||||
|
app.setApplicationVersion(app.get_version()[u'version'])
|
||||||
|
# First time checks in settings
|
||||||
|
if not QtCore.QSettings().value(u'general/has run wizard',
|
||||||
|
QtCore.QVariant(False)).toBool():
|
||||||
|
if not FirstTimeLanguageForm().exec_():
|
||||||
|
# if cancel then stop processing
|
||||||
|
sys.exit()
|
||||||
|
if sys.platform == u'darwin':
|
||||||
OpenLP.addLibraryPath(QtGui.QApplication.applicationDirPath()
|
OpenLP.addLibraryPath(QtGui.QApplication.applicationDirPath()
|
||||||
+ "/qt4_plugins")
|
+ "/qt4_plugins")
|
||||||
#i18n Set Language
|
# i18n Set Language
|
||||||
language = LanguageManager.get_language()
|
language = LanguageManager.get_language()
|
||||||
appTranslator = LanguageManager.get_translator(language)
|
appTranslator = LanguageManager.get_translator(language)
|
||||||
app.installTranslator(appTranslator)
|
app.installTranslator(appTranslator)
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
@ -248,9 +248,8 @@ def resize_image(image, width, height, background=QtCore.Qt.black):
|
||||||
``height``
|
``height``
|
||||||
The new image height.
|
The new image height.
|
||||||
|
|
||||||
``background``
|
``background``
|
||||||
The background colour defaults to black.
|
The background colour defaults to black.
|
||||||
|
|
||||||
"""
|
"""
|
||||||
log.debug(u'resize_image - start')
|
log.debug(u'resize_image - start')
|
||||||
if isinstance(image, QtGui.QImage):
|
if isinstance(image, QtGui.QImage):
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
@ -220,8 +220,6 @@ class MediaManagerItem(QtGui.QWidget):
|
||||||
if self.hasDeleteIcon:
|
if self.hasDeleteIcon:
|
||||||
toolbar_actions.append([StringContent.Delete,
|
toolbar_actions.append([StringContent.Delete,
|
||||||
u':/general/general_delete.png', self.onDeleteClick])
|
u':/general/general_delete.png', self.onDeleteClick])
|
||||||
## Separator Line ##
|
|
||||||
self.addToolbarSeparator()
|
|
||||||
## Preview ##
|
## Preview ##
|
||||||
toolbar_actions.append([StringContent.Preview,
|
toolbar_actions.append([StringContent.Preview,
|
||||||
u':/general/general_preview.png', self.onPreviewClick])
|
u':/general/general_preview.png', self.onPreviewClick])
|
||||||
|
@ -232,6 +230,8 @@ class MediaManagerItem(QtGui.QWidget):
|
||||||
toolbar_actions.append([StringContent.Service,
|
toolbar_actions.append([StringContent.Service,
|
||||||
u':/general/general_add.png', self.onAddClick])
|
u':/general/general_add.png', self.onAddClick])
|
||||||
for action in toolbar_actions:
|
for action in toolbar_actions:
|
||||||
|
if action[0] == StringContent.Preview:
|
||||||
|
self.addToolbarSeparator()
|
||||||
self.addToolbarButton(
|
self.addToolbarButton(
|
||||||
self.plugin.getString(action[0])[u'title'],
|
self.plugin.getString(action[0])[u'title'],
|
||||||
self.plugin.getString(action[0])[u'tooltip'],
|
self.plugin.getString(action[0])[u'tooltip'],
|
||||||
|
@ -349,11 +349,11 @@ class MediaManagerItem(QtGui.QWidget):
|
||||||
Validates whether an image still exists and, if it does, is the
|
Validates whether an image still exists and, if it does, is the
|
||||||
thumbnail representation of the image up to date.
|
thumbnail representation of the image up to date.
|
||||||
"""
|
"""
|
||||||
if not os.path.exists(image):
|
if not os.path.exists(unicode(image)):
|
||||||
return False
|
return False
|
||||||
if os.path.exists(thumb):
|
if os.path.exists(thumb):
|
||||||
imageDate = os.stat(image).st_mtime
|
imageDate = os.stat(unicode(image)).st_mtime
|
||||||
thumbDate = os.stat(thumb).st_mtime
|
thumbDate = os.stat(unicode(thumb)).st_mtime
|
||||||
# If image has been updated rebuild icon
|
# If image has been updated rebuild icon
|
||||||
if imageDate > thumbDate:
|
if imageDate > thumbDate:
|
||||||
self.iconFromFile(image, thumb)
|
self.iconFromFile(image, thumb)
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
@ -114,8 +114,8 @@ class Plugin(QtCore.QObject):
|
||||||
"""
|
"""
|
||||||
log.info(u'loaded')
|
log.info(u'loaded')
|
||||||
|
|
||||||
def __init__(self, name, version=None, pluginHelpers=None,
|
def __init__(self, name, pluginHelpers=None, mediaItemClass=None,
|
||||||
mediaItemClass=None, settingsTabClass=None):
|
settingsTabClass=None, version=None):
|
||||||
"""
|
"""
|
||||||
This is the constructor for the plugin object. This provides an easy
|
This is the constructor for the plugin object. This provides an easy
|
||||||
way for descendent plugins to populate common data. This method *must*
|
way for descendent plugins to populate common data. This method *must*
|
||||||
|
@ -123,7 +123,7 @@ class Plugin(QtCore.QObject):
|
||||||
|
|
||||||
class MyPlugin(Plugin):
|
class MyPlugin(Plugin):
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
Plugin.__init__(self, u'MyPlugin', u'0.1')
|
Plugin.__init__(self, u'MyPlugin', version=u'0.1')
|
||||||
|
|
||||||
``name``
|
``name``
|
||||||
Defaults to *None*. The name of the plugin.
|
Defaults to *None*. The name of the plugin.
|
||||||
|
@ -145,8 +145,7 @@ class Plugin(QtCore.QObject):
|
||||||
self.textStrings = {}
|
self.textStrings = {}
|
||||||
self.setPluginTextStrings()
|
self.setPluginTextStrings()
|
||||||
self.nameStrings = self.textStrings[StringContent.Name]
|
self.nameStrings = self.textStrings[StringContent.Name]
|
||||||
if version:
|
self.version = version if version else u'1.9.5'
|
||||||
self.version = version
|
|
||||||
self.settingsSection = self.name.lower()
|
self.settingsSection = self.name.lower()
|
||||||
self.icon = None
|
self.icon = None
|
||||||
self.mediaItemClass = mediaItemClass
|
self.mediaItemClass = mediaItemClass
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
@ -49,16 +49,13 @@ class PluginManager(object):
|
||||||
``plugin_dir``
|
``plugin_dir``
|
||||||
The directory to search for plugins.
|
The directory to search for plugins.
|
||||||
"""
|
"""
|
||||||
log.info(u'Plugin manager initing')
|
log.info(u'Plugin manager Initialising')
|
||||||
if not plugin_dir in sys.path:
|
if not plugin_dir in sys.path:
|
||||||
log.debug(u'Inserting %s into sys.path', plugin_dir)
|
log.debug(u'Inserting %s into sys.path', plugin_dir)
|
||||||
sys.path.insert(0, plugin_dir)
|
sys.path.insert(0, plugin_dir)
|
||||||
self.basepath = os.path.abspath(plugin_dir)
|
self.basepath = os.path.abspath(plugin_dir)
|
||||||
log.debug(u'Base path %s ', self.basepath)
|
log.debug(u'Base path %s ', self.basepath)
|
||||||
self.plugin_helpers = []
|
|
||||||
self.plugins = []
|
self.plugins = []
|
||||||
# this has to happen after the UI is sorted
|
|
||||||
# self.find_plugins(plugin_dir)
|
|
||||||
log.info(u'Plugin manager Initialised')
|
log.info(u'Plugin manager Initialised')
|
||||||
|
|
||||||
def find_plugins(self, plugin_dir, plugin_helpers):
|
def find_plugins(self, plugin_dir, plugin_helpers):
|
||||||
|
@ -73,7 +70,7 @@ class PluginManager(object):
|
||||||
A list of helper objects to pass to the plugins.
|
A list of helper objects to pass to the plugins.
|
||||||
|
|
||||||
"""
|
"""
|
||||||
self.plugin_helpers = plugin_helpers
|
log.info(u'Finding plugins')
|
||||||
startdepth = len(os.path.abspath(plugin_dir).split(os.sep))
|
startdepth = len(os.path.abspath(plugin_dir).split(os.sep))
|
||||||
log.debug(u'finding plugins in %s at depth %d',
|
log.debug(u'finding plugins in %s at depth %d',
|
||||||
unicode(plugin_dir), startdepth)
|
unicode(plugin_dir), startdepth)
|
||||||
|
@ -102,11 +99,11 @@ class PluginManager(object):
|
||||||
plugin_objects = []
|
plugin_objects = []
|
||||||
for p in plugin_classes:
|
for p in plugin_classes:
|
||||||
try:
|
try:
|
||||||
plugin = p(self.plugin_helpers)
|
plugin = p(plugin_helpers)
|
||||||
log.debug(u'Loaded plugin %s with helpers', unicode(p))
|
log.debug(u'Loaded plugin %s', unicode(p))
|
||||||
plugin_objects.append(plugin)
|
plugin_objects.append(plugin)
|
||||||
except TypeError:
|
except TypeError:
|
||||||
log.exception(u'loaded plugin %s has no helpers', unicode(p))
|
log.exception(u'Failed to load plugin %s', unicode(p))
|
||||||
plugins_list = sorted(plugin_objects, self.order_by_weight)
|
plugins_list = sorted(plugin_objects, self.order_by_weight)
|
||||||
for plugin in plugins_list:
|
for plugin in plugins_list:
|
||||||
if plugin.checkPreConditions():
|
if plugin.checkPreConditions():
|
||||||
|
@ -203,6 +200,7 @@ class PluginManager(object):
|
||||||
Loop through all the plugins and give them an opportunity to
|
Loop through all the plugins and give them an opportunity to
|
||||||
initialise themselves.
|
initialise themselves.
|
||||||
"""
|
"""
|
||||||
|
log.info(u'Initialise Plugins - Started')
|
||||||
for plugin in self.plugins:
|
for plugin in self.plugins:
|
||||||
log.info(u'initialising plugins %s in a %s state'
|
log.info(u'initialising plugins %s in a %s state'
|
||||||
% (plugin.name, plugin.isActive()))
|
% (plugin.name, plugin.isActive()))
|
||||||
|
@ -211,6 +209,7 @@ class PluginManager(object):
|
||||||
log.info(u'Initialisation Complete for %s ' % plugin.name)
|
log.info(u'Initialisation Complete for %s ' % plugin.name)
|
||||||
if not plugin.isActive():
|
if not plugin.isActive():
|
||||||
plugin.removeToolboxItem()
|
plugin.removeToolboxItem()
|
||||||
|
log.info(u'Initialise Plugins - Finished')
|
||||||
|
|
||||||
def finalise_plugins(self):
|
def finalise_plugins(self):
|
||||||
"""
|
"""
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
@ -69,7 +69,6 @@ class RenderManager(object):
|
||||||
self.image_manager = ImageManager()
|
self.image_manager = ImageManager()
|
||||||
self.display = MainDisplay(self, screens, False)
|
self.display = MainDisplay(self, screens, False)
|
||||||
self.display.imageManager = self.image_manager
|
self.display.imageManager = self.image_manager
|
||||||
self.display.setup()
|
|
||||||
self.theme_manager = theme_manager
|
self.theme_manager = theme_manager
|
||||||
self.renderer = Renderer()
|
self.renderer = Renderer()
|
||||||
self.calculate_default(self.screens.current[u'size'])
|
self.calculate_default(self.screens.current[u'size'])
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
@ -62,7 +62,7 @@ class ItemCapabilities(object):
|
||||||
AddIfNewItem = 9
|
AddIfNewItem = 9
|
||||||
ProvidesOwnDisplay = 10
|
ProvidesOwnDisplay = 10
|
||||||
AllowsDetailedTitleDisplay = 11
|
AllowsDetailedTitleDisplay = 11
|
||||||
AllowsVarableStartTime = 12
|
AllowsVariableStartTime = 12
|
||||||
|
|
||||||
|
|
||||||
class ServiceItem(object):
|
class ServiceItem(object):
|
||||||
|
@ -88,8 +88,8 @@ class ServiceItem(object):
|
||||||
self.audit = u''
|
self.audit = u''
|
||||||
self.items = []
|
self.items = []
|
||||||
self.iconic_representation = None
|
self.iconic_representation = None
|
||||||
self.raw_footer = None
|
self.raw_footer = []
|
||||||
self.foot_text = None
|
self.foot_text = u''
|
||||||
self.theme = None
|
self.theme = None
|
||||||
self.service_item_type = None
|
self.service_item_type = None
|
||||||
self._raw_frames = []
|
self._raw_frames = []
|
||||||
|
@ -162,9 +162,7 @@ class ServiceItem(object):
|
||||||
line_break = True
|
line_break = True
|
||||||
if self.is_capable(ItemCapabilities.NoLineBreaks):
|
if self.is_capable(ItemCapabilities.NoLineBreaks):
|
||||||
line_break = False
|
line_break = False
|
||||||
theme = None
|
theme = self.theme if self.theme else None
|
||||||
if self.theme:
|
|
||||||
theme = self.theme
|
|
||||||
self.main, self.footer = \
|
self.main, self.footer = \
|
||||||
self.render_manager.set_override_theme(theme, useOverride)
|
self.render_manager.set_override_theme(theme, useOverride)
|
||||||
self.themedata = self.render_manager.renderer._theme
|
self.themedata = self.render_manager.renderer._theme
|
||||||
|
@ -185,13 +183,13 @@ class ServiceItem(object):
|
||||||
else:
|
else:
|
||||||
log.error(u'Invalid value renderer :%s' % self.service_item_type)
|
log.error(u'Invalid value renderer :%s' % self.service_item_type)
|
||||||
self.title = clean_tags(self.title)
|
self.title = clean_tags(self.title)
|
||||||
self.foot_text = None
|
# The footer should never be None, but to be compatible with a few
|
||||||
if self.raw_footer:
|
# nightly builds between 1.9.4 and 1.9.5, we have to correct this to
|
||||||
for foot in self.raw_footer:
|
# avoid tracebacks.
|
||||||
if not self.foot_text:
|
if self.raw_footer is None:
|
||||||
self.foot_text = foot
|
self.raw_footer = []
|
||||||
else:
|
self.foot_text = \
|
||||||
self.foot_text = u'%s<br>%s' % (self.foot_text, foot)
|
u'<br>'.join([footer for footer in self.raw_footer if footer])
|
||||||
|
|
||||||
def add_from_image(self, path, title):
|
def add_from_image(self, path, title):
|
||||||
"""
|
"""
|
||||||
|
@ -204,8 +202,7 @@ class ServiceItem(object):
|
||||||
A title for the slide in the service item.
|
A title for the slide in the service item.
|
||||||
"""
|
"""
|
||||||
self.service_item_type = ServiceItemType.Image
|
self.service_item_type = ServiceItemType.Image
|
||||||
self._raw_frames.append(
|
self._raw_frames.append({u'title': title, u'path': path})
|
||||||
{u'title': title, u'path': path})
|
|
||||||
self.render_manager.image_manager.add_image(title, path)
|
self.render_manager.image_manager.add_image(title, path)
|
||||||
self._new_item()
|
self._new_item()
|
||||||
|
|
||||||
|
@ -452,3 +449,4 @@ class ServiceItem(object):
|
||||||
return end
|
return end
|
||||||
else:
|
else:
|
||||||
return u'%s : %s' % (start, end)
|
return u'%s : %s' % (start, end)
|
||||||
|
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
@ -48,7 +48,7 @@ class OpenLPToolbar(QtGui.QToolBar):
|
||||||
self.icons = {}
|
self.icons = {}
|
||||||
self.setIconSize(QtCore.QSize(20, 20))
|
self.setIconSize(QtCore.QSize(20, 20))
|
||||||
self.actions = {}
|
self.actions = {}
|
||||||
log.debug(u'Init done')
|
log.debug(u'Init done for %s' % parent.__class__.__name__)
|
||||||
|
|
||||||
def addToolbarButton(self, title, icon, tooltip=None, slot=None,
|
def addToolbarButton(self, title, icon, tooltip=None, slot=None,
|
||||||
checkable=False, shortcut=0, alternate=0,
|
checkable=False, shortcut=0, alternate=0,
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
@ -51,6 +51,8 @@ class HideMode(object):
|
||||||
Theme = 2
|
Theme = 2
|
||||||
Screen = 3
|
Screen = 3
|
||||||
|
|
||||||
|
from firsttimeform import FirstTimeForm
|
||||||
|
from firsttimelanguageform import FirstTimeLanguageForm
|
||||||
from themeform import ThemeForm
|
from themeform import ThemeForm
|
||||||
from filerenameform import FileRenameForm
|
from filerenameform import FileRenameForm
|
||||||
from starttimeform import StartTimeForm
|
from starttimeform import StartTimeForm
|
||||||
|
@ -74,4 +76,4 @@ from thememanager import ThemeManager
|
||||||
|
|
||||||
__all__ = ['SplashScreen', 'AboutForm', 'SettingsForm', 'MainDisplay',
|
__all__ = ['SplashScreen', 'AboutForm', 'SettingsForm', 'MainDisplay',
|
||||||
'SlideController', 'ServiceManager', 'ThemeManager', 'MediaDockManager',
|
'SlideController', 'ServiceManager', 'ThemeManager', 'MediaDockManager',
|
||||||
'ServiceItemEditForm']
|
'ServiceItemEditForm', u'FirstTimeForm']
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# Copyright (c) 2008-2011 Raoul Snyman #
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
# Gorven, Scott Guerrieri, Meinert Jordan, Armin Köhler, Andreas Preikschat, #
|
# Gorven, Scott Guerrieri, Matthias Hub, Meinert Jordan, Armin Köhler, #
|
||||||
# Christian Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon #
|
# Andreas Preikschat, Mattias Põldaru, Christian Richter, Philip Ridout, #
|
||||||
# Tibble, Carsten Tinggaard, Frode Woldsund #
|
# Maikel Stuivenberg, Martin Thompson, Jon Tibble, Frode Woldsund #
|
||||||
# --------------------------------------------------------------------------- #
|
# --------------------------------------------------------------------------- #
|
||||||
# This program is free software; you can redistribute it and/or modify it #
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
# under the terms of the GNU General Public License as published by the Free #
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
@ -106,38 +106,86 @@ class Ui_AboutDialog(object):
|
||||||
))
|
))
|
||||||
self.aboutNotebook.setTabText(
|
self.aboutNotebook.setTabText(
|
||||||
self.aboutNotebook.indexOf(self.aboutTab), UiStrings.About)
|
self.aboutNotebook.indexOf(self.aboutTab), UiStrings.About)
|
||||||
self.creditsTextEdit.setPlainText(translate('OpenLP.AboutForm',
|
lead = u'Raoul "superfly" Snyman'
|
||||||
|
developers = [u'Tim "TRB143" Bentley', u'Jonathan "gushie" Corwin',
|
||||||
|
u'Michael "cocooncrash" Gorven',
|
||||||
|
u'Andreas "googol" Preikschat', u'Raoul "superfly" Snyman',
|
||||||
|
u'Martin "mijiti" Thompson', u'Jon "Meths" Tibble']
|
||||||
|
contributors = [u'Scott "sguerrieri" Guerrieri',
|
||||||
|
u'Matthias "matthub" Hub', u'Meinert "m2j" Jordan',
|
||||||
|
u'Armin "orangeshirt" K\xf6hler', u'Mattias "mahfiaz" P\xf5ldaru',
|
||||||
|
u'Christian "crichter" Richter', u'Philip "Phill" Ridout',
|
||||||
|
u'Jeffrey "whydoubt" Smith', u'Maikel Stuivenberg',
|
||||||
|
u'Frode "frodus" Woldsund']
|
||||||
|
testers = [u'Philip "Phill" Ridout', u'Wesley "wrst" Stout',
|
||||||
|
u'John "jseagull1" Cegalis (lead)']
|
||||||
|
packagers = ['Thomas "tabthorpe" Abthorpe (FreeBSD)',
|
||||||
|
u'Tim "TRB143" Bentley (Fedora)',
|
||||||
|
u'Matthias "matthub" Hub (Mac OS X)',
|
||||||
|
u'Stevan "StevanP" Pettit (Windows)',
|
||||||
|
u'Raoul "superfly" Snyman (Ubuntu)']
|
||||||
|
translators = {
|
||||||
|
u'af': [u'Johan "nuvolari" Mynhardt'],
|
||||||
|
u'de': [u'Patrick "madmuffin" Br\xfcckner',
|
||||||
|
u'Meinert "m2j" Jordan', u'Andreas "googol" Preikschat',
|
||||||
|
u'Christian "crichter" Richter'],
|
||||||
|
u'en_GB': [u'Tim "TRB143" Bentley', u'Jonathan "gushie" Corwin'],
|
||||||
|
u'en_ZA': [u'Raoul "superfly" Snyman'],
|
||||||
|
u'et': [u'Mattias "mahfiaz" P\xf5ldaru'],
|
||||||
|
u'fr': [u'Stephan\xe9 "stbrunner" Brunner'],
|
||||||
|
u'hu': [u'Gyuris Gell\xe9t'],
|
||||||
|
u'ja': [u'Kunio "Kunio" Nakamaru'],
|
||||||
|
u'nb': [u'Atle "pendlaren" Weibell', u'Frode "frodus" Woldsund'],
|
||||||
|
u'nl': [u'Arjen "typovar" van Voorst'],
|
||||||
|
u'pt_BR': [u'Rafael "rafaellerm" Lerm', u'Gustavo Bim'],
|
||||||
|
u'ru': [u'Sergey "ratz" Ratz']
|
||||||
|
}
|
||||||
|
documentors = [u'Wesley "wrst" Stout',
|
||||||
|
u'John "jseagull1" Cegalis (lead)']
|
||||||
|
self.creditsTextEdit.setPlainText(unicode(translate('OpenLP.AboutForm',
|
||||||
'Project Lead\n'
|
'Project Lead\n'
|
||||||
' Raoul "superfly" Snyman\n'
|
' %s\n'
|
||||||
'\n'
|
'\n'
|
||||||
'Developers\n'
|
'Developers\n'
|
||||||
' Tim "TRB143" Bentley\n'
|
' %s\n'
|
||||||
' Jonathan "gushie" Corwin\n'
|
|
||||||
' Michael "cocooncrash" Gorven\n'
|
|
||||||
' Scott "sguerrieri" Guerrieri\n'
|
|
||||||
' Raoul "superfly" Snyman\n'
|
|
||||||
' Martin "mijiti" Thompson\n'
|
|
||||||
' Jon "Meths" Tibble\n'
|
|
||||||
'\n'
|
'\n'
|
||||||
'Contributors\n'
|
'Contributors\n'
|
||||||
' Meinert "m2j" Jordan\n'
|
' %s\n'
|
||||||
' Andreas "googol" Preikschat\n'
|
|
||||||
' Christian "crichter" Richter\n'
|
|
||||||
' Philip "Phill" Ridout\n'
|
|
||||||
' Maikel Stuivenberg\n'
|
|
||||||
' Carsten "catini" Tingaard\n'
|
|
||||||
' Frode "frodus" Woldsund\n'
|
|
||||||
'\n'
|
'\n'
|
||||||
'Testers\n'
|
'Testers\n'
|
||||||
' Philip "Phill" Ridout\n'
|
' %s\n'
|
||||||
' Wesley "wrst" Stout (lead)\n'
|
|
||||||
'\n'
|
'\n'
|
||||||
'Packagers\n'
|
'Packagers\n'
|
||||||
' Thomas "tabthorpe" Abthorpe (FreeBSD)\n'
|
' %s\n'
|
||||||
' Tim "TRB143" Bentley (Fedora)\n'
|
'\n'
|
||||||
' Michael "cocooncrash" Gorven (Ubuntu)\n'
|
'Translators\n'
|
||||||
' Matthias "matthub" Hub (Mac OS X)\n'
|
' Afrikaans (af)\n'
|
||||||
' Raoul "superfly" Snyman (Windows, Ubuntu)\n'
|
' %s\n'
|
||||||
|
' German (de)\n'
|
||||||
|
' %s\n'
|
||||||
|
' English, United Kingdom (en_GB)\n'
|
||||||
|
' %s\n'
|
||||||
|
' English, South Africa (en_ZA)\n'
|
||||||
|
' %s\n'
|
||||||
|
' Estonian (et)\n'
|
||||||
|
' %s\n'
|
||||||
|
' French (fr)\n'
|
||||||
|
' %s\n'
|
||||||
|
' Hungarian (hu)\n'
|
||||||
|
' %s\n'
|
||||||
|
' Japanese (ja)\n'
|
||||||
|
' %s\n'
|
||||||
|
' Norwegian Bokm\xe5l (nb)\n'
|
||||||
|
' %s\n'
|
||||||
|
' Dutch (nl)\n'
|
||||||
|
' %s\n'
|
||||||
|
' Portuguese, Brazil (pt_BR)\n'
|
||||||
|
' %s\n'
|
||||||
|
' Russian (ru)\n'
|
||||||
|
' %s\n'
|
||||||
|
'\n'
|
||||||
|
'Documentation\n'
|
||||||
|
' %s\n'
|
||||||
'\n'
|
'\n'
|
||||||
'Built With\n'
|
'Built With\n'
|
||||||
' Python: http://www.python.org/\n'
|
' Python: http://www.python.org/\n'
|
||||||
|
@ -155,31 +203,42 @@ class Ui_AboutDialog(object):
|
||||||
' God our Father, for sending His Son to die\n'
|
' God our Father, for sending His Son to die\n'
|
||||||
' on the cross, setting us free from sin. We\n'
|
' on the cross, setting us free from sin. We\n'
|
||||||
' bring this software to you for free because\n'
|
' bring this software to you for free because\n'
|
||||||
' He has set us free.'
|
' He has set us free.')) % (lead, u'\n '.join(developers),
|
||||||
))
|
u'\n '.join(contributors), u'\n '.join(testers),
|
||||||
|
u'\n '.join(packagers), u'\n '.join(translators[u'af']),
|
||||||
|
u'\n '.join(translators[u'de']),
|
||||||
|
u'\n '.join(translators[u'en_GB']),
|
||||||
|
u'\n '.join(translators[u'en_ZA']),
|
||||||
|
u'\n '.join(translators[u'et']),
|
||||||
|
u'\n '.join(translators[u'fr']),
|
||||||
|
u'\n '.join(translators[u'hu']),
|
||||||
|
u'\n '.join(translators[u'ja']),
|
||||||
|
u'\n '.join(translators[u'nb']),
|
||||||
|
u'\n '.join(translators[u'nl']),
|
||||||
|
u'\n '.join(translators[u'pt_BR']),
|
||||||
|
u'\n '.join(translators[u'ru']),
|
||||||
|
u'\n '.join(documentors)))
|
||||||
self.aboutNotebook.setTabText(
|
self.aboutNotebook.setTabText(
|
||||||
self.aboutNotebook.indexOf(self.creditsTab),
|
self.aboutNotebook.indexOf(self.creditsTab),
|
||||||
translate('OpenLP.AboutForm', 'Credits'))
|
translate('OpenLP.AboutForm', 'Credits'))
|
||||||
self.licenseTextEdit.setPlainText(translate('OpenLP.AboutForm',
|
copyright = translate('OpenLP.AboutForm',
|
||||||
'Copyright \xa9 2004-2011 Raoul Snyman\n'
|
'Copyright \xa9 2004-2011 Raoul Snyman\n'
|
||||||
'Portions copyright \xa9 2004-2011 '
|
'Portions copyright \xa9 2004-2011 '
|
||||||
'Tim Bentley, Jonathan Corwin, Michael Gorven, Scott Guerrieri,\n'
|
'Tim Bentley, Jonathan Corwin, Michael Gorven, Scott Guerrieri,\n'
|
||||||
'Meinert Jordan, Andreas Preikschat, Christian Richter, Philip\n'
|
'Meinert Jordan, Andreas Preikschat, Christian Richter, Philip\n'
|
||||||
'Ridout, Maikel Stuivenberg, Martin Thompson, Jon Tibble, Carstenn'
|
'Ridout, Maikel Stuivenberg, Martin Thompson, Jon Tibble, Carsten\n'
|
||||||
'Tinggaard, Frode Woldsund\n'
|
'Tinggaard, Frode Woldsund')
|
||||||
'\n'
|
licence = translate('OpenLP.AboutForm',
|
||||||
'This program is free software; you can redistribute it and/or '
|
'This program is free software; you can redistribute it and/or '
|
||||||
'modify it under the terms of the GNU General Public License as '
|
'modify it under the terms of the GNU General Public License as '
|
||||||
'published by the Free Software Foundation; version 2 of the '
|
'published by the Free Software Foundation; version 2 of the '
|
||||||
'License.\n'
|
'License.')
|
||||||
'\n'
|
disclaimer = translate('OpenLP.AboutForm',
|
||||||
'This program is distributed in the hope that it will be useful, '
|
'This program is distributed in the hope that it will be useful, '
|
||||||
'but WITHOUT ANY WARRANTY; without even the implied warranty of '
|
'but WITHOUT ANY WARRANTY; without even the implied warranty of '
|
||||||
'MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See below '
|
'MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See below '
|
||||||
'for more details.\n'
|
'for more details.')
|
||||||
'\n'
|
gpltext = ('GNU GENERAL PUBLIC LICENSE\n'
|
||||||
'\n'
|
|
||||||
'GNU GENERAL PUBLIC LICENSE\n'
|
|
||||||
'Version 2, June 1991\n'
|
'Version 2, June 1991\n'
|
||||||
'\n'
|
'\n'
|
||||||
'Copyright (C) 1989, 1991 Free Software Foundation, Inc., 51 '
|
'Copyright (C) 1989, 1991 Free Software Foundation, Inc., 51 '
|
||||||
|
@ -549,7 +608,9 @@ class Ui_AboutDialog(object):
|
||||||
'subroutine library, you may consider it more useful to permit '
|
'subroutine library, you may consider it more useful to permit '
|
||||||
'linking proprietary applications with the library. If this is '
|
'linking proprietary applications with the library. If this is '
|
||||||
'what you want to do, use the GNU Lesser General Public License '
|
'what you want to do, use the GNU Lesser General Public License '
|
||||||
'instead of this License.'))
|
'instead of this License.')
|
||||||
|
self.licenseTextEdit.setPlainText(u'%s\n\n%s\n\n%s\n\n\n%s' %
|
||||||
|
(copyright, licence, disclaimer, gpltext))
|
||||||
self.aboutNotebook.setTabText(
|
self.aboutNotebook.setTabText(
|
||||||
self.aboutNotebook.indexOf(self.licenseTab),
|
self.aboutNotebook.indexOf(self.licenseTab),
|
||||||
translate('OpenLP.AboutForm', 'License'))
|
translate('OpenLP.AboutForm', 'License'))
|
||||||
|
|