2002-01-21 23:30:43 +03:00
|
|
|
/*=========================================================================
|
|
|
|
|
|
|
|
Program: Insight Segmentation & Registration Toolkit
|
|
|
|
Module: $RCSfile$
|
|
|
|
Language: C++
|
|
|
|
Date: $Date$
|
|
|
|
Version: $Revision$
|
|
|
|
|
|
|
|
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.
|
|
|
|
|
|
|
|
=========================================================================*/
|
2001-05-17 20:01:30 +04:00
|
|
|
|
|
|
|
#ifndef CMakeSetupGUIImplementation_h
|
|
|
|
#define CMakeSetupGUIImplementation_h
|
|
|
|
|
|
|
|
#include "CMakeSetupGUI.h"
|
2001-05-22 18:43:23 +04:00
|
|
|
#include "FLTKPropertyList.h"
|
2001-07-19 22:31:24 +04:00
|
|
|
#include <set>
|
2001-05-17 20:01:30 +04:00
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
*
|
|
|
|
* This class implements the virtual methods
|
|
|
|
* declared in the GUI interface
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
class CMakeSetupGUIImplementation : public CMakeSetupGUI
|
|
|
|
{
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
|
|
CMakeSetupGUIImplementation();
|
|
|
|
virtual ~CMakeSetupGUIImplementation();
|
|
|
|
virtual void Close( void );
|
|
|
|
virtual void Show( void );
|
2001-05-17 20:36:44 +04:00
|
|
|
virtual void UpdateData( bool option );
|
2001-05-17 20:01:30 +04:00
|
|
|
virtual void BrowseForBinaryPath( void );
|
|
|
|
virtual void BrowseForSourcePath( void );
|
2001-06-12 16:34:29 +04:00
|
|
|
virtual bool SetBinaryPath( const char * path );
|
|
|
|
virtual bool SetSourcePath( const char * path );
|
2001-05-17 20:36:44 +04:00
|
|
|
virtual void SaveCacheFromGUI( void );
|
|
|
|
virtual void LoadCacheFromDiskToGUI( void );
|
|
|
|
virtual void FillCacheGUIFromCacheManager( void );
|
2001-06-11 05:36:04 +04:00
|
|
|
virtual void FillCacheManagerFromCacheGUI( void );
|
2001-06-15 15:51:55 +04:00
|
|
|
virtual void SetPathToExecutable( const char * path );
|
2001-07-19 22:31:24 +04:00
|
|
|
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);
|
2001-10-28 06:47:23 +03:00
|
|
|
virtual void ClickOnConfigure(void);
|
|
|
|
virtual void ClickOnOK(void);
|
|
|
|
virtual void ClickOnCancel(void);
|
|
|
|
virtual void RunCMake( bool generateProjectFiles );
|
2001-05-17 20:01:30 +04:00
|
|
|
|
2001-06-12 16:34:29 +04:00
|
|
|
private:
|
2001-06-12 20:20:33 +04:00
|
|
|
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;
|
2001-06-12 16:34:29 +04:00
|
|
|
|
2001-05-22 18:43:23 +04:00
|
|
|
private:
|
|
|
|
fltk::PropertyList m_CacheEntriesList;
|
2001-06-11 02:19:16 +04:00
|
|
|
std::string m_WhereBuild;
|
|
|
|
std::string m_WhereSource;
|
2001-06-11 09:20:22 +04:00
|
|
|
std::string m_PathToExecutable;
|
2001-10-28 06:47:23 +03:00
|
|
|
std::string m_GeneratorChoiceString;
|
2001-06-11 09:20:22 +04:00
|
|
|
bool m_BuildPathChanged;
|
2001-07-19 22:31:24 +04:00
|
|
|
|
|
|
|
std::set< std::string > m_RecentBinaryDirectories;
|
|
|
|
std::set< std::string > m_RecentSourceDirectories;
|
|
|
|
|
2001-05-17 20:01:30 +04:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
#endif
|