diff --git a/openlp/core/lib/ui.py b/openlp/core/lib/ui.py index 44bf7c0dd..a298d803b 100644 --- a/openlp/core/lib/ui.py +++ b/openlp/core/lib/ui.py @@ -31,7 +31,7 @@ import logging from PyQt4 import QtCore, QtGui from openlp.core.lib import build_icon, Receiver, translate -from openlp.core.utils.actions import actionList +from openlp.core.utils.actions import ActionList log = logging.getLogger(__name__) @@ -251,7 +251,7 @@ def base_action(parent, name, category=None): action = QtGui.QAction(parent) action.setObjectName(name) if category is not None: - actionList.add_action(action, category) + ActionList.add_action(action, category) return action def checkable_action(parent, name, checked=None, category=None): diff --git a/openlp/core/ui/servicemanager.py b/openlp/core/ui/servicemanager.py index 1d5321e01..4bdd647ed 100644 --- a/openlp/core/ui/servicemanager.py +++ b/openlp/core/ui/servicemanager.py @@ -40,7 +40,7 @@ from openlp.core.ui import ServiceNoteForm, ServiceItemEditForm, StartTimeForm from openlp.core.ui.printserviceform import PrintServiceForm from openlp.core.utils import AppLocation, delete_file, file_is_unicode, \ split_filename -from openlp.core.utils.actions import actionList +from openlp.core.utils.actions import ActionList class ServiceManagerList(QtGui.QTreeWidget): """ @@ -316,15 +316,15 @@ class ServiceManager(QtGui.QWidget): self.configUpdated() def setServiceHotkeys(self): - actionList.add_action(self.serviceManagerList.moveDown, u'Service') - actionList.add_action(self.serviceManagerList.moveUp, u'Service') - actionList.add_action(self.serviceManagerList.moveTop, u'Service') - actionList.add_action(self.serviceManagerList.moveBottom, u'Service') - actionList.add_action(self.serviceManagerList.makeLive, u'Service') - actionList.add_action(self.serviceManagerList.up, u'Service') - actionList.add_action(self.serviceManagerList.down, u'Service') - actionList.add_action(self.serviceManagerList.expand, u'Service') - actionList.add_action(self.serviceManagerList.collapse, u'Service') + ActionList.add_action(self.serviceManagerList.moveDown, u'Service') + ActionList.add_action(self.serviceManagerList.moveUp, u'Service') + ActionList.add_action(self.serviceManagerList.moveTop, u'Service') + ActionList.add_action(self.serviceManagerList.moveBottom, u'Service') + ActionList.add_action(self.serviceManagerList.makeLive, u'Service') + ActionList.add_action(self.serviceManagerList.up, u'Service') + ActionList.add_action(self.serviceManagerList.down, u'Service') + ActionList.add_action(self.serviceManagerList.expand, u'Service') + ActionList.add_action(self.serviceManagerList.collapse, u'Service') def setModified(self, modified=True): diff --git a/openlp/core/ui/shortcutlistform.py b/openlp/core/ui/shortcutlistform.py index 97d21bebf..8ba78a876 100644 --- a/openlp/core/ui/shortcutlistform.py +++ b/openlp/core/ui/shortcutlistform.py @@ -30,7 +30,7 @@ import re from PyQt4 import QtCore, QtGui from openlp.core.utils import translate -from openlp.core.utils.actions import actionList +from openlp.core.utils.actions import ActionList from shortcutlistdialog import Ui_ShortcutListDialog REMOVE_AMPERSAND = re.compile(r'&{1}') @@ -96,7 +96,7 @@ class ShortcutListForm(QtGui.QDialog, Ui_ShortcutListDialog): """ self.assingedShortcuts = [] self.treeWidget.clear() - for category in actionList.categories: + for category in ActionList.categories: item = QtGui.QTreeWidgetItem([category.name]) for action in category.actions: self.assingedShortcuts.extend(action.shortcuts()) @@ -172,7 +172,7 @@ class ShortcutListForm(QtGui.QDialog, Ui_ShortcutListDialog): """ settings = QtCore.QSettings() settings.beginGroup(u'shortcuts') - for category in actionList.categories: + for category in ActionList.categories: for action in category.actions: settings.setValue( action.objectName(), QtCore.QVariant(action.shortcuts())) diff --git a/openlp/core/ui/slidecontroller.py b/openlp/core/ui/slidecontroller.py index cafbec198..bc478463c 100644 --- a/openlp/core/ui/slidecontroller.py +++ b/openlp/core/ui/slidecontroller.py @@ -34,7 +34,7 @@ from openlp.core.lib import OpenLPToolbar, Receiver, resize_image, \ ItemCapabilities, translate from openlp.core.lib.ui import icon_action, UiStrings, shortcut_action from openlp.core.ui import HideMode, MainDisplay -from openlp.core.utils.actions import actionList +from openlp.core.utils.actions import ActionList log = logging.getLogger(__name__) @@ -364,18 +364,18 @@ class SlideController(QtGui.QWidget): def setPreviewHotkeys(self, parent=None): self.previousItem.setShortcuts([QtCore.Qt.Key_Up, 0]) - actionList.add_action(self.previousItem, u'Preview Toolbar') + ActionList.add_action(self.previousItem, u'Preview Toolbar') self.nextItem.setShortcuts([QtCore.Qt.Key_Down, 0]) - actionList.add_action(self.nextItem, u'Preview Toolbar') + ActionList.add_action(self.nextItem, u'Preview Toolbar') def setLiveHotkeys(self, parent=None): self.previousItem.setShortcuts([QtCore.Qt.Key_Up, QtCore.Qt.Key_PageUp]) self.previousItem.setShortcutContext( QtCore.Qt.WidgetWithChildrenShortcut) - actionList.add_action(self.previousItem, u'Live Toolbar') + ActionList.add_action(self.previousItem, u'Live Toolbar') self.nextItem.setShortcuts([QtCore.Qt.Key_Down, QtCore.Qt.Key_PageDown]) self.nextItem.setShortcutContext(QtCore.Qt.WidgetWithChildrenShortcut) - actionList.add_action(self.nextItem, u'Live Toolbar') + ActionList.add_action(self.nextItem, u'Live Toolbar') self.previousService = shortcut_action(parent, translate('OpenLP.SlideController', 'Previous Service'), [QtCore.Qt.Key_Left, 0], self.servicePrevious, u'Live Toolbar') diff --git a/openlp/core/utils/actions.py b/openlp/core/utils/actions.py index 6b7df6817..e71aee672 100644 --- a/openlp/core/utils/actions.py +++ b/openlp/core/utils/actions.py @@ -183,17 +183,17 @@ class ActionList(object): has a weight by which it is sorted when iterating through the list of actions or categories. """ - def __init__(self): - self.categories = CategoryList() + categories = CategoryList() - def add_action(self, action, category, weight=None): - if category not in self.categories: - self.categories.append(category) + @staticmethod + def add_action(action, category, weight=None): + if category not in ActionList.categories: + ActionList.categories.append(category) action.defaultShortcuts = action.shortcuts() if weight is None: - self.categories[category].actions.append(action) + ActionList.categories[category].actions.append(action) else: - self.categories[category].actions.add(action, weight) + ActionList.categories[category].actions.add(action, weight) # Load the shortcut from the config. settings = QtCore.QSettings() settings.beginGroup(u'shortcuts') @@ -203,9 +203,8 @@ class ActionList(object): [QtGui.QKeySequence(shortcut) for shortcut in shortcuts]) settings.endGroup() - def remove_action(self, action, category): - if category not in self.categories: + @staticmethod + def remove_action(action, category): + if category not in ActionList.categories: return - self.categories[category].actions.remove(action) - -actionList = ActionList() + ActionList.categories[category].actions.remove(action) diff --git a/openlp/plugins/alerts/alertsplugin.py b/openlp/plugins/alerts/alertsplugin.py index a10d56a20..45e1969f4 100644 --- a/openlp/plugins/alerts/alertsplugin.py +++ b/openlp/plugins/alerts/alertsplugin.py @@ -31,7 +31,7 @@ from PyQt4 import QtCore, QtGui from openlp.core.lib import Plugin, StringContent, build_icon, translate from openlp.core.lib.db import Manager from openlp.core.lib.ui import icon_action -from openlp.core.utils.actions import actionList +from openlp.core.utils.actions import ActionList from openlp.plugins.alerts.lib import AlertsManager, AlertsTab from openlp.plugins.alerts.lib.db import init_schema from openlp.plugins.alerts.forms import AlertForm @@ -75,7 +75,7 @@ class AlertsPlugin(Plugin): log.info(u'Alerts Initialising') Plugin.initialise(self) self.toolsAlertItem.setVisible(True) - actionList.add_action(self.toolsAlertItem, u'Tools') + ActionList.add_action(self.toolsAlertItem, u'Tools') self.liveController.alertTab = self.settings_tab def finalise(self): @@ -86,7 +86,7 @@ class AlertsPlugin(Plugin): self.manager.finalise() Plugin.finalise(self) self.toolsAlertItem.setVisible(False) - actionList.remove_action(self.toolsAlertItem, u'Tools') + ActionList.remove_action(self.toolsAlertItem, u'Tools') def toggleAlertsState(self): self.alertsActive = not self.alertsActive diff --git a/openlp/plugins/bibles/bibleplugin.py b/openlp/plugins/bibles/bibleplugin.py index 86d751e9a..1396d4550 100644 --- a/openlp/plugins/bibles/bibleplugin.py +++ b/openlp/plugins/bibles/bibleplugin.py @@ -30,7 +30,7 @@ from PyQt4 import QtCore, QtGui from openlp.core.lib import Plugin, StringContent, build_icon, translate from openlp.core.lib.ui import base_action -from openlp.core.utils.actions import actionList +from openlp.core.utils.actions import ActionList from openlp.plugins.bibles.lib import BibleManager, BiblesTab, BibleMediaItem log = logging.getLogger(__name__) @@ -52,9 +52,9 @@ class BiblePlugin(Plugin): self.manager = BibleManager(self) Plugin.initialise(self) self.importBibleItem.setVisible(True) - actionList.add_action(self.importBibleItem, u'Import') + ActionList.add_action(self.importBibleItem, u'Import') # Do not add the action to the list yet. - #actionList.add_action(self.exportBibleItem, u'Export') + #ActionList.add_action(self.exportBibleItem, u'Export') # Set to invisible until we can export bibles self.exportBibleItem.setVisible(False) diff --git a/openlp/plugins/songs/songsplugin.py b/openlp/plugins/songs/songsplugin.py index 12462428e..de0714d5e 100644 --- a/openlp/plugins/songs/songsplugin.py +++ b/openlp/plugins/songs/songsplugin.py @@ -34,7 +34,7 @@ from openlp.core.lib import Plugin, StringContent, build_icon, translate, \ Receiver from openlp.core.lib.db import Manager from openlp.core.lib.ui import UiStrings, base_action, icon_action -from openlp.core.utils.actions import actionList +from openlp.core.utils.actions import ActionList from openlp.plugins.songs.lib import clean_song, SongMediaItem, SongsTab from openlp.plugins.songs.lib.db import init_schema, Song from openlp.plugins.songs.lib.importer import SongFormat @@ -66,9 +66,9 @@ class SongsPlugin(Plugin): log.info(u'Songs Initialising') Plugin.initialise(self) self.toolsReindexItem.setVisible(True) - actionList.add_action(self.SongImportItem, u'Import') - actionList.add_action(self.SongExportItem, u'Export') - actionList.add_action(self.toolsReindexItem, u'Tools') + ActionList.add_action(self.SongImportItem, u'Import') + ActionList.add_action(self.SongExportItem, u'Export') + ActionList.add_action(self.toolsReindexItem, u'Tools') self.mediaItem.displayResultsSong( self.manager.get_all_objects(Song, order_by_ref=Song.search_title)) @@ -258,7 +258,7 @@ class SongsPlugin(Plugin): log.info(u'Songs Finalising') self.manager.finalise() self.toolsReindexItem.setVisible(False) - actionList.remove_action(self.SongImportItem, u'Import') - actionList.remove_action(self.SongExportItem, u'Export') - actionList.remove_action(self.toolsReindexItem, u'Tools') + ActionList.remove_action(self.SongImportItem, u'Import') + ActionList.remove_action(self.SongExportItem, u'Export') + ActionList.remove_action(self.toolsReindexItem, u'Tools') Plugin.finalise(self)