]> Creatis software - clitk.git/commitdiff
disable tools at startup of vv
authormpech <maxime.pech@insa-lyon.fr>
Mon, 23 May 2011 11:49:48 +0000 (13:49 +0200)
committermpech <maxime.pech@insa-lyon.fr>
Mon, 23 May 2011 11:49:48 +0000 (13:49 +0200)
tools are enabled when a ImageInfosChanged is triggered.

vv/vvMainWindow.cxx
vv/vvToolManager.cxx
vv/vvToolManager.h

index 30ef801a6460e5d7f399964ae00d4c706734f155..882e8f121402576e49d4fb52e6df56333dbae0c4 100644 (file)
@@ -318,6 +318,7 @@ vvMainWindow::vvMainWindow():vvMainWindowBase()
 
   // Adding all new tools (insertion in the menu)
   vvToolManager::GetInstance()->InsertToolsInMenu(this);
+  vvToolManager::GetInstance()->EnableToolsInMenu(this, false);
 
   if (!CLITK_EXPERIMENTAL)
     menuExperimental->menuAction()->setVisible(false);
@@ -329,7 +330,6 @@ vvMainWindow::vvMainWindow():vvMainWindowBase()
   timerMemory->start(2000);
 }
 //------------------------------------------------------------------------------
-
 void vvMainWindow::show(){
   vvMainWindowBase::show();
   PopupRegisterForm(true);
@@ -1018,6 +1018,7 @@ void vvMainWindow::ImageInfoChanged()
   actionNorth_West_Window->setEnabled(1);
   actionSouth_East_Window->setEnabled(1);
   actionSouth_West_Window->setEnabled(1);
+  vvToolManager::GetInstance()->EnableToolsInMenu(this, true);
   inverseButton->setEnabled(1);
 
   goToCursorPushButton->setEnabled(1);
index ac699cef92ca5062fe11a3f581bad785e37bd10c..01835f8cda5c82b7e043f240b153c9bde3e8d9a9 100644 (file)
@@ -19,7 +19,7 @@
 #include "vvToolManager.h"
 #include "vvToolCreatorBase.h"
 #include "vvMainWindowBase.h"
-
+#include <QAction>
 //------------------------------------------------------------------------------
 /// Unique static instance
 vvToolManager* vvToolManager::mSingleton=0;
@@ -55,3 +55,13 @@ void vvToolManager::InsertToolsInMenu(vvMainWindowBase * m)
 }
 //------------------------------------------------------------------------------
 
+
+//------------------------------------------------------------------------------
+void vvToolManager::EnableToolsInMenu(vvMainWindowBase * m, bool enable){
+  std::vector<vvToolCreatorBase *>::iterator it;
+  for(it=GetInstance()->mListOfTools.begin(); it!=GetInstance()->mListOfTools.end(); ++it){
+    if((*it)->mAction){
+      (*it)->mAction->setEnabled(enable);
+    }
+  }
+}
index 1c62f16aed98d09e647395fd09233e1cb8a8d091..82d2e5bd4ea649589829f72465cfabdb418b8cdb 100644 (file)
@@ -40,6 +40,9 @@ public:
   /// Called in MainWindow, insert all tools into the menu
   static void InsertToolsInMenu(vvMainWindowBase * m);
   
+  /// Called in MainWindow, make the tools enabled/disabled
+  static void EnableToolsInMenu(vvMainWindowBase * m, bool enable);
+
 protected:
 
   /// Singleton object pointer