X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvToolBase.h;h=3cd4fbfd2acc55b466b98d435c5db46b0ee0715a;hb=08293e0d20ffba488a0808c66ffca457552f5d8e;hp=535fa23dcd60ea80185a4ce0bf7362f3344e2aa7;hpb=0b7c9b1e1215634b02cbd38d4e4ba101d6111ba8;p=clitk.git diff --git a/vv/vvToolBase.h b/vv/vvToolBase.h index 535fa23..3cd4fbf 100644 --- a/vv/vvToolBase.h +++ b/vv/vvToolBase.h @@ -3,7 +3,7 @@ Authors belong to: - University of LYON http://www.universite-lyon.fr/ - - Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr + - Léon Bérard cancer center http://www.centreleonberard.fr - CREATIS CNRS laboratory http://www.creatis.insa-lyon.fr This software is distributed WITHOUT ANY WARRANTY; without even @@ -14,29 +14,42 @@ - BSD See included LICENSE.txt file - CeCILL-B http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html -======================================================================-====*/ +===========================================================================**/ + #ifndef VVTOOLBASE_H #define VVTOOLBASE_H + #include "vvToolBaseBase.h" #include "vvToolCreator.h" +#include //------------------------------------------------------------------------------ template class vvToolBase : public vvToolBaseBase { public: vvToolBase(vvMainWindowBase * m); + virtual ~vvToolBase() {}; + static void Initialize(); // can't be virtual, must be overwritten - static void SetToolName(QString n) { vvToolCreator::mSingleton->mToolName = n; } - static void SetToolMenuName(QString n) { vvToolCreator::mSingleton->mToolMenuName = n; } - static void SetToolIconFilename(QString n) { vvToolCreator::mSingleton->mToolIconFilename = n; } - static void SetToolTip(QString n) { vvToolCreator::mSingleton->mToolTip = n; } - static void SetToolExperimental(bool exp) { vvToolCreator::mSingleton->mExperimental = exp; } + static void SetToolName(QString n) { vvToolCreator::GetInstance()->mToolName = n; } + static void SetToolMenuName(QString n) { vvToolCreator::GetInstance()->mToolMenuName = n; } + static void SetToolIconFilename(QString n) { vvToolCreator::GetInstance()->mToolIconFilename = n; } + static void SetToolTip(QString n) { vvToolCreator::GetInstance()->mToolTip = n; } + static void SetToolExperimental(bool exp) { vvToolCreator::GetInstance()->mExperimental = exp; } + static void SetToolInMenu(std::string menu) { vvToolCreator::GetInstance()->SetMenuName(menu); } - void AddImage(vvImage::Pointer image,std::string filename) { - CREATOR(ToolType)->GetMainWindow()->AddImage(image,filename); + static QIcon GetToolIcon() { return QIcon(vvToolCreator::GetInstance()->mToolIconFilename); } + static QString & GetToolName() { return vvToolCreator::GetInstance()->mToolName; } + + vvSlicerManager * AddImage(vvImage::Pointer image,std::string filename) { + return CREATOR(ToolType)->GetMainWindow()->AddImage(image,filename); } + void setSender(QObject *s) { mSender = s; } + + protected: + QObject * mSender; }; //------------------------------------------------------------------------------