forked from openlp/openlp
plugin 1
This commit is contained in:
parent
5e6ec9d269
commit
861e64ee83
@ -90,10 +90,10 @@ class Plugin(QtCore.QObject):
|
||||
|
||||
**Hook Functions**
|
||||
|
||||
``checkPreConditions()``
|
||||
``check_pre_conditions()``
|
||||
Provides the Plugin with a handle to check if it can be loaded.
|
||||
|
||||
``createMediaManagerItem()``
|
||||
``create_media_manager_item()``
|
||||
Creates a new instance of MediaManagerItem to be used in the Media
|
||||
Manager.
|
||||
|
||||
@ -174,7 +174,7 @@ class Plugin(QtCore.QObject):
|
||||
Registry().register_function(u'%s_add_service_item' % self.name, self.processAddServiceEvent)
|
||||
Registry().register_function(u'%s_config_updated' % self.name, self.config_update)
|
||||
|
||||
def checkPreConditions(self):
|
||||
def check_pre_conditions(self):
|
||||
"""
|
||||
Provides the Plugin with a handle to check if it can be loaded.
|
||||
Failing Preconditions does not stop a settings Tab being created
|
||||
@ -183,13 +183,13 @@ class Plugin(QtCore.QObject):
|
||||
"""
|
||||
return True
|
||||
|
||||
def setStatus(self):
|
||||
def set_status(self):
|
||||
"""
|
||||
Sets the status of the plugin
|
||||
"""
|
||||
self.status = Settings().value(self.settingsSection + u'/status')
|
||||
|
||||
def toggleStatus(self, new_status):
|
||||
def toggle_status(self, new_status):
|
||||
"""
|
||||
Changes the status of the plugin and remembers it
|
||||
"""
|
||||
@ -200,7 +200,7 @@ class Plugin(QtCore.QObject):
|
||||
elif new_status == PluginStatus.Inactive:
|
||||
self.finalise()
|
||||
|
||||
def isActive(self):
|
||||
def is_active(self):
|
||||
"""
|
||||
Indicates if the plugin is active
|
||||
|
||||
@ -208,7 +208,7 @@ class Plugin(QtCore.QObject):
|
||||
"""
|
||||
return self.status == PluginStatus.Active
|
||||
|
||||
def createMediaManagerItem(self):
|
||||
def create_media_manager_item(self):
|
||||
"""
|
||||
Construct a MediaManagerItem object with all the buttons and things
|
||||
you need, and return it for integration into OpenLP.
|
||||
|
@ -131,7 +131,7 @@ class PluginManager(object):
|
||||
for plugin in plugins_list:
|
||||
if plugin.checkPreConditions():
|
||||
log.debug(u'Plugin %s active', unicode(plugin.name))
|
||||
plugin.setStatus()
|
||||
plugin.set_status()
|
||||
else:
|
||||
plugin.status = PluginStatus.Disabled
|
||||
self.plugins.append(plugin)
|
||||
@ -142,7 +142,7 @@ class PluginManager(object):
|
||||
"""
|
||||
for plugin in self.plugins:
|
||||
if plugin.status is not PluginStatus.Disabled:
|
||||
plugin.createMediaManagerItem()
|
||||
plugin.create_media_manager_item()
|
||||
|
||||
def hook_settings_tabs(self):
|
||||
"""
|
||||
@ -190,8 +190,8 @@ class PluginManager(object):
|
||||
"""
|
||||
log.info(u'Initialise Plugins - Started')
|
||||
for plugin in self.plugins:
|
||||
log.info(u'initialising plugins %s in a %s state' % (plugin.name, plugin.isActive()))
|
||||
if plugin.isActive():
|
||||
log.info(u'initialising plugins %s in a %s state' % (plugin.name, plugin.is_active()))
|
||||
if plugin.is_active():
|
||||
plugin.initialise()
|
||||
log.info(u'Initialisation Complete for %s ' % plugin.name)
|
||||
log.info(u'Initialise Plugins - Finished')
|
||||
@ -203,7 +203,7 @@ class PluginManager(object):
|
||||
"""
|
||||
log.info(u'finalising plugins')
|
||||
for plugin in self.plugins:
|
||||
if plugin.isActive():
|
||||
if plugin.is_active():
|
||||
plugin.finalise()
|
||||
log.info(u'Finalisation Complete for %s ' % plugin.name)
|
||||
|
||||
@ -222,7 +222,7 @@ class PluginManager(object):
|
||||
"""
|
||||
log.info(u'plugins - new service created')
|
||||
for plugin in self.plugins:
|
||||
if plugin.isActive():
|
||||
if plugin.is_active():
|
||||
plugin.new_service_created()
|
||||
|
||||
def _get_settings_form(self):
|
||||
|
@ -607,7 +607,7 @@ class MainWindow(QtGui.QMainWindow, Ui_MainWindow):
|
||||
"""
|
||||
self.application.process_events()
|
||||
for plugin in self.plugin_manager.plugins:
|
||||
if plugin.isActive():
|
||||
if plugin.is_active():
|
||||
plugin.app_startup()
|
||||
self.application.process_events()
|
||||
|
||||
@ -654,10 +654,10 @@ class MainWindow(QtGui.QMainWindow, Ui_MainWindow):
|
||||
self.activePlugin.setStatus()
|
||||
if oldStatus != self.activePlugin.status:
|
||||
if self.activePlugin.status == PluginStatus.Active:
|
||||
self.activePlugin.toggleStatus(PluginStatus.Active)
|
||||
self.activePlugin.toggle_status(PluginStatus.Active)
|
||||
self.activePlugin.app_startup()
|
||||
else:
|
||||
self.activePlugin.toggleStatus(PluginStatus.Inactive)
|
||||
self.activePlugin.toggle_status(PluginStatus.Inactive)
|
||||
# Set global theme and
|
||||
Registry().execute(u'theme_update_global', self.theme_manager_contents.global_theme)
|
||||
self.theme_manager_contents.load_first_time_themes()
|
||||
|
@ -127,7 +127,7 @@ class MediaController(object):
|
||||
"""
|
||||
saved_players = get_media_players()[0]
|
||||
for player in self.media_players.keys():
|
||||
self.media_players[player].isActive = player in saved_players
|
||||
self.media_players[player].is_active = player in saved_players
|
||||
|
||||
def _generate_extensions_lists(self):
|
||||
"""
|
||||
@ -135,14 +135,14 @@ class MediaController(object):
|
||||
"""
|
||||
self.audio_extensions_list = []
|
||||
for player in self.media_players.values():
|
||||
if player.isActive:
|
||||
if player.is_active:
|
||||
for item in player.audio_extensions_list:
|
||||
if not item in self.audio_extensions_list:
|
||||
self.audio_extensions_list.append(item)
|
||||
self.service_manager.supported_suffixes(item[2:])
|
||||
self.video_extensions_list = []
|
||||
for player in self.media_players.values():
|
||||
if player.isActive:
|
||||
if player.is_active:
|
||||
for item in player.video_extensions_list:
|
||||
if item not in self.video_extensions_list:
|
||||
self.video_extensions_list.extend(item)
|
||||
@ -224,7 +224,7 @@ class MediaController(object):
|
||||
"""
|
||||
css = u''
|
||||
for player in self.media_players.values():
|
||||
if player.isActive:
|
||||
if player.is_active:
|
||||
css += player.get_media_display_css()
|
||||
return css
|
||||
|
||||
@ -234,7 +234,7 @@ class MediaController(object):
|
||||
"""
|
||||
js = u''
|
||||
for player in self.media_players.values():
|
||||
if player.isActive:
|
||||
if player.is_active:
|
||||
js += player.get_media_display_javascript()
|
||||
return js
|
||||
|
||||
@ -244,7 +244,7 @@ class MediaController(object):
|
||||
"""
|
||||
html = u''
|
||||
for player in self.media_players.values():
|
||||
if player.isActive:
|
||||
if player.is_active:
|
||||
html += player.get_media_display_html()
|
||||
return html
|
||||
|
||||
@ -325,7 +325,7 @@ class MediaController(object):
|
||||
if preview:
|
||||
display.has_audio = False
|
||||
for player in self.media_players.values():
|
||||
if player.isActive:
|
||||
if player.is_active:
|
||||
player.setup(display)
|
||||
|
||||
def set_controls_visible(self, controller, value):
|
||||
|
@ -46,7 +46,7 @@ class MediaPlayer(object):
|
||||
self.parent = parent
|
||||
self.name = name
|
||||
self.available = self.check_available()
|
||||
self.isActive = False
|
||||
self.is_active = False
|
||||
self.can_background = False
|
||||
self.can_folder = False
|
||||
self.state = MediaState.Off
|
||||
|
@ -139,11 +139,11 @@ class PluginForm(QtGui.QDialog, Ui_PluginViewDialog):
|
||||
return
|
||||
if status == PluginStatus.Inactive:
|
||||
self.application.set_busy_cursor()
|
||||
self.activePlugin.toggleStatus(PluginStatus.Active)
|
||||
self.activePlugin.toggle_status(PluginStatus.Active)
|
||||
self.application.set_normal_cursor()
|
||||
self.activePlugin.app_startup()
|
||||
else:
|
||||
self.activePlugin.toggleStatus(PluginStatus.Inactive)
|
||||
self.activePlugin.toggle_status(PluginStatus.Inactive)
|
||||
status_text = translate('OpenLP.PluginForm', '%s (Inactive)')
|
||||
if self.activePlugin.status == PluginStatus.Active:
|
||||
status_text = translate('OpenLP.PluginForm', '%s (Active)')
|
||||
|
@ -137,7 +137,7 @@ class MediaPlugin(Plugin):
|
||||
if players:
|
||||
new_players = [player for player in players if player != u'phonon']
|
||||
new_players.insert(0, u'phonon')
|
||||
self.media_controller.mediaPlayers[u'phonon'].isActive = True
|
||||
self.media_controller.mediaPlayers[u'phonon'].is_active = True
|
||||
settings.setValue(u'players', u','.join(new_players))
|
||||
self.settingsTab.load()
|
||||
settings.remove(u'use phonon')
|
||||
|
@ -105,7 +105,7 @@ class PresentationPlugin(Plugin):
|
||||
controller.kill()
|
||||
Plugin.finalise(self)
|
||||
|
||||
def createMediaManagerItem(self):
|
||||
def create_media_manager_item(self):
|
||||
"""
|
||||
Create the Media Manager List
|
||||
"""
|
||||
@ -114,17 +114,16 @@ class PresentationPlugin(Plugin):
|
||||
|
||||
def registerControllers(self, controller):
|
||||
"""
|
||||
Register each presentation controller (Impress, PPT etc) and
|
||||
store for later use
|
||||
Register each presentation controller (Impress, PPT etc) and store for later use
|
||||
"""
|
||||
self.controllers[controller.name] = controller
|
||||
|
||||
def checkPreConditions(self):
|
||||
def check_pre_conditions(self):
|
||||
"""
|
||||
Check to see if we have any presentation software available
|
||||
If Not do not install the plugin.
|
||||
"""
|
||||
log.debug(u'checkPreConditions')
|
||||
log.debug(u'check_pre_conditions')
|
||||
controller_dir = os.path.join(
|
||||
AppLocation.get_directory(AppLocation.PluginsDir),
|
||||
u'presentations', u'lib')
|
||||
|
@ -85,7 +85,10 @@ class SongsPlugin(Plugin):
|
||||
self.iconPath = u':/plugins/plugin_songs.png'
|
||||
self.icon = build_icon(self.iconPath)
|
||||
|
||||
def checkPreConditions(self):
|
||||
def check_pre_conditions(self):
|
||||
"""
|
||||
Check the plugin can run.
|
||||
"""
|
||||
return self.manager.session is not None
|
||||
|
||||
def initialise(self):
|
||||
|
@ -68,7 +68,10 @@ class SongUsagePlugin(Plugin):
|
||||
self.inactiveIcon = build_icon(u':/songusage/song_usage_inactive.png')
|
||||
self.song_usage_active = False
|
||||
|
||||
def checkPreConditions(self):
|
||||
def check_pre_conditions(self):
|
||||
"""
|
||||
Check the plugin can run.
|
||||
"""
|
||||
return self.manager.session is not None
|
||||
|
||||
def addToolsMenuItem(self, tools_menu):
|
||||
|
@ -41,9 +41,9 @@ class TestPluginManager(TestCase):
|
||||
# WHEN: We run hook_media_manager()
|
||||
plugin_manager.hook_media_manager()
|
||||
|
||||
# THEN: The createMediaManagerItem() method should have been called
|
||||
assert mocked_plugin.createMediaManagerItem.call_count == 0, \
|
||||
u'The createMediaManagerItem() method should not have been called.'
|
||||
# THEN: The create_media_manager_item() method should have been called
|
||||
assert mocked_plugin.create_media_manager_item.call_count == 0, \
|
||||
u'The create_media_manager_item() method should not have been called.'
|
||||
|
||||
def hook_media_manager_with_active_plugin_test(self):
|
||||
"""
|
||||
@ -58,8 +58,8 @@ class TestPluginManager(TestCase):
|
||||
# WHEN: We run hook_media_manager()
|
||||
plugin_manager.hook_media_manager()
|
||||
|
||||
# THEN: The createMediaManagerItem() method should have been called
|
||||
mocked_plugin.createMediaManagerItem.assert_called_with()
|
||||
# THEN: The create_media_manager_item() method should have been called
|
||||
mocked_plugin.create_media_manager_item.assert_called_with()
|
||||
|
||||
def hook_settings_tabs_with_disabled_plugin_and_no_form_test(self):
|
||||
"""
|
||||
@ -75,8 +75,8 @@ class TestPluginManager(TestCase):
|
||||
plugin_manager.hook_settings_tabs()
|
||||
|
||||
# THEN: The createSettingsTab() method should have been called
|
||||
assert mocked_plugin.createMediaManagerItem.call_count == 0, \
|
||||
u'The createMediaManagerItem() method should not have been called.'
|
||||
assert mocked_plugin.create_media_manager_item.call_count == 0, \
|
||||
u'The create_media_manager_item() method should not have been called.'
|
||||
|
||||
def hook_settings_tabs_with_disabled_plugin_and_mocked_form_test(self):
|
||||
"""
|
||||
@ -96,7 +96,7 @@ class TestPluginManager(TestCase):
|
||||
|
||||
# THEN: The createSettingsTab() method should not have been called, but the plugins lists should be the same
|
||||
assert mocked_plugin.createSettingsTab.call_count == 0, \
|
||||
u'The createMediaManagerItem() method should not have been called.'
|
||||
u'The create_media_manager_item() method should not have been called.'
|
||||
self.assertEqual(mocked_settings_form.plugin_manager.plugins, plugin_manager.plugins,
|
||||
u'The plugins on the settings form should be the same as the plugins in the plugin manager')
|
||||
|
||||
@ -116,9 +116,9 @@ class TestPluginManager(TestCase):
|
||||
# WHEN: We run hook_settings_tabs()
|
||||
plugin_manager.hook_settings_tabs()
|
||||
|
||||
# THEN: The createMediaManagerItem() method should have been called with the mocked settings form
|
||||
# THEN: The create_media_manager_item() method should have been called with the mocked settings form
|
||||
assert mocked_plugin.createSettingsTab.call_count == 1, \
|
||||
u'The createMediaManagerItem() method should have been called once.'
|
||||
u'The create_media_manager_item() method should have been called once.'
|
||||
self.assertEqual(mocked_settings_form.plugin_manager.plugins, plugin_manager.plugins,
|
||||
u'The plugins on the settings form should be the same as the plugins in the plugin manager')
|
||||
|
||||
@ -151,7 +151,7 @@ class TestPluginManager(TestCase):
|
||||
# WHEN: We run hook_import_menu()
|
||||
plugin_manager.hook_import_menu()
|
||||
|
||||
# THEN: The createMediaManagerItem() method should have been called
|
||||
# THEN: The create_media_manager_item() method should have been called
|
||||
assert mocked_plugin.addImportMenuItem.call_count == 0, \
|
||||
u'The addImportMenuItem() method should not have been called.'
|
||||
|
||||
@ -244,15 +244,15 @@ class TestPluginManager(TestCase):
|
||||
# GIVEN: A PluginManager instance and a list with a mocked up plugin whose status is set to Disabled
|
||||
mocked_plugin = MagicMock()
|
||||
mocked_plugin.status = PluginStatus.Disabled
|
||||
mocked_plugin.isActive.return_value = False
|
||||
mocked_plugin.is_active.return_value = False
|
||||
plugin_manager = PluginManager()
|
||||
plugin_manager.plugins = [mocked_plugin]
|
||||
|
||||
# WHEN: We run initialise_plugins()
|
||||
plugin_manager.initialise_plugins()
|
||||
|
||||
# THEN: The isActive() method should have been called, and initialise() method should NOT have been called
|
||||
mocked_plugin.isActive.assert_called_with()
|
||||
# THEN: The is_active() method should have been called, and initialise() method should NOT have been called
|
||||
mocked_plugin.is_active.assert_called_with()
|
||||
assert mocked_plugin.initialise.call_count == 0, u'The initialise() method should not have been called.'
|
||||
|
||||
def initialise_plugins_with_active_plugin_test(self):
|
||||
@ -262,15 +262,15 @@ class TestPluginManager(TestCase):
|
||||
# GIVEN: A PluginManager instance and a list with a mocked up plugin whose status is set to Active
|
||||
mocked_plugin = MagicMock()
|
||||
mocked_plugin.status = PluginStatus.Active
|
||||
mocked_plugin.isActive.return_value = True
|
||||
mocked_plugin.is_active.return_value = True
|
||||
plugin_manager = PluginManager()
|
||||
plugin_manager.plugins = [mocked_plugin]
|
||||
|
||||
# WHEN: We run initialise_plugins()
|
||||
plugin_manager.initialise_plugins()
|
||||
|
||||
# THEN: The isActive() and initialise() methods should have been called
|
||||
mocked_plugin.isActive.assert_called_with()
|
||||
# THEN: The is_active() and initialise() methods should have been called
|
||||
mocked_plugin.is_active.assert_called_with()
|
||||
mocked_plugin.initialise.assert_called_with()
|
||||
|
||||
def finalise_plugins_with_disabled_plugin_test(self):
|
||||
@ -280,15 +280,15 @@ class TestPluginManager(TestCase):
|
||||
# GIVEN: A PluginManager instance and a list with a mocked up plugin whose status is set to Disabled
|
||||
mocked_plugin = MagicMock()
|
||||
mocked_plugin.status = PluginStatus.Disabled
|
||||
mocked_plugin.isActive.return_value = False
|
||||
mocked_plugin.is_active.return_value = False
|
||||
plugin_manager = PluginManager()
|
||||
plugin_manager.plugins = [mocked_plugin]
|
||||
|
||||
# WHEN: We run finalise_plugins()
|
||||
plugin_manager.finalise_plugins()
|
||||
|
||||
# THEN: The isActive() method should have been called, and initialise() method should NOT have been called
|
||||
mocked_plugin.isActive.assert_called_with()
|
||||
# THEN: The is_active() method should have been called, and initialise() method should NOT have been called
|
||||
mocked_plugin.is_active.assert_called_with()
|
||||
assert mocked_plugin.finalise.call_count == 0, u'The finalise() method should not have been called.'
|
||||
|
||||
def finalise_plugins_with_active_plugin_test(self):
|
||||
@ -298,15 +298,15 @@ class TestPluginManager(TestCase):
|
||||
# GIVEN: A PluginManager instance and a list with a mocked up plugin whose status is set to Active
|
||||
mocked_plugin = MagicMock()
|
||||
mocked_plugin.status = PluginStatus.Active
|
||||
mocked_plugin.isActive.return_value = True
|
||||
mocked_plugin.is_active.return_value = True
|
||||
plugin_manager = PluginManager()
|
||||
plugin_manager.plugins = [mocked_plugin]
|
||||
|
||||
# WHEN: We run finalise_plugins()
|
||||
plugin_manager.finalise_plugins()
|
||||
|
||||
# THEN: The isActive() and finalise() methods should have been called
|
||||
mocked_plugin.isActive.assert_called_with()
|
||||
# THEN: The is_active() and finalise() methods should have been called
|
||||
mocked_plugin.is_active.assert_called_with()
|
||||
mocked_plugin.finalise.assert_called_with()
|
||||
|
||||
def get_plugin_by_name_does_not_exist_test(self):
|
||||
@ -322,7 +322,7 @@ class TestPluginManager(TestCase):
|
||||
# WHEN: We run finalise_plugins()
|
||||
result = plugin_manager.get_plugin_by_name('Missing Plugin')
|
||||
|
||||
# THEN: The isActive() and finalise() methods should have been called
|
||||
# THEN: The is_active() and finalise() methods should have been called
|
||||
self.assertIsNone(result, u'The result for get_plugin_by_name should be None')
|
||||
|
||||
def get_plugin_by_name_exists_test(self):
|
||||
@ -338,7 +338,7 @@ class TestPluginManager(TestCase):
|
||||
# WHEN: We run finalise_plugins()
|
||||
result = plugin_manager.get_plugin_by_name('Mocked Plugin')
|
||||
|
||||
# THEN: The isActive() and finalise() methods should have been called
|
||||
# THEN: The is_active() and finalise() methods should have been called
|
||||
self.assertEqual(result, mocked_plugin, u'The result for get_plugin_by_name should be the mocked plugin')
|
||||
|
||||
def new_service_created_with_disabled_plugin_test(self):
|
||||
@ -348,7 +348,7 @@ class TestPluginManager(TestCase):
|
||||
# GIVEN: A PluginManager instance and a list with a mocked up plugin whose status is set to Disabled
|
||||
mocked_plugin = MagicMock()
|
||||
mocked_plugin.status = PluginStatus.Disabled
|
||||
mocked_plugin.isActive.return_value = False
|
||||
mocked_plugin.is_active.return_value = False
|
||||
plugin_manager = PluginManager()
|
||||
plugin_manager.plugins = [mocked_plugin]
|
||||
|
||||
@ -356,7 +356,7 @@ class TestPluginManager(TestCase):
|
||||
plugin_manager.new_service_created()
|
||||
|
||||
# THEN: The isActive() method should have been called, and initialise() method should NOT have been called
|
||||
mocked_plugin.isActive.assert_called_with()
|
||||
mocked_plugin.is_active.assert_called_with()
|
||||
assert mocked_plugin.new_service_created.call_count == 0,\
|
||||
u'The new_service_created() method should not have been called.'
|
||||
|
||||
@ -367,13 +367,13 @@ class TestPluginManager(TestCase):
|
||||
# GIVEN: A PluginManager instance and a list with a mocked up plugin whose status is set to Active
|
||||
mocked_plugin = MagicMock()
|
||||
mocked_plugin.status = PluginStatus.Active
|
||||
mocked_plugin.isActive.return_value = True
|
||||
mocked_plugin.is_active.return_value = True
|
||||
plugin_manager = PluginManager()
|
||||
plugin_manager.plugins = [mocked_plugin]
|
||||
|
||||
# WHEN: We run new_service_created()
|
||||
plugin_manager.new_service_created()
|
||||
|
||||
# THEN: The isActive() and finalise() methods should have been called
|
||||
mocked_plugin.isActive.assert_called_with()
|
||||
# THEN: The is_active() and finalise() methods should have been called
|
||||
mocked_plugin.is_active.assert_called_with()
|
||||
mocked_plugin.new_service_created.assert_called_with()
|
||||
|
Loading…
Reference in New Issue
Block a user