Hi,
After I added another plugin (named "SkullExtraction") to my project (which
ran well with one plugin named "my.awesomeproject.exampleplugin"), I'm
getting the same error as you had:
52.39 blueberry.osgi.iconfigurationelement WARNING: The class
SkullExtractionView was not registered as an Extension Type using
BERRY_REGISTER_EXTENSION_CLASS(type, pluginContext) or you forgot to run
Qt's moc on the header file. Legacy BlueBerry bundles should use
CreateExecutableExtension<C>(propertyName, C::GetManifestName()) instead.
52.41 blueberry.osgi.iconfigurationelement WARNING: Could not load
executable extension SkullExtractionView from SkullExtraction
I attached my project tree and a snapshot to my files.
Thanks!
On Thu, Jul 21, 2011 at 8:01 PM, Miklos Espak <[email protected]> wrote:
> Ohh, you're right again.
>
> Yes, I interpreted the error, and then added the header file name to
> the MOC_H_FILES section, but it was useless because I missed to add
> the Q_OBJECT and Q_INTERFACES macros. Basic Qt thing. My mistake.
>
> Thank you very much!
>
> Miklos
>
> On Thu, Jul 21, 2011 at 5:26 PM, Sascha Zelzer
> <[email protected]> wrote:
> > Hi Miklos,
> >
> > thanks for attatching the patch, this makes trouble shooting a lot
> easier.
> >
> > Your perspective implementation should look like:
> >
> > class QmitkAwesomePerspective: public QObject, public
> > berry::IPerspectiveFactory
> > {
> > Q_OBJECT
> > Q_INTERFACES(berry::IPerspectiveFactory)
> >
> > public:
> > ...
> > };
> >
> > and you must add the QmitkAwesomePerspective.h file to the MOC_H_FILES
> list
> > in your files.cmake file.
> >
> > Here is a citation from the error output ;-)
> >
> > or you forgot to
> > run Qt's moc on the header file
> >
> > Best,
> > Sascha
> >
> > On 07/21/2011 05:04 PM, Miklos Espak wrote:
> >
> > Hi,
> >
> > for your suggestion I keep on flooding the mailing list. ;-)
> >
> > I created a perspective for my plugin. It worked well with BlueBerry
> > but after the migration to CTK I get an error at run-time. To make it
> > easy to reconstruct the situation, I remade all the changes on the
> > AwesomeProject.
> >
> > The error is the following:
> >
> > !2.080! [BlueBerry] WARNING: The class QmitkAwesomePerspective was not
> > registered as an Extension Type using
> > BERRY_REGISTER_EXTENSION_CLASS(type, pluginContext) or you forgot to
> > run Qt's moc on the header file. Legacy BlueBerry bundles should use
> > CreateExecutableExtension<C>(propertyName, C::GetManifestName())
> > instead.
> > !2.080! [BlueBerry] WARNING: Could not load executable extension
> > QmitkAwesomePerspective from my.awesomeproject.exampleplugin
> >
> > The perspective is registered in mitkPluginActivator.cpp with the
> > following command:
> > BERRY_REGISTER_EXTENSION_CLASS(QmitkAwesomePerspective, context)
> >
> > Moreover, the src/internal/QmitkAwesomePerspective.h is added to the
> > MOC_H_FILES section of files.cmake.
> >
> > I attached the test as a patch on the project template. I hope the
> > format is correct.
> >
> > Is it a bug or I am doing something wrong?
> >
> > Thanks!
> > Miklos
> >
> >
>
>
> ------------------------------------------------------------------------------
> 5 Ways to Improve & Secure Unified Communications
> Unified Communications promises greater efficiencies for business. UC can
> improve internal communications as well as offer faster, more efficient
> ways
> to interact with customers and streamline customer service. Learn more!
> http://www.accelacomm.com/jaw/sfnl/114/51426253/
> _______________________________________________
> mitk-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/mitk-users
>
C:\MITK_ProjectTemplate>tree /f
Folder PATH listing
Volume serial number is 7453-DCCF
C:.
│ CMakeLists.txt
│ Copyright.txt
│ README.markdown
│ SuperBuild.cmake
│
├───Apps
│ └───Filter1
│ CMakeLists.txt
│ Filter1.cpp
│ Filter1.ini
│ startFilter1.bat.in
│
├───CMake
│ CPackSetup.cmake
│ CTestCustom.cmake.in
│ MacroEmptyExternalProject.cmake
│ StartVS.bat.in
│
├───CMakeExternals
│ MITK.cmake
│
├───Modules
│ │ CMakeLists.txt
│ │
│ └───MyFilterLib
│ CMakeLists.txt
│ files.cmake
│ Filter_Implementation.cpp
│ Filter_Implementation.h
│
└───Plugins
│ Plugins.cmake
│
├───my.awesomeproject.exampleplugin
│ │ CMakeLists.txt
│ │ files.cmake
│ │ manifest_headers.cmake
│ │ plugin.xml
│ │
│ ├───documentation
│ │ ├───doxygen
│ │ │ modules.dox
│ │ │
│ │ └───Manual
│ │ icon.png
│ │ Manual.dox
│ │
│ ├───resources
│ │ icon.xpm
│ │
│ └───src
│ └───internal
│ mitkPluginActivator.cpp
│ mitkPluginActivator.h
│ QmitkAwesomeView.cpp
│ QmitkAwesomeView.h
│ QmitkAwesomeViewControls.ui
│
└───SkullExtraction
│ CMakeLists.txt
│ files.cmake
│ manifest_headers.cmake
│ plugin.xml
│
├───documentation
│ ├───doxygen
│ │ modules.dox
│ │
│ └───Manual
│ icon.png
│ Manual.dox
│
├───resources
│ icon.xpm
│
└───src
└───internal
mitkPluginActivator.cpp
mitkPluginActivator.h
QmitkSkullExtractionView.cpp
QmitkSkullExtractionView.h
QmitkSkullExtractionViewControls.ui
/*==================================================================
a/Plugins/SkullExtraction/src/internal/QmitkSkullExtractionView_h
=====================================================================*/
#ifndef QmitkSkullExtractionView_h
#define QmitkSkullExtractionView_h
#include <berryISelectionListener.h>
#include <QmitkFunctionality.h>
#include "ui_QmitkSkullExtractionViewControls.h"
/*!
\brief QmitkSkullExtractionView
\warning This application module is not yet documented. Use "svn
blame/praise/annotate" and ask the author to provide basic documentation.
\sa QmitkFunctionality
\ingroup Functionalities
*/
class QmitkSkullExtractionView : public QmitkFunctionality
{
// this is needed for all Qt objects that should have a Qt meta-object
// (everything that derives from QObject and wants to have signal/slots)
Q_OBJECT
public:
static const std::string VIEW_ID;
QmitkSkullExtractionView();
virtual ~QmitkSkullExtractionView();
virtual void CreateQtPartControl(QWidget *parent);
protected slots:
/// \brief Called when the user clicks the GUI button
void DoImageProcessing();
protected:
/// \brief called by QmitkFunctionality when DataManager's selection has
changed
virtual void OnSelectionChanged( std::vector<mitk::DataNode*> nodes );
Ui::QmitkSkullExtractionViewControls m_Controls;
};
#endif // QmitkSkullExtractionView_h
/*==============================================================
a/Plugins/SkullExtraction/src/internal/mitkPluginActivator.cpp
===============================================================*/
set(SRC_CPP_FILES
)
set(INTERNAL_CPP_FILES
mitkPluginActivator.cpp
QmitkSkullExtractionView.cpp
)
set(UI_FILES
src/internal/QmitkSkullExtractionViewControls.ui
)
set(MOC_H_FILES
src/internal/mitkPluginActivator.h
src/internal/QmitkSkullExtractionView.h
)
# list of resource files which can be used by the plug-in
# system without loading the plug-ins shared library,
# for example the icon used in the menu and tabs for the
# plug-in views in the workbench
set(CACHED_RESOURCE_FILES
resources/icon.xpm
plugin.xml
)
# list of Qt .qrc files which contain additional resources
# specific to this plugin
set(QRC_FILES
)
set(CPP_FILES )
foreach(file ${SRC_CPP_FILES})
set(CPP_FILES ${CPP_FILES} src/${file})
endforeach(file ${SRC_CPP_FILES})
foreach(file ${INTERNAL_CPP_FILES})
set(CPP_FILES ${CPP_FILES} src/internal/${file})
endforeach(file ${INTERNAL_CPP_FILES})
/*==============================================================
a/Plugins/SkullExtraction/src/internal/files.cmake
===============================================================*/
set(SRC_CPP_FILES
)
set(INTERNAL_CPP_FILES
mitkPluginActivator.cpp
QmitkSkullExtractionView.cpp
)
set(UI_FILES
src/internal/QmitkSkullExtractionViewControls.ui
)
set(MOC_H_FILES
src/internal/mitkPluginActivator.h
src/internal/QmitkSkullExtractionView.h
)
# list of resource files which can be used by the plug-in
# system without loading the plug-ins shared library,
# for example the icon used in the menu and tabs for the
# plug-in views in the workbench
set(CACHED_RESOURCE_FILES
resources/icon.xpm
plugin.xml
)
# list of Qt .qrc files which contain additional resources
# specific to this plugin
set(QRC_FILES
)
set(CPP_FILES )
foreach(file ${SRC_CPP_FILES})
set(CPP_FILES ${CPP_FILES} src/${file})
endforeach(file ${SRC_CPP_FILES})
foreach(file ${INTERNAL_CPP_FILES})
set(CPP_FILES ${CPP_FILES} src/internal/${file})
endforeach(file ${INTERNAL_CPP_FILES})
========================================
<?xml version="1.0" encoding="UTF-8"?>
<plugin>
<extension point="org.blueberry.ui.views">
<view id="my.SkullExtractionView.views.SkullView"
name="Skull Extraction"
class="SkullExtractionView"
icon="resources/icon.xpm" />
</extension>
</plugin>
------------------------------------------------------------------------------
Special Offer -- Download ArcSight Logger for FREE!
Finally, a world-class log management solution at an even better
price-free! And you'll get a free "Love Thy Logs" t-shirt when you
download Logger. Secure your free ArcSight Logger TODAY!
http://p.sf.net/sfu/arcsisghtdev2dev
_______________________________________________
mitk-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mitk-users