diff --git a/Modules/Bundles/CMakeLists.txt b/Modules/Bundles/CMakeLists.txt index 66511e5994..9084d4333a 100644 --- a/Modules/Bundles/CMakeLists.txt +++ b/Modules/Bundles/CMakeLists.txt @@ -1,67 +1,69 @@ IF(MITK_USE_BLUEBERRY) SET(MITK_DEFAULT_SUBPROJECTS MITK-Plugins) SET(_mitk_bundles_default ) IF(QT4_FOUND) LIST(APPEND _mitk_bundles_default "org.mitk.gui.qt.imagenavigator") # BlueBerry depends on CTK which depends on Qt, so we # need the Qt include direcotries INCLUDE(${QT_USE_FILE}) ENDIF() SET(PLUGIN_EXCLUDE_LIST org.mitk.core.ext org.mitk.gui.qt.volumetry org.mitk.core.jobs org.mitk.diffusionimaging org.mitk.gui.qt.diffusionimaging org.mitk.gui.qt.diffusionimagingapp org.mitk.gui.qt.ext org.mitk.gui.qt.extapplication org.mitk.gui.qt.datamanager org.mitk.gui.qt.regiongrowing org.mitk.gui.qt.segmentation org.mitk.planarfigure org.mitk.gui.qt.igtnavigationtoolmanager org.mitk.gui.qt.igttrackingtoolbox org.mitk.gui.qt.igttutorial org.mitk.gui.qt.igttoolpairnavigation org.mitk.gui.qt.basicimageprocessing org.mitk.gui.qt.colourimageprocessing org.mitk.gui.qt.navigationdataplayer org.mitk.gui.qt.tofutil org.mitk.gui.qt.toftutorial org.mitk.gui.qt.imagenavigator org.mitk.gui.qt.moviemaker org.mitk.gui.qt.deformableregistration org.mitk.gui.qt.rigidregistration org.mitk.gui.qt.imagestatistics org.mitk.gui.qt.materialeditor org.mitk.gui.qt.simpleexample org.mitk.gui.qt.ugvisualization org.mitk.gui.qt.measurement org.mitk.gui.qt.simplemeasurement org.mitk.gui.qt.imagecropper org.mitk.gui.qt.pointbasedregistration org.mitk.gui.qt.viewinitialization org.mitk.gui.qt.volumevisualization org.mitk.gui.qt.pointsetinteraction + org.mitk.gui.qt.videoplayer + org.mitk.gui.qt.python.console ) MACRO_COLLECT_PLUGINS(OUTPUT_DIR ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/ExtBundles CACHE_PLUGIN_SOURCE_DIRS MITK_MODULES_PLUGIN_SOURCE_DIRS CACHE_PLUGIN_OUTPUT_DIRS MITK_MODULES_PLUGIN_OUTPUT_DIRS CACHE_PLUGIN_TARGETS MITK_MODULES_ENABLED_PLUGINS BUNDLE_LIST_PATH "${MITK_BINARY_DIR}/Bundles/MITKModulesBundleList.cmake" CMAKE_CACHE_PREFIX "MITK" PLUGIN_DEFAULT_ON ${_mitk_bundles_default} PLUGIN_EXCLUDES ${PLUGIN_EXCLUDE_LIST} ${MITK_BUILD_ALL_PLUGINS_OPTION}) ENDIF(MITK_USE_BLUEBERRY) diff --git a/Modules/Bundles/PluginList.cmake b/Modules/Bundles/PluginList.cmake index 7a23daf758..36806dc193 100644 --- a/Modules/Bundles/PluginList.cmake +++ b/Modules/Bundles/PluginList.cmake @@ -1,38 +1,40 @@ SET(MITK_EXT_PLUGINS org.mitk.core.ext:ON org.mitk.core.jobs:OFF org.mitk.planarfigure:ON org.mitk.diffusionimaging:OFF org.mitk.gui.qt.ext:ON org.mitk.gui.qt.extapplication:ON org.mitk.gui.qt.datamanager:ON org.mitk.gui.qt.segmentation:OFF org.mitk.gui.qt.diffusionimaging:OFF org.mitk.gui.qt.diffusionimagingapp:OFF org.mitk.gui.qt.igtnavigationtoolmanager:OFF org.mitk.gui.qt.igttoolpairnavigation:OFF org.mitk.gui.qt.igttrackingtoolbox:OFF org.mitk.gui.qt.regiongrowing:OFF org.mitk.gui.qt.navigationdataplayer:OFF org.mitk.gui.qt.basicimageprocessing:OFF org.mitk.gui.qt.igttutorial:OFF org.mitk.gui.qt.colourimageprocessing:OFF org.mitk.gui.qt.tofutil:OFF org.mitk.gui.qt.toftutorial:OFF org.mitk.gui.qt.imagenavigator:ON org.mitk.gui.qt.moviemaker:OFF org.mitk.gui.qt.deformableregistration:OFF org.mitk.gui.qt.rigidregistration:OFF org.mitk.gui.qt.imagestatistics:OFF org.mitk.gui.qt.volumetry:OFF org.mitk.gui.qt.materialeditor:OFF org.mitk.gui.qt.simpleexample:OFF org.mitk.gui.qt.ugvisualization:OFF org.mitk.gui.qt.measurement:OFF org.mitk.gui.qt.simplemeasurement:OFF org.mitk.gui.qt.imagecropper:OFF org.mitk.gui.qt.pointbasedregistration:OFF org.mitk.gui.qt.viewinitialization:OFF org.mitk.gui.qt.volumevisualization:OFF org.mitk.gui.qt.pointsetinteraction:OFF + org.mitk.gui.qt.videoplayer:OFF + org.mitk.gui.qt.python.console:OFF ) diff --git a/Modules/Bundles/org.mitk.gui.qt.python.console/CMakeLists.txt b/Modules/Bundles/org.mitk.gui.qt.python.console/CMakeLists.txt index 6b553c6f73..69fda8fa1e 100644 --- a/Modules/Bundles/org.mitk.gui.qt.python.console/CMakeLists.txt +++ b/Modules/Bundles/org.mitk.gui.qt.python.console/CMakeLists.txt @@ -1,14 +1,20 @@ -set(SWIG_PYTHON_WRAPPER _mitkCorePython SwigRuntimePython) +# The project name must correspond to the directory name of your plug-in +# and must not contain periods. IF(MITK_USE_PYTHON) - IF(MITK_USE_CTK) - #SET(ALL_INCLUDE_DIRECTORIES ${ALL_INCLUDE_DIRECTORIES} "${MITK_WRAPPING_SOURCE_DIR}" "${MITK_WRAPPING_BINARY_DIR}/Core") - #message(status "MITK_WRAPPING_BINARY_DIR: ${MITK_WRAPPING_BINARY_DIR}") - #message(status "MITK_WRAPPING_SOURCE_DIR: ${MITK_WRAPPING_SOURCE_DIR}") - INCLUDE_DIRECTORIES("${MITK_WRAPPING_SOURCE_DIR}/CSwig" "${MITK_WRAPPING_BINARY_DIR}/CSwig/Core") - - MACRO_CREATE_MITK_PLUGIN(QmitkExt CTK) - TARGET_LINK_LIBRARIES(${PLUGIN_TARGET} ${SWIG_PYTHON_WRAPPER}) - ELSE() - MESSAGE("MITK Python support needs CTK. Enable MITK_USE_CTK") - ENDIF() -ENDIF() + PROJECT(org_mitk_gui_qt_python_console) + + set(SWIG_PYTHON_WRAPPER _mitkCorePython SwigRuntimePython) + + MACRO_CREATE_MITK_CTK_PLUGIN( + EXPORT_DIRECTIVE CONSOLE_EXPORT + EXPORTED_INCLUDE_SUFFIXES src + MODULE_DEPENDENCIES QmitkExt CTK + ) + + INCLUDE_DIRECTORIES("${MITK_WRAPPING_SOURCE_DIR}/CSwig" "${MITK_WRAPPING_BINARY_DIR}/CSwig/Core") + + TARGET_LINK_LIBRARIES(org_mitk_gui_qt_python_console ${SWIG_PYTHON_WRAPPER}) + +ELSE() + MESSAGE("MITK Python Console needs Python. Enable MITK_USE_PYTHON") +ENDIF() \ No newline at end of file diff --git a/Modules/Bundles/org.mitk.gui.qt.python.console/META-INF/MANIFEST.MF b/Modules/Bundles/org.mitk.gui.qt.python.console/META-INF/MANIFEST.MF deleted file mode 100644 index 199fcedafc..0000000000 --- a/Modules/Bundles/org.mitk.gui.qt.python.console/META-INF/MANIFEST.MF +++ /dev/null @@ -1,7 +0,0 @@ -Manifest-Version: 1.0 -Bundle-Name: PythonConsole -Bundle-SymbolicName: org.mitk.gui.qt.python.console -Bundle-Version: 0.1 -Bundle-Vendor: DKFZ, Medical and Biological Informatics -Require-Bundle: org.mitk.gui.qt.common -Bundle-Activator: diff --git a/Modules/Bundles/org.mitk.gui.qt.python.console/files.cmake b/Modules/Bundles/org.mitk.gui.qt.python.console/files.cmake index b5eed79932..f5e4f5681b 100644 --- a/Modules/Bundles/org.mitk.gui.qt.python.console/files.cmake +++ b/Modules/Bundles/org.mitk.gui.qt.python.console/files.cmake @@ -1,54 +1,57 @@ SET(SRC_CPP_FILES ) SET(INTERNAL_CPP_FILES + mitkPluginActivator.cpp QmitkPythonConsoleView.cpp QmitkPythonEditor.cpp QmitkPythonScriptEditor.cpp QmitkPythonVariableStack.cpp QmitkPythonCommandHistory.cpp QmitkPythonScriptEditorHighlighter.cpp QmitkPythonCommandHistoryTreeWidget.cpp QmitkPythonVariableStackTreeWidget.cpp QmitkPythonTextEditor.cpp QmitkCTKPythonShell.cpp QmitkPythonMediator.cpp QmitkPythonPerspective.cpp ) SET(UI_FILES src/internal/QmitkPythonConsoleViewControls.ui src/internal/QmitkPythonEditor.ui src/internal/QmitkPythonVariableStack.ui ) SET(MOC_H_FILES + src/internal/mitkPluginActivator.h src/internal/QmitkPythonCommandHistory.h src/internal/QmitkPythonCommandHistoryTreeWidget.h src/internal/QmitkPythonConsoleView.h + src/internal/QmitkPythonEditor.h + src/internal/QmitkPythonPerspective.h src/internal/QmitkPythonScriptEditor.h src/internal/QmitkPythonScriptEditorHighlighter.h src/internal/QmitkPythonTextEditor.h src/internal/QmitkPythonVariableStack.h src/internal/QmitkPythonVariableStackTreeWidget.h ) -SET(RESOURCE_FILES +SET(CACHED_RESOURCE_FILES resources/py.png + plugin.xml ) -SET(RES_FILES +SET(QRC_FILES resources/QmitkPythonConsoleView.qrc ) -SET(CPP_FILES manifest.cpp) - 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}) diff --git a/Modules/Bundles/org.mitk.gui.qt.python.console/manifest.cpp b/Modules/Bundles/org.mitk.gui.qt.python.console/manifest.cpp deleted file mode 100644 index cbb5bb85dc..0000000000 --- a/Modules/Bundles/org.mitk.gui.qt.python.console/manifest.cpp +++ /dev/null @@ -1,39 +0,0 @@ -/*========================================================================= - -Program: Medical Imaging & Interaction Toolkit -Language: C++ -Date: $Date$ -Version: $Revision$ - -Copyright (c) German Cancer Research Center, Division of Medical and -Biological Informatics. All rights reserved. -See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. - -This software is distributed WITHOUT ANY WARRANTY; without even -the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR -PURPOSE. See the above copyright notices for more information. - -=========================================================================*/ - -#include - - -#include "src/internal/QmitkPythonEditor.h" -#include "src/internal/QmitkPythonConsoleView.h" -#include "src/internal/QmitkPythonVariableStack.h" -#include "src/internal/QmitkPythonCommandHistory.h" -#include "src/internal/QmitkPythonPerspective.h" - -POCO_BEGIN_NAMED_MANIFEST(berryIEditorPart, berry::IEditorPart) - POCO_EXPORT_CLASS(::QmitkPythonEditor) -POCO_END_MANIFEST - -POCO_BEGIN_NAMED_MANIFEST(berryIViewPart, berry::IViewPart) - POCO_EXPORT_CLASS(::QmitkPythonConsoleView) - POCO_EXPORT_CLASS(::QmitkPythonVariableStack) - POCO_EXPORT_CLASS(::QmitkPythonCommandHistory) -POCO_END_MANIFEST - -POCO_BEGIN_NAMED_MANIFEST(berryIPerspectiveFactory, berry::IPerspectiveFactory) - POCO_EXPORT_CLASS(QmitkPythonPerspective) -POCO_END_MANIFEST diff --git a/Modules/Bundles/org.mitk.gui.qt.python.console/manifest_headers.cmake b/Modules/Bundles/org.mitk.gui.qt.python.console/manifest_headers.cmake new file mode 100644 index 0000000000..00f0378505 --- /dev/null +++ b/Modules/Bundles/org.mitk.gui.qt.python.console/manifest_headers.cmake @@ -0,0 +1,5 @@ +set(Plugin-Name "MITK Python Console") +set(Plugin-Version "0.9") +set(Plugin-Vendor "DKFZ, Medical and Biological Informatics") +set(Plugin-ContactAddress "http://www.mitk.org") +set(Require-Plugin org.mitk.gui.qt.common) \ No newline at end of file diff --git a/Modules/Bundles/org.mitk.gui.qt.python.console/plugin.xml b/Modules/Bundles/org.mitk.gui.qt.python.console/plugin.xml index a8b476c6b6..f3b35730b1 100644 --- a/Modules/Bundles/org.mitk.gui.qt.python.console/plugin.xml +++ b/Modules/Bundles/org.mitk.gui.qt.python.console/plugin.xml @@ -1,43 +1,43 @@ diff --git a/Modules/Bundles/org.mitk.gui.qt.python.console/src/ConsoleDll.h b/Modules/Bundles/org.mitk.gui.qt.python.console/src/ConsoleDll.h deleted file mode 100644 index 7a08ab3755..0000000000 --- a/Modules/Bundles/org.mitk.gui.qt.python.console/src/ConsoleDll.h +++ /dev/null @@ -1,43 +0,0 @@ -/*========================================================================= - -Program: Medical Imaging & Interaction Toolkit -Language: C++ -Date: $Date$ -Version: $Revision$ - -Copyright (c) German Cancer Research Center, Division of Medical and -Biological Informatics. All rights reserved. -See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. - -This software is distributed WITHOUT ANY WARRANTY; without even -the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR -PURPOSE. See the above copyright notices for more information. - -=========================================================================*/ - -#ifndef _CONSOLE_EXPORT_DLL_H_ -#define _CONSOLE_EXPORT_DLL_H_ - - -// -// The following block is the standard way of creating macros which make exporting -// from a DLL simpler. All files within this DLL are compiled with the org_mitk_gui_qt_python_console_EXPORTS -// symbol defined on the command line. this symbol should not be defined on any project -// that uses this DLL. This way any other project whose source files include this file see -// org_mitk_gui_qt_python_console_EXPORTS functions as being imported from a DLL, wheras this DLL sees symbols -// defined with this macro as being exported. -// -#if defined(_WIN32) && !defined(MITK_STATIC) - #if defined(org_mitk_gui_qt_python_console_EXPORTS) - #define CONSOLE_EXPORT __declspec(dllexport) - #else - #define CONSOLE_EXPORT __declspec(dllimport) - #endif -#endif - - -#if !defined(CONSOLE_EXPORT) - #define CONSOLE_EXPORT -#endif - -#endif /*_CONSOLE_EXPORT_DLL_H_*/ diff --git a/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/QmitkPythonCommandHistory.h b/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/QmitkPythonCommandHistory.h index ab8d4547a3..4f4148eedf 100644 --- a/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/QmitkPythonCommandHistory.h +++ b/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/QmitkPythonCommandHistory.h @@ -1,75 +1,80 @@ /*========================================================================= Program: Medical Imaging & Interaction Toolkit Language: C++ Date: $Date$ Version: $Revision$ Copyright (c) German Cancer Research Center, Division of Medical and Biological Informatics. All rights reserved. See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notices for more information. =========================================================================*/ #ifndef QmitkPythonCommandHistory_h #define QmitkPythonCommandHistory_h #include #include #include #include #include #include #include #include #include #include #include #include #include #include "QmitkPythonCommandHistoryTreeWidget.h" #include "QmitkPythonMediator.h" class QmitkPythonCommandHistory : public QmitkFunctionality, public QmitkPythonClient { // 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; QmitkPythonCommandHistory(); + QmitkPythonCommandHistory(const QmitkPythonCommandHistory& other) + { + Q_UNUSED(other) + throw std::runtime_error("Copy constructor not implemented"); + } virtual ~QmitkPythonCommandHistory(); virtual void CreateQtPartControl(QWidget *parent); virtual void StdMultiWidgetAvailable (QmitkStdMultiWidget &stdMultiWidget); virtual void StdMultiWidgetNotAvailable(); void SetCommandHistory(std::vector); virtual void update(); public slots: void AddCommand(const QString&); protected slots: private: QmitkStdMultiWidget* m_MultiWidget; std::vector m_commandHistory; QmitkPythonCommandHistoryTreeWidget *m_treeWidget; QmitkPythonMediator *m_PythonMediator; }; #endif // _QMITKPYTHONCONSOLEVIEW_H_INCLUDED diff --git a/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/QmitkPythonConsoleView.h b/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/QmitkPythonConsoleView.h index 2809b3855a..9fee3da9fe 100644 --- a/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/QmitkPythonConsoleView.h +++ b/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/QmitkPythonConsoleView.h @@ -1,93 +1,98 @@ /*========================================================================= Program: Medical Imaging & Interaction Toolkit Language: C++ Date: $Date$ Version: $Revision$ Copyright (c) German Cancer Research Center, Division of Medical and Biological Informatics. All rights reserved. See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notices for more information. =========================================================================*/ #ifndef QmitkPythonConsoleView_h #define QmitkPythonConsoleView_h #include #include #include "QmitkPythonEditor.h" #include #include #include #include #include #include #include #include #include #include #include //#include "ctkPythonShell.h" #include "QmitkCTKPythonShell.h" #include "ctkAbstractPythonManager.h" #include "QmitkPythonMediator.h" /*! \brief QmitkPythonConsoleView \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 QmitkPythonConsoleView : public QmitkFunctionality, public QmitkPythonClient { // 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; QmitkPythonConsoleView(); + QmitkPythonConsoleView(const QmitkPythonConsoleView& other) + { + Q_UNUSED(other) + throw std::runtime_error("Copy constructor not implemented"); + } virtual ~QmitkPythonConsoleView(); virtual void CreateQtPartControl(QWidget *parent); virtual void StdMultiWidgetAvailable (QmitkStdMultiWidget &stdMultiWidget); virtual void StdMultiWidgetNotAvailable(); virtual void NodeAdded(const mitk::DataNode* node); virtual void update(); QmitkPythonMediator *getPythonMediator(); protected slots: void OpenEditor(); void SetCommandHistory(const QString&); protected: virtual void OnSelectionChanged( std::vector nodes ); QmitkStdMultiWidget* m_MultiWidget; berry::SmartPointer m_PythonEditor; private: FILE * m_scriptFile; ctkPythonShell *m_ctkPythonShell; ctkAbstractPythonManager *m_ctkPythonManager; QPushButton *m_ButtonOpenEditor; QmitkPythonMediator *m_PythonMediator; }; #endif // _QMITKPYTHONCONSOLEVIEW_H_INCLUDED diff --git a/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/QmitkPythonEditor.h b/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/QmitkPythonEditor.h index 4dcbacd374..05802064f0 100644 --- a/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/QmitkPythonEditor.h +++ b/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/QmitkPythonEditor.h @@ -1,63 +1,70 @@ /*========================================================================= Program: Medical Imaging & Interaction Toolkit Language: C++ Date: $Date$ Version: $Revision$ Copyright (c) German Cancer Research Center, Division of Medical and Biological Informatics. All rights reserved. See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notices for more information. =========================================================================*/ #ifndef QMITKPYTHONEDITOR_H_ #define QMITKPYTHONEDITOR_H_ #include #include #include #include "mitkQtCommonDll.h" #include #include #include #include "QmitkPythonScriptEditor.h" class QmitkPythonEditor : public berry::QtEditorPart, virtual public berry::IPartListener { + Q_OBJECT + public: berryObjectMacro(QmitkPythonEditor); static const std::string EDITOR_ID; QmitkPythonEditor(); + QmitkPythonEditor(const QmitkPythonEditor& other) + { + Q_UNUSED(other) + throw std::runtime_error("Copy constructor not implemented"); + } ~QmitkPythonEditor(); void Init(berry::IEditorSite::Pointer site, berry::IEditorInput::Pointer input); void SetFocus(); void DoSave() {} void DoSaveAs() {} bool IsDirty() const { return false; } bool IsSaveAsAllowed() const { return false; } protected: void CreateQtPartControl(QWidget* parent); Events::Types GetPartEventTypes() const; private: QmitkPythonScriptEditor *m_PythonScriptEditor; }; #endif diff --git a/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/QmitkPythonPerspective.h b/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/QmitkPythonPerspective.h index 179e99e316..61d9094f28 100644 --- a/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/QmitkPythonPerspective.h +++ b/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/QmitkPythonPerspective.h @@ -1,31 +1,40 @@ /*========================================================================= Program: Medical Imaging & Interaction Toolkit Language: C++ Date: $Date$ Version: $Revision$ Copyright (c) German Cancer Research Center, Division of Medical and Biological Informatics. All rights reserved. See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notices for more information. =========================================================================*/ #ifndef QMITKPYTHONPERSPECTIVE_H_ #define QMITKPYTHONPERSPECTIVE_H_ #include +#include -struct QmitkPythonPerspective : public berry::IPerspectiveFactory +struct QmitkPythonPerspective : public QObject, public berry::IPerspectiveFactory { + + Q_OBJECT void CreateInitialLayout(berry::IPageLayout::Pointer layout); + + QmitkPythonPerspective(const QmitkPythonPerspective& other) + { + Q_UNUSED(other) + throw std::runtime_error("Copy constructor not implemented"); + } }; #endif /* QMITKEXTDEFAULTPERSPECTIVE_H_ */ diff --git a/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/QmitkPythonVariableStack.h b/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/QmitkPythonVariableStack.h index 9c2754dd7e..6d48dfc0dc 100644 --- a/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/QmitkPythonVariableStack.h +++ b/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/QmitkPythonVariableStack.h @@ -1,95 +1,100 @@ /*========================================================================= Program: Medical Imaging & Interaction Toolkit Language: C++ Date: $Date$ Version: $Revision$ Copyright (c) German Cancer Research Center, Division of Medical and Biological Informatics. All rights reserved. See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notices for more information. =========================================================================*/ #ifndef _QMITKPYTHONVARIABLESTACK_H #define _QMITKPYTHONVARIABLESTACK_H #include #include "berryISizeProvider.h" #include #include #include #include "QmitkStepperAdapter.h" #include "ui_QmitkPythonVariableStack.h" #include "QmitkPythonVariableStackTreeWidget.h" #include #include "berryISizeProvider.h" #include #include #include #include #include #include #include #include /*! * \ingroup org_mitk_gui_qt_imagenavigator_internal * * \brief QmitkPythonVariableStack * * Document your class here. * * \sa QmitkFunctionality */ -class QmitkPythonVariableStack : public QObject, public berry::QtViewPart, public berry::ISizeProvider +class QmitkPythonVariableStack : public berry::QtViewPart, public berry::ISizeProvider { // this is needed for all Qt objects that should have a MOC object (everything that derives from QObject) Q_OBJECT public: static const std::string VIEW_ID; QmitkPythonVariableStack(); + QmitkPythonVariableStack(const QmitkPythonVariableStack& other) + { + Q_UNUSED(other) + throw std::runtime_error("Copy constructor not implemented"); + } virtual ~QmitkPythonVariableStack(); virtual void CreateQtPartControl(QWidget *parent); QmitkStdMultiWidget* GetActiveStdMultiWidget(); void SetFocus(); virtual int GetSizeFlags(bool width); virtual int ComputePreferredSize(bool width, int /*availableParallel*/, int /*availablePerpendicular*/, int preferredResult); QmitkPythonVariableStackTreeWidget* getModel(); public slots: protected slots: protected: QmitkStdMultiWidget* m_MultiWidget; QTableWidget *m_tableWidget; Ui::QmitkPythonConsoleViewControls* m_Controls; QmitkPythonVariableStackTreeWidget* m_treeModel; private: }; #endif // _QmitkPythonVariableStack_H_INCLUDED diff --git a/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/mitkPluginActivator.cpp b/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/mitkPluginActivator.cpp new file mode 100644 index 0000000000..2fe9dc1565 --- /dev/null +++ b/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/mitkPluginActivator.cpp @@ -0,0 +1,29 @@ +#include "mitkPluginActivator.h" + +#include "QmitkPythonConsoleView.h" +#include "QmitkPythonVariableStack.h" +#include "QmitkPythonCommandHistory.h" +#include "QmitkPythonEditor.h" +#include "QmitkPythonPerspective.h" + +#include + +namespace mitk { + + void PluginActivator::start(ctkPluginContext* context) + { + BERRY_REGISTER_EXTENSION_CLASS(QmitkPythonConsoleView, context) + BERRY_REGISTER_EXTENSION_CLASS(QmitkPythonVariableStack, context) + BERRY_REGISTER_EXTENSION_CLASS(QmitkPythonCommandHistory, context) + BERRY_REGISTER_EXTENSION_CLASS(QmitkPythonEditor, context) + BERRY_REGISTER_EXTENSION_CLASS(QmitkPythonPerspective, context) + } + + void PluginActivator::stop(ctkPluginContext* context) + { + Q_UNUSED(context) + } + +} + +Q_EXPORT_PLUGIN2(org_mitk_gui_qt_imagenavigator, mitk::PluginActivator) \ No newline at end of file diff --git a/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/mitkPluginActivator.h b/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/mitkPluginActivator.h new file mode 100644 index 0000000000..0f2c61ef1b --- /dev/null +++ b/Modules/Bundles/org.mitk.gui.qt.python.console/src/internal/mitkPluginActivator.h @@ -0,0 +1,23 @@ +#ifndef MITKPLUGINACTIVATOR_H +#define MITKPLUGINACTIVATOR_H + +#include + +namespace mitk { + + class PluginActivator : + public QObject, public ctkPluginActivator + { + Q_OBJECT + Q_INTERFACES(ctkPluginActivator) + + public: + + void start(ctkPluginContext* context); + void stop(ctkPluginContext* context); + + }; // PluginActivator + +} + +#endif // MITKPLUGINACTIVATOR_H \ No newline at end of file diff --git a/Modules/Bundles/org.mitk.gui.qt.videoplayer/CMakeLists.txt b/Modules/Bundles/org.mitk.gui.qt.videoplayer/CMakeLists.txt index 38b6a7f9a4..fbd4e708d2 100755 --- a/Modules/Bundles/org.mitk.gui.qt.videoplayer/CMakeLists.txt +++ b/Modules/Bundles/org.mitk.gui.qt.videoplayer/CMakeLists.txt @@ -1,3 +1,9 @@ -IF(MITK_USE_OpenCV) -MACRO_CREATE_MITK_PLUGIN(mitkOpenCVVideoSupportUI) -ENDIF(MITK_USE_OpenCV) +# The project name must correspond to the directory name of your plug-in +# and must not contain periods. +PROJECT(org_mitk_gui_qt_videoplayer) + +MACRO_CREATE_MITK_CTK_PLUGIN( + EXPORT_DIRECTIVE VIDEOPLAYER_EXPORTS + EXPORTED_INCLUDE_SUFFIXES src + MODULE_DEPENDENCIES mitkOpenCVVideoSupportUI +) \ No newline at end of file diff --git a/Modules/Bundles/org.mitk.gui.qt.videoplayer/META-INF/MANIFEST.MF b/Modules/Bundles/org.mitk.gui.qt.videoplayer/META-INF/MANIFEST.MF deleted file mode 100755 index 926ae0c9a2..0000000000 --- a/Modules/Bundles/org.mitk.gui.qt.videoplayer/META-INF/MANIFEST.MF +++ /dev/null @@ -1,6 +0,0 @@ -Manifest-Version: 1.0 -Bundle-Name: Video Player -Bundle-SymbolicName: org.mitk.gui.qt.videoplayer -Bundle-Version: 1.0.0 -Bundle-Vendor: DKFZ, Medical and Biological Informatics -Require-Bundle: org.mitk.gui.qt.common \ No newline at end of file diff --git a/Modules/Bundles/org.mitk.gui.qt.videoplayer/files.cmake b/Modules/Bundles/org.mitk.gui.qt.videoplayer/files.cmake index 06ec953cd9..90b9d51e33 100755 --- a/Modules/Bundles/org.mitk.gui.qt.videoplayer/files.cmake +++ b/Modules/Bundles/org.mitk.gui.qt.videoplayer/files.cmake @@ -1,28 +1,29 @@ SET(SRC_CPP_FILES ) SET(INTERNAL_CPP_FILES QmitkVideoPlayer.cpp + mitkPluginActivator.cpp ) SET(MOC_H_FILES + src/internal/mitkPluginActivator.h + src/internal/QmitkVideoPlayer.h ) -SET(RESOURCE_FILES +SET(CACHED_RESOURCE_FILES resources/videoplayer.gif + plugin.xml ) -SET(RES_FILES +SET(QRC_FILES ) - -SET(CPP_FILES manifest.cpp) - 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}) diff --git a/Modules/Bundles/org.mitk.gui.qt.videoplayer/manifest.cpp b/Modules/Bundles/org.mitk.gui.qt.videoplayer/manifest.cpp deleted file mode 100755 index bee0e8e4e2..0000000000 --- a/Modules/Bundles/org.mitk.gui.qt.videoplayer/manifest.cpp +++ /dev/null @@ -1,26 +0,0 @@ -/*========================================================================= - -Program: Medical Imaging & Interaction Toolkit -Language: C++ -Date: $Date: 2009-02-17 20:07:18 +0100 (Tue, 17 Feb 2009) $ -Version: $Revision: 14645 $ - -Copyright (c) German Cancer Research Center, Division of Medical and -Biological Informatics. All rights reserved. -See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. - -This software is distributed WITHOUT ANY WARRANTY; without even -the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR -PURPOSE. See the above copyright notices for more information. - -=========================================================================*/ - -#include - -#include -#include "src/internal/QmitkVideoPlayer.h" - - -POCO_BEGIN_NAMED_MANIFEST(berryIViewPart, berry::IViewPart) - POCO_EXPORT_CLASS(QmitkVideoPlayer) -POCO_END_MANIFEST diff --git a/Modules/Bundles/org.mitk.gui.qt.videoplayer/manifest_headers.cmake b/Modules/Bundles/org.mitk.gui.qt.videoplayer/manifest_headers.cmake new file mode 100644 index 0000000000..87961e64a4 --- /dev/null +++ b/Modules/Bundles/org.mitk.gui.qt.videoplayer/manifest_headers.cmake @@ -0,0 +1,5 @@ +set(Plugin-Name "MITK Video Player") +set(Plugin-Version "1.0") +set(Plugin-Vendor "DKFZ, Medical and Biological Informatics") +set(Plugin-ContactAddress "http://www.mitk.org") +set(Require-Plugin org.mitk.gui.qt.common) \ No newline at end of file diff --git a/Modules/Bundles/org.mitk.gui.qt.videoplayer/src/VideoPlayerDll.h b/Modules/Bundles/org.mitk.gui.qt.videoplayer/src/VideoPlayerDll.h deleted file mode 100755 index d5260342b7..0000000000 --- a/Modules/Bundles/org.mitk.gui.qt.videoplayer/src/VideoPlayerDll.h +++ /dev/null @@ -1,42 +0,0 @@ -/*========================================================================= - -Program: Medical Imaging & Interaction Toolkit -Language: C++ -Date: $Date: 2009-02-10 14:14:32 +0100 (Tue, 10 Feb 2009) $ -Version: $Revision: 14620 $ - -Copyright (c) German Cancer Research Center, Division of Medical and -Biological Informatics. All rights reserved. -See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. - -This software is distributed WITHOUT ANY WARRANTY; without even -the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR -PURPOSE. See the above copyright notices for more information. - -=========================================================================*/ - -#ifndef _VIDEOPLAYER_EXPORTS_DLL_H_ -#define _VIDEOPLAYER_EXPORTS_DLL_H_ - -// -// The following block is the standard way of creating macros which make exporting -// from a DLL simpler. All files within this DLL are compiled with the org_mitk_gui_qt_simpleexample_EXPORTS -// symbol defined on the command line. this symbol should not be defined on any project -// that uses this DLL. This way any other project whose source files include this file see -// org_mitk_gui_qt_simpleexample_EXPORTS functions as being imported from a DLL, wheras this DLL sees symbols -// defined with this macro as being exported. -// -#if defined(_WIN32) && !defined(MITK_STATIC) - #if defined(org_mitk_gui_qt_simpleexample_EXPORTS) - #define VIDEOPLAYER_EXPORTS __declspec(dllexport) - #else - #define VIDEOPLAYER_EXPORTS __declspec(dllimport) - #endif -#endif - - -#if !defined(VIDEOPLAYER_EXPORTS) - #define VIDEOPLAYER_EXPORTS -#endif - -#endif /*_VIDEOPLAYER_EXPORTS_DLL_H_*/ diff --git a/Modules/Bundles/org.mitk.gui.qt.videoplayer/src/internal/QmitkVideoPlayer.h b/Modules/Bundles/org.mitk.gui.qt.videoplayer/src/internal/QmitkVideoPlayer.h index d1195fa68d..3cc38deb63 100755 --- a/Modules/Bundles/org.mitk.gui.qt.videoplayer/src/internal/QmitkVideoPlayer.h +++ b/Modules/Bundles/org.mitk.gui.qt.videoplayer/src/internal/QmitkVideoPlayer.h @@ -1,45 +1,53 @@ /*========================================================================= Program: Medical Imaging & Interaction Toolkit Language: C++ Date: $Date: 2009-03-21 14:46:24 +0100 (Sat, 21 Mar 2009) $ Version: $Revision: 15412 $ Copyright (c) German Cancer Research Center, Division of Medical and Biological Informatics. All rights reserved. See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notices for more information. =========================================================================*/ #if !defined(QmitkVideoPlayer_h) #define QmitkVideoPlayer_h #include #include class QmitkVideoBackground; class QmitkOpenCVVideoControls; /*! \brief Allows to play videos with OpenCV */ class QmitkVideoPlayer: public QmitkFunctionality { + Q_OBJECT + public: QmitkVideoPlayer(); + QmitkVideoPlayer(const QmitkVideoPlayer& other) + { + Q_UNUSED(other) + throw std::runtime_error("Copy constructor not implemented"); + } + virtual ~QmitkVideoPlayer(); virtual bool IsExclusiveFunctionality() const; virtual void StdMultiWidgetAvailable(QmitkStdMultiWidget& stdMultiWidget); protected: // Pseudo Ctor void CreateQtPartControl(QWidget* parent); protected: mitk::OpenCVVideoSource::Pointer m_VideoSource; QmitkVideoBackground* m_VideoBackground; QmitkOpenCVVideoControls* m_OpenCVVideoControls; }; #endif // !defined(QmitkVideoPlayer_h) diff --git a/Modules/Bundles/org.mitk.gui.qt.videoplayer/src/internal/mitkPluginActivator.cpp b/Modules/Bundles/org.mitk.gui.qt.videoplayer/src/internal/mitkPluginActivator.cpp new file mode 100644 index 0000000000..525a9a55bb --- /dev/null +++ b/Modules/Bundles/org.mitk.gui.qt.videoplayer/src/internal/mitkPluginActivator.cpp @@ -0,0 +1,21 @@ +#include "mitkPluginActivator.h" + +#include "QmitkVideoPlayer.h" + +#include + +namespace mitk { + + void PluginActivator::start(ctkPluginContext* context) + { + BERRY_REGISTER_EXTENSION_CLASS(QmitkVideoPlayer, context) + } + + void PluginActivator::stop(ctkPluginContext* context) + { + Q_UNUSED(context) + } + +} + +Q_EXPORT_PLUGIN2(org_mitk_gui_qt_videoplayer, mitk::PluginActivator) \ No newline at end of file diff --git a/Modules/Bundles/org.mitk.gui.qt.videoplayer/src/internal/mitkPluginActivator.h b/Modules/Bundles/org.mitk.gui.qt.videoplayer/src/internal/mitkPluginActivator.h new file mode 100644 index 0000000000..0f2c61ef1b --- /dev/null +++ b/Modules/Bundles/org.mitk.gui.qt.videoplayer/src/internal/mitkPluginActivator.h @@ -0,0 +1,23 @@ +#ifndef MITKPLUGINACTIVATOR_H +#define MITKPLUGINACTIVATOR_H + +#include + +namespace mitk { + + class PluginActivator : + public QObject, public ctkPluginActivator + { + Q_OBJECT + Q_INTERFACES(ctkPluginActivator) + + public: + + void start(ctkPluginContext* context); + void stop(ctkPluginContext* context); + + }; // PluginActivator + +} + +#endif // MITKPLUGINACTIVATOR_H \ No newline at end of file