forked from openlp/openlp
finish plugin migartion and clean up main window
This commit is contained in:
parent
20dc4f81ed
commit
bcd917d360
@ -90,20 +90,18 @@ class PluginManager(RegistryBase, LogMixin, RegistryProperties):
|
|||||||
glob_pattern = os.path.join('plugins', '*', '[!.]*plugin.py')
|
glob_pattern = os.path.join('plugins', '*', '[!.]*plugin.py')
|
||||||
extension_loader(glob_pattern)
|
extension_loader(glob_pattern)
|
||||||
plugin_classes = Plugin.__subclasses__()
|
plugin_classes = Plugin.__subclasses__()
|
||||||
plugin_objects = []
|
|
||||||
for p in plugin_classes:
|
for p in plugin_classes:
|
||||||
try:
|
try:
|
||||||
plugin = p()
|
p()
|
||||||
self.log_debug('Loaded plugin {plugin}'.format(plugin=str(p)))
|
self.log_debug('Loaded plugin {plugin}'.format(plugin=str(p)))
|
||||||
plugin_objects.append(plugin)
|
|
||||||
except TypeError:
|
except TypeError:
|
||||||
self.log_exception('Failed to load plugin {plugin}'.format(plugin=str(p)))
|
self.log_exception('Failed to load plugin {plugin}'.format(plugin=str(p)))
|
||||||
|
|
||||||
def hook_media_manager(self):
|
@staticmethod
|
||||||
|
def hook_media_manager():
|
||||||
"""
|
"""
|
||||||
Create the plugins' media manager items.
|
Create the plugins' media manager items.
|
||||||
"""
|
"""
|
||||||
aa = State().list_plugins()
|
|
||||||
for plugin in State().list_plugins():
|
for plugin in State().list_plugins():
|
||||||
if plugin.status is not PluginStatus.Disabled:
|
if plugin.status is not PluginStatus.Disabled:
|
||||||
plugin.create_media_manager_item()
|
plugin.create_media_manager_item()
|
||||||
|
@ -20,12 +20,15 @@
|
|||||||
# Temple Place, Suite 330, Boston, MA 02111-1307 USA #
|
# Temple Place, Suite 330, Boston, MA 02111-1307 USA #
|
||||||
###############################################################################
|
###############################################################################
|
||||||
"""
|
"""
|
||||||
The :mod:`~openlp.core.commmon.loader` module provides a bootstrap for the common modules
|
The :mod:`~openlp.core.loader` module provides a bootstrap for the singleton classes
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from openlp.core.state import State
|
from openlp.core.state import State
|
||||||
from openlp.core.ui.media import MediaController
|
from openlp.core.ui.media import MediaController
|
||||||
from openlp.core.lib.pluginmanager import PluginManager
|
from openlp.core.lib.pluginmanager import PluginManager
|
||||||
|
from openlp.core.display.renderer import Renderer
|
||||||
|
from openlp.core.lib.imagemanager import ImageManager
|
||||||
|
from openlp.core.ui.slidecontroller import LiveController, PreviewController
|
||||||
|
|
||||||
|
|
||||||
def loader():
|
def loader():
|
||||||
@ -37,3 +40,9 @@ def loader():
|
|||||||
State().load_settings()
|
State().load_settings()
|
||||||
MediaController()
|
MediaController()
|
||||||
PluginManager()
|
PluginManager()
|
||||||
|
# Set up the path with plugins
|
||||||
|
ImageManager()
|
||||||
|
Renderer()
|
||||||
|
# Create slide controllers
|
||||||
|
PreviewController()
|
||||||
|
LiveController()
|
||||||
|
@ -41,11 +41,8 @@ from openlp.core.common.mixins import LogMixin, RegistryProperties
|
|||||||
from openlp.core.common.path import Path, copyfile, create_paths
|
from openlp.core.common.path import Path, copyfile, create_paths
|
||||||
from openlp.core.common.registry import Registry
|
from openlp.core.common.registry import Registry
|
||||||
from openlp.core.common.settings import Settings
|
from openlp.core.common.settings import Settings
|
||||||
from openlp.core.display.renderer import Renderer
|
|
||||||
from openlp.core.display.screens import ScreenList
|
from openlp.core.display.screens import ScreenList
|
||||||
from openlp.core.lib.imagemanager import ImageManager
|
|
||||||
from openlp.core.lib.plugin import PluginStatus
|
from openlp.core.lib.plugin import PluginStatus
|
||||||
from openlp.core.lib.pluginmanager import PluginManager
|
|
||||||
from openlp.core.lib.ui import create_action
|
from openlp.core.lib.ui import create_action
|
||||||
from openlp.core.projectors.manager import ProjectorManager
|
from openlp.core.projectors.manager import ProjectorManager
|
||||||
from openlp.core.ui.shortcutlistform import ShortcutListForm
|
from openlp.core.ui.shortcutlistform import ShortcutListForm
|
||||||
@ -54,7 +51,6 @@ from openlp.core.ui.thememanager import ThemeManager
|
|||||||
from openlp.core.ui.servicemanager import ServiceManager
|
from openlp.core.ui.servicemanager import ServiceManager
|
||||||
from openlp.core.ui.aboutform import AboutForm
|
from openlp.core.ui.aboutform import AboutForm
|
||||||
from openlp.core.ui.pluginform import PluginForm
|
from openlp.core.ui.pluginform import PluginForm
|
||||||
from openlp.core.ui.slidecontroller import LiveController, PreviewController
|
|
||||||
from openlp.core.ui.settingsform import SettingsForm
|
from openlp.core.ui.settingsform import SettingsForm
|
||||||
from openlp.core.ui.firsttimeform import FirstTimeForm
|
from openlp.core.ui.firsttimeform import FirstTimeForm
|
||||||
from openlp.core.ui.printserviceform import PrintServiceForm
|
from openlp.core.ui.printserviceform import PrintServiceForm
|
||||||
@ -89,9 +85,6 @@ class Ui_MainWindow(object):
|
|||||||
self.control_splitter.setOrientation(QtCore.Qt.Horizontal)
|
self.control_splitter.setOrientation(QtCore.Qt.Horizontal)
|
||||||
self.control_splitter.setObjectName('control_splitter')
|
self.control_splitter.setObjectName('control_splitter')
|
||||||
self.main_content_layout.addWidget(self.control_splitter)
|
self.main_content_layout.addWidget(self.control_splitter)
|
||||||
# Create slide controllers
|
|
||||||
PreviewController(self)
|
|
||||||
LiveController(self)
|
|
||||||
preview_visible = Settings().value('user interface/preview panel')
|
preview_visible = Settings().value('user interface/preview panel')
|
||||||
live_visible = Settings().value('user interface/live panel')
|
live_visible = Settings().value('user interface/live panel')
|
||||||
panel_locked = Settings().value('user interface/lock panel')
|
panel_locked = Settings().value('user interface/lock panel')
|
||||||
@ -505,9 +498,6 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow, LogMixin, RegistryPropert
|
|||||||
SettingsForm(self)
|
SettingsForm(self)
|
||||||
self.formatting_tag_form = FormattingTagForm(self)
|
self.formatting_tag_form = FormattingTagForm(self)
|
||||||
self.shortcut_form = ShortcutListForm(self)
|
self.shortcut_form = ShortcutListForm(self)
|
||||||
# Set up the path with plugins
|
|
||||||
ImageManager()
|
|
||||||
Renderer()
|
|
||||||
# Set up the interface
|
# Set up the interface
|
||||||
self.setupUi(self)
|
self.setupUi(self)
|
||||||
# Define the media Dock Manager
|
# Define the media Dock Manager
|
||||||
|
@ -26,6 +26,7 @@ import logging
|
|||||||
|
|
||||||
from PyQt5 import QtCore, QtWidgets
|
from PyQt5 import QtCore, QtWidgets
|
||||||
|
|
||||||
|
from openlp.core.state import State
|
||||||
from openlp.core.common.i18n import translate
|
from openlp.core.common.i18n import translate
|
||||||
from openlp.core.common.mixins import RegistryProperties
|
from openlp.core.common.mixins import RegistryProperties
|
||||||
from openlp.core.lib.plugin import PluginStatus
|
from openlp.core.lib.plugin import PluginStatus
|
||||||
@ -62,7 +63,7 @@ class PluginForm(QtWidgets.QDialog, Ui_PluginViewDialog, RegistryProperties):
|
|||||||
self._clear_details()
|
self._clear_details()
|
||||||
self.programatic_change = True
|
self.programatic_change = True
|
||||||
plugin_list_width = 0
|
plugin_list_width = 0
|
||||||
for plugin in self.plugin_manager.plugins:
|
for plugin in State().list_plugins():
|
||||||
item = QtWidgets.QListWidgetItem(self.plugin_list_widget)
|
item = QtWidgets.QListWidgetItem(self.plugin_list_widget)
|
||||||
# We do this just to make 100% sure the status is an integer as
|
# We do this just to make 100% sure the status is an integer as
|
||||||
# sometimes when it's loaded from the config, it isn't cast to int.
|
# sometimes when it's loaded from the config, it isn't cast to int.
|
||||||
@ -116,7 +117,7 @@ class PluginForm(QtWidgets.QDialog, Ui_PluginViewDialog, RegistryProperties):
|
|||||||
return
|
return
|
||||||
plugin_name_singular = self.plugin_list_widget.currentItem().text().split('(')[0][:-1]
|
plugin_name_singular = self.plugin_list_widget.currentItem().text().split('(')[0][:-1]
|
||||||
self.active_plugin = None
|
self.active_plugin = None
|
||||||
for plugin in self.plugin_manager.plugins:
|
for plugin in State().list_plugins():
|
||||||
if plugin.name_strings['singular'] == plugin_name_singular:
|
if plugin.name_strings['singular'] == plugin_name_singular:
|
||||||
self.active_plugin = plugin
|
self.active_plugin = plugin
|
||||||
break
|
break
|
||||||
|
Loading…
Reference in New Issue
Block a user