Browse Source

Improved error message when registering a service.

Sascha Zelzer 14 years ago
parent
commit
1d5b716109
1 changed files with 3 additions and 2 deletions
  1. 3 2
      Libs/PluginFramework/ctkServices.cpp

+ 3 - 2
Libs/PluginFramework/ctkServices.cpp

@@ -121,8 +121,9 @@ ctkServiceRegistration* ctkServices::registerService(ctkPluginPrivate* plugin,
     {
       if (!checkServiceClass(service, cls))
       {
-        throw std::invalid_argument
-            (std::string("Service object is not an instance of ") + cls.toStdString());
+        QString msg = QString("Service class %1 is not an instance of %2. Maybe you forgot the Q_INTERFACES macro in the service class.")
+            .arg(service->metaObject()->className()).arg(cls);
+        throw std::invalid_argument(msg.toStdString());
       }
     }
   }