]> Creatis software - clitk.git/blob - vv/vvToolCreator.txx
Merge branch 'master' of git://git.creatis.insa-lyon.fr/clitk
[clitk.git] / vv / vvToolCreator.txx
1 /*=========================================================================
2   Program:   vv                     http://www.creatis.insa-lyon.fr/rio/vv
3
4   Authors belong to:
5   - University of LYON              http://www.universite-lyon.fr/
6   - Léon Bérard cancer center       http://www.centreleonberard.fr
7   - CREATIS CNRS laboratory         http://www.creatis.insa-lyon.fr
8
9   This software is distributed WITHOUT ANY WARRANTY; without even
10   the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11   PURPOSE.  See the copyright notices for more information.
12
13   It is distributed under dual licence
14
15   - BSD        See included LICENSE.txt file
16   - CeCILL-B   http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
17 ===========================================================================**/
18
19 //------------------------------------------------------------------------------
20 template<class ToolType>
21 void vvToolCreator<ToolType>::InsertToolInMenu(vvMainWindowBase * m)
22 {
23   mMainWindow = m;
24
25   // Default Initialization
26   mToolMenuName = mToolName;
27   mToolIconFilename = "noicon";
28   mToolTip = mToolName;
29
30   // User Tool Initialization
31   ToolType::Initialize();
32
33   // Common Initialization (insertion into menu)
34   vvToolCreatorBase::InsertToolInMenu(mMainWindow);
35 }
36 //------------------------------------------------------------------------------
37
38 //------------------------------------------------------------------------------
39 template<class ToolType>
40 vvToolCreator<ToolType>* & vvToolCreator<ToolType>::GetInstance()
41 {
42   if(!mSingleton)
43     mSingleton = new vvToolCreator<ToolType>;
44   return mSingleton;
45 }
46 //------------------------------------------------------------------------------