You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
86 lines
2.8 KiB
86 lines
2.8 KiB
16 years ago
|
/*=========================================================================
|
||
|
|
||
|
Program: Insight Segmentation & Registration Toolkit
|
||
|
Module: $RCSfile: CMakeSetupGUIImplementation.h,v $
|
||
|
Language: C++
|
||
|
Date: $Date: 2005-09-23 21:47:32 $
|
||
|
Version: $Revision: 1.14 $
|
||
|
|
||
|
Copyright (c) 2002 Insight Consortium. All rights reserved.
|
||
|
See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
|
||
|
|
||
|
This software is distributed WITHOUT ANY WARRANTY; without even
|
||
|
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||
|
PURPOSE. See the above copyright notices for more information.
|
||
|
|
||
|
=========================================================================*/
|
||
|
|
||
|
#ifndef CMakeSetupGUIImplementation_h
|
||
|
#define CMakeSetupGUIImplementation_h
|
||
|
|
||
|
#include "CMakeSetupGUI.h"
|
||
|
#include "FLTKPropertyList.h"
|
||
|
#include <set>
|
||
|
|
||
|
|
||
|
/**
|
||
|
*
|
||
|
* This class implements the virtual methods
|
||
|
* declared in the GUI interface
|
||
|
*
|
||
|
*/
|
||
|
|
||
|
class cmake;
|
||
|
|
||
|
class CMakeSetupGUIImplementation : public CMakeSetupGUI
|
||
|
{
|
||
|
|
||
|
public:
|
||
|
|
||
|
CMakeSetupGUIImplementation();
|
||
|
virtual ~CMakeSetupGUIImplementation();
|
||
|
virtual void Close( void );
|
||
|
virtual void Show( void );
|
||
|
virtual void UpdateData( bool option );
|
||
|
virtual void BrowseForBinaryPath( void );
|
||
|
virtual void BrowseForSourcePath( void );
|
||
|
virtual void SetBinaryPath( const char * path );
|
||
|
virtual void SetSourcePath( const char * path );
|
||
|
virtual void SaveCacheFromGUI( void );
|
||
|
virtual void LoadCacheFromDiskToGUI( void );
|
||
|
virtual void FillCacheGUIFromCacheManager( void );
|
||
|
virtual void FillCacheManagerFromCacheGUI( void );
|
||
|
virtual void SetPathToExecutable( const char * path );
|
||
|
virtual void LoadRecentDirectories(void);
|
||
|
virtual void SaveRecentDirectories(void);
|
||
|
virtual void ShowRecentBinaryDirectories(void);
|
||
|
virtual void ShowRecentSourceDirectories(void);
|
||
|
virtual void SelectOneRecentSourceDirectory(void);
|
||
|
virtual void SelectOneRecentBinaryDirectory(void);
|
||
|
virtual void UpdateListOfRecentDirectories(void);
|
||
|
virtual void ClickOnConfigure(void);
|
||
|
virtual void ClickOnOK(void);
|
||
|
virtual void ClickOnCancel(void);
|
||
|
virtual void RunCMake( bool generateProjectFiles );
|
||
|
cmake *GetCMakeInstance() {return m_CMakeInstance; }
|
||
|
private:
|
||
|
virtual bool VerifyBinaryPath( const std::string & path ) const;
|
||
|
virtual bool VerifySourcePath( const std::string & path ) const;
|
||
|
virtual std::string ExpandPathAndMakeItAbsolute( const std::string & inputPath ) const;
|
||
|
|
||
|
private:
|
||
|
fltk::PropertyList m_CacheEntriesList;
|
||
|
std::string m_WhereBuild;
|
||
|
std::string m_WhereSource;
|
||
|
std::string m_PathToExecutable;
|
||
|
std::string m_GeneratorChoiceString;
|
||
|
bool m_BuildPathChanged;
|
||
|
|
||
|
std::set< std::string > m_RecentBinaryDirectories;
|
||
|
std::set< std::string > m_RecentSourceDirectories;
|
||
|
cmake *m_CMakeInstance;
|
||
|
};
|
||
|
|
||
|
|
||
|
#endif
|