forked from openlp/openlp
WE HAVE OUR FIRST INTEGRATING PLUGIN!!
bzr-revno: 144
This commit is contained in:
parent
aa55cd9af3
commit
dbec7d75b3
@ -1,7 +1,7 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE UserProject SYSTEM "UserProject-4.0.dtd">
|
<!DOCTYPE UserProject SYSTEM "UserProject-4.0.dtd">
|
||||||
<!-- eric4 user project file for project openlp.org 2.0 -->
|
<!-- eric4 user project file for project openlp.org 2.0 -->
|
||||||
<!-- Saved: 2008-11-29, 07:33:22 -->
|
<!-- Saved: 2008-11-30, 20:32:44 -->
|
||||||
<!-- Copyright (C) 2008 Raoul Snyman, raoulsnyman@openlp.org -->
|
<!-- Copyright (C) 2008 Raoul Snyman, raoulsnyman@openlp.org -->
|
||||||
<UserProject version="4.0">
|
<UserProject version="4.0">
|
||||||
</UserProject>
|
</UserProject>
|
@ -1,7 +1,7 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE Tasks SYSTEM "Tasks-4.2.dtd">
|
<!DOCTYPE Tasks SYSTEM "Tasks-4.2.dtd">
|
||||||
<!-- eric4 tasks file for project openlp.org 2.0 -->
|
<!-- eric4 tasks file for project openlp.org 2.0 -->
|
||||||
<!-- Saved: 2008-11-29, 07:33:22 -->
|
<!-- Saved: 2008-11-30, 20:32:44 -->
|
||||||
<Tasks version="4.2">
|
<Tasks version="4.2">
|
||||||
<Task priority="1" completed="False" bugfix="False">
|
<Task priority="1" completed="False" bugfix="False">
|
||||||
<Summary>TODO: what is the tags for bridge, pre-chorus?</Summary>
|
<Summary>TODO: what is the tags for bridge, pre-chorus?</Summary>
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE Project SYSTEM "Project-4.4.dtd">
|
<!DOCTYPE Project SYSTEM "Project-4.4.dtd">
|
||||||
<!-- eric4 project file for project openlp.org 2.0 -->
|
<!-- eric4 project file for project openlp.org 2.0 -->
|
||||||
<!-- Saved: 2008-11-28, 23:40:29 -->
|
<!-- Saved: 2008-11-30, 20:32:44 -->
|
||||||
<!-- Copyright (C) 2008 Raoul Snyman, raoulsnyman@openlp.org -->
|
<!-- Copyright (C) 2008 Raoul Snyman, raoulsnyman@openlp.org -->
|
||||||
<Project version="4.4">
|
<Project version="4.4">
|
||||||
<ProgLanguage mixed="0">Python</ProgLanguage>
|
<ProgLanguage mixed="0">Python</ProgLanguage>
|
||||||
@ -73,7 +73,9 @@
|
|||||||
<Source>openlp/plugins/biblemanager/bibleCSVImpl.py</Source>
|
<Source>openlp/plugins/biblemanager/bibleCSVImpl.py</Source>
|
||||||
<Source>openlp/plugins/biblemanager/bibleCommon.py</Source>
|
<Source>openlp/plugins/biblemanager/bibleCommon.py</Source>
|
||||||
<Source>openlp/plugins/biblemanager/bibleManager.py</Source>
|
<Source>openlp/plugins/biblemanager/bibleManager.py</Source>
|
||||||
<Source>resources/__init__.py</Source>
|
<Source>openlp/plugins/biblemanager/forms/__init__.py</Source>
|
||||||
|
<Source>openlp/plugins/biblemanager/forms/bibleimportdialog.py</Source>
|
||||||
|
<Source>openlp/plugins/biblemanager/forms/bibleimportform.py</Source>
|
||||||
</Sources>
|
</Sources>
|
||||||
<Forms>
|
<Forms>
|
||||||
<Form>resources/forms/bibleimport.ui</Form>
|
<Form>resources/forms/bibleimport.ui</Form>
|
||||||
|
@ -66,6 +66,9 @@ class MediaManagerItem(QtGui.QWidget):
|
|||||||
"""
|
"""
|
||||||
if self.Toolbar is None:
|
if self.Toolbar is None:
|
||||||
self.addToolbar()
|
self.addToolbar()
|
||||||
|
if item.__class__.__name__ == 'QSpacerItem':
|
||||||
|
self.ToolbarLayout.addSpacerItem(item)
|
||||||
|
else:
|
||||||
self.ToolbarLayout.addWidget(item)
|
self.ToolbarLayout.addWidget(item)
|
||||||
|
|
||||||
def addToolbarButton(self, title, tooltip, icon, slot=None, objectname=None):
|
def addToolbarButton(self, title, tooltip, icon, slot=None, objectname=None):
|
||||||
@ -73,8 +76,9 @@ class MediaManagerItem(QtGui.QWidget):
|
|||||||
A method to help developers easily add a button to the toolbar.
|
A method to help developers easily add a button to the toolbar.
|
||||||
"""
|
"""
|
||||||
ToolbarButton = QtGui.QToolButton(self.Toolbar)
|
ToolbarButton = QtGui.QToolButton(self.Toolbar)
|
||||||
ToolbarButton.setText(QtCore.QObject.trUtf8(title))
|
ToolbarButton.setText(QtCore.QObject.trUtf8(ToolbarButton, title))
|
||||||
ToolbarButton.setToolTip(QtCore.QObject.trUtf8(tooltip))
|
ToolbarButton.setToolTip(QtCore.QObject.trUtf8(ToolbarButton, tooltip))
|
||||||
|
self.addToolbarItem(ToolbarButton)
|
||||||
if type(icon) is QtGui.QIcon:
|
if type(icon) is QtGui.QIcon:
|
||||||
ButtonIcon = icon
|
ButtonIcon = icon
|
||||||
elif type(icon) is types.StringType:
|
elif type(icon) is types.StringType:
|
||||||
@ -88,11 +92,11 @@ class MediaManagerItem(QtGui.QWidget):
|
|||||||
ToolbarButton.setIcon(ButtonIcon)
|
ToolbarButton.setIcon(ButtonIcon)
|
||||||
ToolbarButton.setIconSize(QtCore.QSize(20, 20))
|
ToolbarButton.setIconSize(QtCore.QSize(20, 20))
|
||||||
ToolbarButton.setAutoRaise(True)
|
ToolbarButton.setAutoRaise(True)
|
||||||
|
ToolbarButton.setMinimumSize(QtCore.QSize(20, 20))
|
||||||
if objectname is not None:
|
if objectname is not None:
|
||||||
ToolbarButton.setObjectName(objectname)
|
ToolbarButton.setObjectName(objectname)
|
||||||
if slot is not None:
|
if slot is not None:
|
||||||
QtCore.QObject.connect(ToolbarButton, QtCore.SIGNAL("clicked()"), slot)
|
QtCore.QObject.connect(ToolbarButton, QtCore.SIGNAL("clicked()"), slot)
|
||||||
self.addToolbarItem(ToolbarButton)
|
|
||||||
|
|
||||||
def addToolbarLine(self):
|
def addToolbarLine(self):
|
||||||
ToolbarLine = QtGui.QFrame(self.Toolbar)
|
ToolbarLine = QtGui.QFrame(self.Toolbar)
|
||||||
|
@ -69,7 +69,7 @@ class Plugin(object):
|
|||||||
else:
|
else:
|
||||||
self.Name = 'Plugin'
|
self.Name = 'Plugin'
|
||||||
if version is not None:
|
if version is not None:
|
||||||
self.__version__ = version
|
self.Version = version
|
||||||
self.MediaManagerItem = None
|
self.MediaManagerItem = None
|
||||||
self.SettingsTab = None
|
self.SettingsTab = None
|
||||||
self.ImportMenuItem = None
|
self.ImportMenuItem = None
|
||||||
@ -113,3 +113,6 @@ class Plugin(object):
|
|||||||
Handle the event contained in the event object.
|
Handle the event contained in the event object.
|
||||||
"""
|
"""
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
def getName(self):
|
||||||
|
return self.Name
|
||||||
|
@ -72,14 +72,16 @@ class PluginManager(object):
|
|||||||
self.plugins = Plugin.__subclasses__()
|
self.plugins = Plugin.__subclasses__()
|
||||||
self.plugin_by_name = {}
|
self.plugin_by_name = {}
|
||||||
for p in self.plugins:
|
for p in self.plugins:
|
||||||
self.plugin_by_name[p.Name] = p;
|
plugin = p()
|
||||||
|
self.plugin_by_name[plugin.Name] = plugin;
|
||||||
|
|
||||||
def hook_media_manager(self, MediaToolBox):
|
def hook_media_manager(self, MediaToolBox):
|
||||||
"""
|
"""
|
||||||
Loop through all the plugins. If a plugin has a valid media manager item,
|
Loop through all the plugins. If a plugin has a valid media manager item,
|
||||||
add it to the media manager.
|
add it to the media manager.
|
||||||
"""
|
"""
|
||||||
for plugin in self.plugins:
|
for pname in self.plugin_by_name:
|
||||||
|
plugin = self.plugin_by_name[pname]
|
||||||
if plugin.MediaManagerItem is not None:
|
if plugin.MediaManagerItem is not None:
|
||||||
log.debug('Inserting media manager item from %s' % plugin.Name)
|
log.debug('Inserting media manager item from %s' % plugin.Name)
|
||||||
MediaToolBox.addItem(plugin.MediaManagerItem, plugin.Icon, plugin.Name)
|
MediaToolBox.addItem(plugin.MediaManagerItem, plugin.Icon, plugin.Name)
|
||||||
|
@ -18,7 +18,10 @@ this program; if not, write to the Free Software Foundation, Inc., 59 Temple
|
|||||||
Place, Suite 330, Boston, MA 02111-1307 USA
|
Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from openlp.core.ui.mainwindow import MainWindow
|
from splashscreen import SplashScreen
|
||||||
from openlp.core.ui.splashscreen import SplashScreen
|
from about import AboutForm
|
||||||
|
from alertform import AlertForm
|
||||||
|
from settings import SettingsDialog
|
||||||
|
from mainwindow import MainWindow
|
||||||
|
|
||||||
__all__ = ['MainWindow', 'SplashScreen']
|
__all__ = ['SplashScreen', 'AboutForm', 'AlertForm', 'SettingsDialog', 'MainWindow']
|
||||||
|
@ -22,25 +22,18 @@ from time import sleep
|
|||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
|
|
||||||
from openlp.core.resources import *
|
from openlp.core.resources import *
|
||||||
from openlp.core.ui.about import AboutForm
|
from openlp.core.ui import AboutForm, AlertForm, SettingsDialog
|
||||||
from openlp.core.ui.alertform import AlertForm
|
|
||||||
from openlp.core.ui.settings import SettingsDialog
|
|
||||||
from openlp.core import Plugin, PluginManager, MediaManagerItem, SettingsTab
|
from openlp.core import Plugin, PluginManager, MediaManagerItem, SettingsTab
|
||||||
|
|
||||||
class MainWindow(object):
|
class MainWindow(object):
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.main_window = QtGui.QMainWindow()
|
self.main_window = QtGui.QMainWindow()
|
||||||
self.setupUi()
|
|
||||||
self.about_form = AboutForm()
|
self.about_form = AboutForm()
|
||||||
self.alert_form = AlertForm()
|
self.alert_form = AlertForm()
|
||||||
#self.edit_song_form = EditSongForm()
|
|
||||||
#self.openlpexportform = OpenLPExportForm()
|
|
||||||
#self.openlpimportform = OpenLPImportForm()
|
|
||||||
#self.opensongexportform = OpenSongExportForm()
|
|
||||||
#self.opensongimportform = OpenSongImportForm()
|
|
||||||
self.settings_form = SettingsDialog()
|
self.settings_form = SettingsDialog()
|
||||||
self.plugin_manager = PluginManager('/home/raoul/Projects/openlp-2/openlp/plugins')
|
self.plugin_manager = PluginManager('/home/raoul/Projects/openlp-2/openlp/plugins')
|
||||||
|
self.setupUi()
|
||||||
|
|
||||||
def setupUi(self):
|
def setupUi(self):
|
||||||
self.main_window.setObjectName("main_window")
|
self.main_window.setObjectName("main_window")
|
||||||
@ -149,6 +142,7 @@ class MainWindow(object):
|
|||||||
self.MediaManagerDock.setWindowIcon(icon)
|
self.MediaManagerDock.setWindowIcon(icon)
|
||||||
self.MediaManagerDock.setFloating(False)
|
self.MediaManagerDock.setFloating(False)
|
||||||
self.MediaManagerDock.setObjectName("MediaManagerDock")
|
self.MediaManagerDock.setObjectName("MediaManagerDock")
|
||||||
|
self.MediaManagerDock.setMinimumWidth(250)
|
||||||
self.MediaManagerContents = QtGui.QWidget()
|
self.MediaManagerContents = QtGui.QWidget()
|
||||||
sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding)
|
sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding)
|
||||||
sizePolicy.setHorizontalStretch(0)
|
sizePolicy.setHorizontalStretch(0)
|
||||||
@ -164,6 +158,8 @@ class MainWindow(object):
|
|||||||
self.MediaToolBox.setObjectName("MediaToolBox")
|
self.MediaToolBox.setObjectName("MediaToolBox")
|
||||||
# This is where we will eventually get the Plugin Manager to pull in
|
# This is where we will eventually get the Plugin Manager to pull in
|
||||||
# the media manager items.
|
# the media manager items.
|
||||||
|
self.plugin_manager.hook_media_manager(self.MediaToolBox)
|
||||||
|
# End adding media manager items.
|
||||||
self.MediaManagerLayout.addWidget(self.MediaToolBox)
|
self.MediaManagerLayout.addWidget(self.MediaToolBox)
|
||||||
self.MediaManagerDock.setWidget(self.MediaManagerContents)
|
self.MediaManagerDock.setWidget(self.MediaManagerContents)
|
||||||
self.main_window.addDockWidget(QtCore.Qt.DockWidgetArea(1), self.MediaManagerDock)
|
self.main_window.addDockWidget(QtCore.Qt.DockWidgetArea(1), self.MediaManagerDock)
|
||||||
|
@ -1,3 +1,5 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# vim: autoindent shiftwidth=4 expandtab textwidth=80 tabstop=4 softtabstop=4
|
||||||
"""
|
"""
|
||||||
OpenLP - Open Source Lyrics Projection
|
OpenLP - Open Source Lyrics Projection
|
||||||
Copyright (c) 2008 Raoul Snyman
|
Copyright (c) 2008 Raoul Snyman
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
# vim: autoindent shiftwidth=4 expandtab textwidth=80
|
# vim: autoindent shiftwidth=4 expandtab textwidth=80 tabstop=4 softtabstop=4
|
||||||
"""
|
"""
|
||||||
OpenLP - Open Source Lyrics Projection
|
OpenLP - Open Source Lyrics Projection
|
||||||
Copyright (c) 2008 Raoul Snyman
|
Copyright (c) 2008 Raoul Snyman
|
||||||
@ -22,8 +22,8 @@ from PyQt4 import QtCore, QtGui
|
|||||||
from openlp.core.resources import *
|
from openlp.core.resources import *
|
||||||
from openlp.core import Plugin
|
from openlp.core import Plugin
|
||||||
|
|
||||||
from openlp.plugins.biblemanager.biblemanager import BibleManager
|
from biblemanager import BibleManager
|
||||||
from openlp.plugins.biblemanager.bibleimportform import BibleImportForm
|
from bibleimportform import BibleImportForm
|
||||||
|
|
||||||
class BiblePlugin(Plugin):
|
class BiblePlugin(Plugin):
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
@ -78,5 +78,3 @@ class BiblePlugin(Plugin):
|
|||||||
|
|
||||||
def onBibleAddClick(self):
|
def onBibleAddClick(self):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
s
|
|
||||||
|
@ -25,7 +25,7 @@ from openlp.core import Plugin, MediaManagerItem
|
|||||||
class SongsPlugin(Plugin):
|
class SongsPlugin(Plugin):
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
# Call the parent constructor
|
# Call the parent constructor
|
||||||
Plugin.__init__(self, 'Song', '1.9.0')
|
Plugin.__init__(self, 'Songs', '1.9.0')
|
||||||
# Create the plugin icon
|
# Create the plugin icon
|
||||||
self.Icon = QtGui.QIcon()
|
self.Icon = QtGui.QIcon()
|
||||||
self.Icon.addPixmap(QtGui.QPixmap(':/media/media_song.png'),
|
self.Icon.addPixmap(QtGui.QPixmap(':/media/media_song.png'),
|
||||||
@ -61,11 +61,11 @@ class SongsPlugin(Plugin):
|
|||||||
QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
|
QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
|
||||||
self.MediaManagerItem.addToolbarItem(self.SongSpacerItem)
|
self.MediaManagerItem.addToolbarItem(self.SongSpacerItem)
|
||||||
# Add the songlist widget
|
# Add the songlist widget
|
||||||
self.SongList = QtGui.QTableWidget(self.MediaManagerItem)
|
#self.SongList = QtGui.QTableWidget(self.MediaManagerItem)
|
||||||
self.SongList.setObjectName("SongList")
|
#self.SongList.setObjectName("SongList")
|
||||||
self.SongList.setColumnCount(0)
|
#self.SongList.setColumnCount(0)
|
||||||
self.SongList.setRowCount(0)
|
#self.SongList.setRowCount(0)
|
||||||
self.MediaManagerItem.PageLayout.addWidget(self.SongList)
|
#self.MediaManagerItem.PageLayout.addWidget(self.SongList)
|
||||||
|
|
||||||
def onSongNewClick(self):
|
def onSongNewClick(self):
|
||||||
pass
|
pass
|
||||||
|
Loading…
Reference in New Issue
Block a user