X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvToolCreatorBase.cxx;h=075e3352913d6ed59123d7aa866e21cd35b0e5a1;hb=83eb68efc39ad8fcb5e4e684afafcfc86b829c96;hp=e5d60bde56758cbde8adf32252e004563d7e1877;hpb=529927957a38b6b150c55d184479025d376c0c22;p=clitk.git diff --git a/vv/vvToolCreatorBase.cxx b/vv/vvToolCreatorBase.cxx index e5d60bd..075e335 100644 --- a/vv/vvToolCreatorBase.cxx +++ b/vv/vvToolCreatorBase.cxx @@ -1,9 +1,9 @@ /*========================================================================= Program: vv http://www.creatis.insa-lyon.fr/rio/vv - Authors belong to: + 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,7 +14,7 @@ - BSD See included LICENSE.txt file - CeCILL-B http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html -======================================================================-====*/ +===========================================================================**/ #include "vvToolCreatorBase.h" #include "vvToolManager.h" @@ -22,47 +22,58 @@ #include //------------------------------------------------------------------------------ -vvToolCreatorBase::vvToolCreatorBase(QString name): mExperimental(false) { +vvToolCreatorBase::vvToolCreatorBase(QString name): mAction(NULL), mExperimental(false) +{ mUseContextMenu = false; mToolName = name; - vvToolManager::GetInstance()->AddTool(this); + m_MenuName = "Tools"; + mReadStateFlag = false; + mImageIndex = 0; + vvToolManager::GetInstance()->AddTool(this); } //------------------------------------------------------------------------------ //------------------------------------------------------------------------------ -void vvToolCreatorBase::MenuToolSlot() { - mSender = QObject::sender(); - MenuSpecificToolSlot(); +void vvToolCreatorBase::MenuToolSlot() +{ + mSender = QObject::sender(); + MenuSpecificToolSlot(); } //------------------------------------------------------------------------------ //------------------------------------------------------------------------------ -void vvToolCreatorBase::InsertToolInMenu(vvMainWindowBase * m) { - mMainWindow = m; +void vvToolCreatorBase::InsertToolInMenu(vvMainWindowBase * m) +{ + mMainWindow = m; if (mUseContextMenu) { InsertToolInContextMenu(); - return; + return; } // Create main action - if (mToolIconFilename == "noicon") + if (mToolIconFilename == "noicon") mAction = new QAction(QString("&").append(mToolMenuName), this); - else - mAction = new QAction(QIcon(mToolIconFilename), + else { + mAction = new QAction(QIcon(mToolIconFilename), QString("&").append(mToolMenuName), this); + mAction->setIconVisibleInMenu(true); + } + mAction->setStatusTip(mToolTip); // Connect the action connect(mAction, SIGNAL(triggered()), this, SLOT(MenuToolSlot())); if (mExperimental) - mMainWindow->GetExperimentalToolMenu()->addAction(mAction); - else - mMainWindow->GetToolMenu()->addAction(mAction); -} + mMainWindow->GetExperimentalToolMenu()->addAction(mAction); + else { + mMainWindow->GetMenu(m_MenuName)->addAction(mAction); + } +} //------------------------------------------------------------------------------ //------------------------------------------------------------------------------ -void vvToolCreatorBase::InsertToolInContextMenu() { +void vvToolCreatorBase::InsertToolInContextMenu() +{ mMainWindow->GetContextMenu()->addMenu(mToolMenu); for(unsigned int i=0; iactions().size(); i++) { mListOfActions.push_back(m->actions()[i]);