1 /*=========================================================================
3 Program: Insight Segmentation & Registration Toolkit
4 Module: $RCSfile: CMakeSetupGUIImplementation.h,v $
6 Date: $Date: 2005/09/23 21:47:32 $
7 Version: $Revision: 1.14 $
9 Copyright (c) 2002 Insight Consortium. All rights reserved.
10 See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
12 This software is distributed WITHOUT ANY WARRANTY; without even
13 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
14 PURPOSE. See the above copyright notices for more information.
16 =========================================================================*/
18 #ifndef CMakeSetupGUIImplementation_h
19 #define CMakeSetupGUIImplementation_h
21 #include "CMakeSetupGUI.h"
22 #include "FLTKPropertyList.h"
28 * This class implements the virtual methods
29 * declared in the GUI interface
35 class CMakeSetupGUIImplementation
: public CMakeSetupGUI
40 CMakeSetupGUIImplementation();
41 virtual ~CMakeSetupGUIImplementation();
42 virtual void Close( void );
43 virtual void Show( void );
44 virtual void UpdateData( bool option
);
45 virtual void BrowseForBinaryPath( void );
46 virtual void BrowseForSourcePath( void );
47 virtual void SetBinaryPath( const char * path
);
48 virtual void SetSourcePath( const char * path
);
49 virtual void SaveCacheFromGUI( void );
50 virtual void LoadCacheFromDiskToGUI( void );
51 virtual void FillCacheGUIFromCacheManager( void );
52 virtual void FillCacheManagerFromCacheGUI( void );
53 virtual void SetPathToExecutable( const char * path
);
54 virtual void LoadRecentDirectories(void);
55 virtual void SaveRecentDirectories(void);
56 virtual void ShowRecentBinaryDirectories(void);
57 virtual void ShowRecentSourceDirectories(void);
58 virtual void SelectOneRecentSourceDirectory(void);
59 virtual void SelectOneRecentBinaryDirectory(void);
60 virtual void UpdateListOfRecentDirectories(void);
61 virtual void ClickOnConfigure(void);
62 virtual void ClickOnOK(void);
63 virtual void ClickOnCancel(void);
64 virtual void RunCMake( bool generateProjectFiles
);
65 cmake
*GetCMakeInstance() {return m_CMakeInstance
; }
67 virtual bool VerifyBinaryPath( const std::string
& path
) const;
68 virtual bool VerifySourcePath( const std::string
& path
) const;
69 virtual std::string
ExpandPathAndMakeItAbsolute( const std::string
& inputPath
) const;
72 fltk::PropertyList m_CacheEntriesList
;
73 std::string m_WhereBuild
;
74 std::string m_WhereSource
;
75 std::string m_PathToExecutable
;
76 std::string m_GeneratorChoiceString
;
77 bool m_BuildPathChanged
;
79 std::set
< std::string
> m_RecentBinaryDirectories
;
80 std::set
< std::string
> m_RecentSourceDirectories
;
81 cmake
*m_CMakeInstance
;