Преглед на файлове

Add a service listener in the PluginBrowser application.

Sascha Zelzer преди 14 години
родител
ревизия
2da1ade5ed
променени са 2 файла, в които са добавени 8 реда и са изтрити 0 реда
  1. 6 0
      Applications/ctkPluginBrowser/ctkPluginBrowser.cpp
  2. 2 0
      Applications/ctkPluginBrowser/ctkPluginBrowser.h

+ 6 - 0
Applications/ctkPluginBrowser/ctkPluginBrowser.cpp

@@ -60,6 +60,7 @@ ctkPluginBrowser::ctkPluginBrowser(ctkPluginFramework* framework)
 
   framework->getPluginContext()->connectFrameworkListener(this, SLOT(frameworkEvent(ctkPluginFrameworkEvent)));
   framework->getPluginContext()->connectPluginListener(this, SLOT(pluginEvent(ctkPluginEvent)));
+  framework->getPluginContext()->connectServiceListener(this, "serviceEvent");
 
   QStringList pluginDirs;
 #ifdef CMAKE_INTDIR
@@ -242,6 +243,11 @@ void ctkPluginBrowser::pluginEvent(const ctkPluginEvent& event)
   }
 }
 
+void ctkPluginBrowser::serviceEvent(const ctkServiceEvent &event)
+{
+  qDebug() << "ServiceEvent: [" << event.getType() << "]" << event.getServiceReference().getUsingPlugins();
+}
+
 void ctkPluginBrowser::startPlugin()
 {
   startPlugin(ctkPlugin::START_TRANSIENT | ctkPlugin::START_ACTIVATION_POLICY);

+ 2 - 0
Applications/ctkPluginBrowser/ctkPluginBrowser.h

@@ -31,6 +31,7 @@
 #include <ctkPluginEvent.h>
 #include <ctkPluginFrameworkEvent.h>
 #include <ctkPlugin.h>
+#include <ctkServiceEvent.h>
 
 
 class ctkPluginFramework;
@@ -52,6 +53,7 @@ private slots:
 
   void frameworkEvent(const ctkPluginFrameworkEvent& event);
   void pluginEvent(const ctkPluginEvent& event);
+  void serviceEvent(const ctkServiceEvent& event);
 
   void startPlugin();
   void startPluginNow();