← Back to team overview

openlp-core team mailing list archive

[Merge] lp:~googol/openlp/registry into lp:openlp

 

Andreas Preikschat has proposed merging lp:~googol/openlp/registry into lp:openlp.

Requested reviews:
  Raoul Snyman (raoul-snyman)
  Andreas Preikschat (googol)
  Tim Bentley (trb143)

For more details, see:
https://code.launchpad.net/~googol/openlp/registry/+merge/148858

Hello,

- fixed alert display regression
- fixed image plugin regression
- fixed remote plugin regression

To be reviewed after Tim's branch: lp:~trb143/openlp/event_receiver_removal
-- 
https://code.launchpad.net/~googol/openlp/registry/+merge/148858
Your team OpenLP Core is subscribed to branch lp:openlp.
=== modified file 'openlp/plugins/alerts/lib/alertsmanager.py'
--- openlp/plugins/alerts/lib/alertsmanager.py	2013-02-07 08:42:17 +0000
+++ openlp/plugins/alerts/lib/alertsmanager.py	2013-02-16 09:18:22 +0000
@@ -37,8 +37,10 @@
 
 from openlp.core.lib import Registry, translate
 
+
 log = logging.getLogger(__name__)
 
+
 class AlertsManager(QtCore.QObject):
     """
     AlertsManager manages the settings of Alerts.
@@ -87,7 +89,7 @@
             return
         text = self.alert_list.pop(0)
         alertTab = self.parent().settingsTab
-        self.parent().liveController.display.alert(text, alertTab.location)
+        self.live_controller.display.alert(text, alertTab.location)
         # Check to see if we have a timer running.
         if self.timer_id == 0:
             self.timer_id = self.startTimer(int(alertTab.timeout) * 1000)
@@ -103,10 +105,20 @@
         log.debug(u'timer event')
         if event.timerId() == self.timer_id:
             alertTab = self.parent().settingsTab
-            self.parent().liveController.display.alert(u'', alertTab.location)
+            self.live_controller.display.alert(u'', alertTab.location)
         self.killTimer(self.timer_id)
         self.timer_id = 0
-        self.generate_alert()
+        self.generateAlert()
+
+    def _get_live_controller(self):
+        """
+        Adds the live controller to the class dynamically
+        """
+        if not hasattr(self, u'_live_controller'):
+            self._live_controller = Registry().get(u'live_controller')
+        return self._live_controller
+
+    live_controller = property(_get_live_controller)
 
     def _get_main_window(self):
         """
@@ -116,4 +128,4 @@
             self._main_window = Registry().get(u'main_window')
         return self._main_window
 
-    main_window = property(_get_main_window)
\ No newline at end of file
+    main_window = property(_get_main_window)

=== modified file 'openlp/plugins/images/imageplugin.py'
--- openlp/plugins/images/imageplugin.py	2013-02-07 08:42:17 +0000
+++ openlp/plugins/images/imageplugin.py	2013-02-16 09:18:22 +0000
@@ -98,4 +98,14 @@
         last part of saving the config.
         """
         background = QtGui.QColor(Settings().value(self.settingsSection + u'/background color'))
-        self.liveController.imageManager.update_images_border(ImageSource.ImagePlugin, background)
+        self.image_manager.update_images_border(ImageSource.ImagePlugin, background)
+
+    def _get_image_manager(self):
+        """
+        Adds the image manager to the class dynamically
+        """
+        if not hasattr(self, u'_image_manager'):
+            self._image_manager = Registry().get(u'image_manager')
+        return self._image_manager
+
+    image_manager = property(_get_image_manager)

=== modified file 'openlp/plugins/remotes/lib/httpserver.py'
--- openlp/plugins/remotes/lib/httpserver.py	2013-02-07 08:42:17 +0000
+++ openlp/plugins/remotes/lib/httpserver.py	2013-02-16 09:18:22 +0000
@@ -124,6 +124,7 @@
 from mako.template import Template
 
 from openlp.core.lib import Registry, Settings, PluginStatus, StringContent
+
 from openlp.core.utils import AppLocation, translate
 
 log = logging.getLogger(__name__)
@@ -250,12 +251,11 @@
 
     def _get_service_items(self):
         service_items = []
-        service_manager = self.parent.plugin.serviceManager
         if self.parent.current_item:
             current_unique_identifier = self.parent.current_item.unique_identifier
         else:
             current_unique_identifier = None
-        for item in service_manager.serviceItems:
+        for item in self.service_manager.serviceItems:
             service_item = item[u'service_item']
             service_items.append({
                 u'id': unicode(service_item.unique_identifier),
@@ -386,13 +386,13 @@
         Poll OpenLP to determine the current slide number and item name.
         """
         result = {
-            u'service': self.parent.plugin.serviceManager.service_id,
+            u'service': self.service_manager.service_id,
             u'slide': self.parent.current_slide or 0,
             u'item': self.parent.current_item.unique_identifier if self.parent.current_item else u'',
             u'twelve':Settings().value(u'remotes/twelve hour'),
-            u'blank': self.parent.plugin.liveController.blankScreen.isChecked(),
-            u'theme': self.parent.plugin.liveController.themeScreen.isChecked(),
-            u'display': self.parent.plugin.liveController.desktopScreen.isChecked()
+            u'blank': self.live_controller.blankScreen.isChecked(),
+            u'theme': self.live_controller.themeScreen.isChecked(),
+            u'display': self.live_controller.desktopScreen.isChecked()
         }
         return HttpResponse(json.dumps({u'results': result}),
             {u'Content-Type': u'application/json'})
@@ -412,7 +412,7 @@
         """
         Send an alert.
         """
-        plugin = self.parent.plugin.pluginManager.get_plugin_by_name("alerts")
+        plugin = self.plugin_manager.get_plugin_by_name("alerts")
         if plugin.status == PluginStatus.Active:
             try:
                 text = json.loads(self.url_params[u'data'][0])[u'request'][u'text']
@@ -504,7 +504,7 @@
         """
         if action == u'search':
             searches = []
-            for plugin in self.parent.plugin.pluginManager.plugins:
+            for plugin in self.plugin_manager.plugins:
                 if plugin.status == PluginStatus.Active and plugin.mediaItem and plugin.mediaItem.hasSearch:
                     searches.append([plugin.name, unicode(plugin.textStrings[StringContent.Name][u'plural'])])
             return HttpResponse(
@@ -523,7 +523,7 @@
         except KeyError, ValueError:
             return HttpResponse(code=u'400 Bad Request')
         text = urllib.unquote(text)
-        plugin = self.parent.plugin.pluginManager.get_plugin_by_name(type)
+        plugin = self.plugin_manager.get_plugin_by_name(type)
         if plugin.status == PluginStatus.Active and plugin.mediaItem and plugin.mediaItem.hasSearch:
             results = plugin.mediaItem.search(text, False)
         else:
@@ -539,7 +539,7 @@
             id = json.loads(self.url_params[u'data'][0])[u'request'][u'id']
         except KeyError, ValueError:
             return HttpResponse(code=u'400 Bad Request')
-        plugin = self.parent.plugin.pluginManager.get_plugin_by_name(type)
+        plugin = self.plugin_manager.get_plugin_by_name(type)
         if plugin.status == PluginStatus.Active and plugin.mediaItem:
             plugin.mediaItem.goLive(id, remote=True)
         return HttpResponse(code=u'200 OK')
@@ -552,7 +552,7 @@
             id = json.loads(self.url_params[u'data'][0])[u'request'][u'id']
         except KeyError, ValueError:
             return HttpResponse(code=u'400 Bad Request')
-        plugin = self.parent.plugin.pluginManager.get_plugin_by_name(type)
+        plugin = self.plugin_manager.get_plugin_by_name(type)
         if plugin.status == PluginStatus.Active and plugin.mediaItem:
             item_id = plugin.mediaItem.createItemFromId(id)
             plugin.mediaItem.addToService(item_id, remote=True)
@@ -583,3 +583,33 @@
         self.socket.close()
         self.socket = None
         self.parent.close_connection(self)
+
+    def _get_service_manager(self):
+        """
+        Adds the service manager to the class dynamically
+        """
+        if not hasattr(self, u'_service_manager'):
+            self._service_manager = Registry().get(u'service_manager')
+        return self._service_manager
+
+    service_manager = property(_get_service_manager)
+
+    def _get_live_controller(self):
+        """
+        Adds the live controller to the class dynamically
+        """
+        if not hasattr(self, u'_live_controller'):
+            self._live_controller = Registry().get(u'live_controller')
+        return self._live_controller
+
+    live_controller = property(_get_live_controller)
+
+    def _get_plugin_manager(self):
+        """
+        Adds the plugin manager to the class dynamically
+        """
+        if not hasattr(self, u'_plugin_manager'):
+            self._plugin_manager = Registry().get(u'plugin_manager')
+        return self._plugin_manager
+
+    plugin_manager = property(_get_plugin_manager)