summaryrefslogtreecommitdiffstats
path: root/Source/MFCDialog
diff options
context:
space:
mode:
authorAndy Cedilnik <andy.cedilnik@kitware.com>2004-08-23 18:33:22 (GMT)
committerAndy Cedilnik <andy.cedilnik@kitware.com>2004-08-23 18:33:22 (GMT)
commit75cf590b21d61e1c957e2afc345053a7980634a2 (patch)
treeeac499e2ac14bd61b2b7afe08d7c91c9d3610017 /Source/MFCDialog
parent2dba8e47319cc6f541af11a68f97e826489a2fa1 (diff)
downloadCMake-75cf590b21d61e1c957e2afc345053a7980634a2.zip
CMake-75cf590b21d61e1c957e2afc345053a7980634a2.tar.gz
CMake-75cf590b21d61e1c957e2afc345053a7980634a2.tar.bz2
ENH: Implement PreLoad.cmake feature for CMakeSetup
Diffstat (limited to 'Source/MFCDialog')
-rw-r--r--Source/MFCDialog/CMakeSetupDialog.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/Source/MFCDialog/CMakeSetupDialog.cpp b/Source/MFCDialog/CMakeSetupDialog.cpp
index 5460406..ba6c28f 100644
--- a/Source/MFCDialog/CMakeSetupDialog.cpp
+++ b/Source/MFCDialog/CMakeSetupDialog.cpp
@@ -956,6 +956,19 @@ void CMakeSetupDialog::LoadCacheFromDiskToGUI()
if(m_WhereBuild != "")
{
cachem->LoadCache(m_WhereBuild);
+ cmCacheManager::CacheIterator itm = cachem->NewIterator();
+ if ( itm.Find("CMAKE_HOME_DIRECTORY"))
+ {
+ std::string path = ConvertToWindowsPath(itm.GetValue());
+ this->m_WhereSource = path.c_str();
+ this->m_WhereSourceControl.SetWindowText(this->m_WhereSource);
+ this->OnChangeWhereSource();
+ }
+ m_CMakeInstance->SetHomeDirectory(m_WhereSource);
+ m_CMakeInstance->SetStartDirectory(m_WhereSource);
+ m_CMakeInstance->SetHomeOutputDirectory(m_WhereBuild);
+ m_CMakeInstance->SetStartOutputDirectory(m_WhereBuild);
+ m_CMakeInstance->PreLoadCMakeFiles();
this->FillCacheGUIFromCacheManager();
cmCacheManager::CacheIterator it =
cachem->GetCacheIterator("CMAKE_GENERATOR");