1 /*=========================================================================
4 Module: $RCSfile: vvToolBase.h,v $
6 Date: $Date: 2010/03/01 07:37:25 $
7 Version: $Revision: 1.4 $
8 Author : David Sarrut (david.sarrut@creatis.insa-lyon.fr)
11 Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr
12 CREATIS http://www.creatis.insa-lyon.fr
14 This program is free software: you can redistribute it and/or modify
15 it under the terms of the GNU General Public License as published by
16 the Free Software Foundation, version 3 of the License.
18 This program is distributed in the hope that it will be useful,
19 but WITHOUT ANY WARRANTY; without even the implied warranty of
20 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 GNU General Public License for more details.
23 You should have received a copy of the GNU General Public License
24 along with this program. If not, see <http://www.gnu.org/licenses/>.
26 =========================================================================*/
31 #include "vvToolBaseBase.h"
32 #include "vvToolCreator.h"
34 //------------------------------------------------------------------------------
35 template<class ToolType>
36 class vvToolBase : public vvToolBaseBase {
38 vvToolBase(vvMainWindowBase * m);
39 static void Initialize(); // can't be virtual, must be overwritten
41 static void SetToolName(QString n) { vvToolCreator<ToolType>::mSingleton->mToolName = n; }
42 static void SetToolMenuName(QString n) { vvToolCreator<ToolType>::mSingleton->mToolMenuName = n; }
43 static void SetToolIconFilename(QString n) { vvToolCreator<ToolType>::mSingleton->mToolIconFilename = n; }
44 static void SetToolTip(QString n) { vvToolCreator<ToolType>::mSingleton->mToolTip = n; }
46 void AddImage(vvImage::Pointer image,std::string filename) {
47 CREATOR(ToolType)->GetMainWindow()->AddImage(image,filename);
51 //------------------------------------------------------------------------------
53 #include "vvToolBase.txx"