diff options
author | Andy Cedilnik <andy.cedilnik@kitware.com> | 2002-09-11 18:38:45 (GMT) |
---|---|---|
committer | Andy Cedilnik <andy.cedilnik@kitware.com> | 2002-09-11 18:38:45 (GMT) |
commit | c41fe4f1790a8eade0edcdf66f0158e554c8e1ff (patch) | |
tree | d0402ad8aff74f4a56c92c706baa1c35d160f784 /Source/MFCDialog | |
parent | 62d654abaefae34ad5761c7036a057a2d65e5891 (diff) | |
download | CMake-c41fe4f1790a8eade0edcdf66f0158e554c8e1ff.zip CMake-c41fe4f1790a8eade0edcdf66f0158e554c8e1ff.tar.gz CMake-c41fe4f1790a8eade0edcdf66f0158e554c8e1ff.tar.bz2 |
Fix MFC GUI
Diffstat (limited to 'Source/MFCDialog')
-rw-r--r-- | Source/MFCDialog/CMakeSetupDialog.cpp | 91 |
1 files changed, 45 insertions, 46 deletions
diff --git a/Source/MFCDialog/CMakeSetupDialog.cpp b/Source/MFCDialog/CMakeSetupDialog.cpp index fe54487..4dec7f3 100644 --- a/Source/MFCDialog/CMakeSetupDialog.cpp +++ b/Source/MFCDialog/CMakeSetupDialog.cpp @@ -654,13 +654,12 @@ void CMakeSetupDialog::OnChangeWhereBuild() cache_file += "/CMakeCache.txt"; cmCacheManager *cachem = this->m_CMakeInstance->GetCacheManager(); - + cmCacheManager::CacheIterator it = cachem->NewIterator(); if (cmSystemTools::FileExists(cache_file.c_str()) && cachem->LoadCache(path.c_str()) && - cachem->GetCacheEntry("CMAKE_HOME_DIRECTORY")) + it.Find("CMAKE_HOME_DIRECTORY")) { - path = ConvertToWindowsPath( - cachem->GetCacheEntry("CMAKE_HOME_DIRECTORY")->m_Value.c_str()); + path = ConvertToWindowsPath(it.GetValue()); this->m_WhereSource = path.c_str(); this->m_WhereSourceControl.SetWindowText(this->m_WhereSource); this->OnChangeWhereSource(); @@ -698,33 +697,33 @@ void CMakeSetupDialog::FillCacheGUIFromCacheManager() !i.IsAtEnd(); i.Next()) { const char* key = i.GetName(); - cmCacheManager::CacheEntry value = i.GetEntry(); // if value has trailing space or tab, enclose it in single quotes // to enforce the fact that it has 'invisible' trailing stuff - if (value.m_Value.size() && - (value.m_Value[value.m_Value.size() - 1] == ' ' || - value.m_Value[value.m_Value.size() - 1] == '\t')) + std::string value = i.GetValue(); + if (value.size() && + (value[value.size() - 1] == ' ' || + value[value.size() - 1] == '\t')) { - value.m_Value = '\'' + value.m_Value + '\''; + value = '\'' + value + '\''; } if(!m_AdvancedValues) { - if(cachem->IsAdvanced(key)) + if(i.GetPropertyAsBool("ADVANCED")) { m_CacheEntriesList.RemoveProperty(key); continue; } } - switch(value.m_Type ) + switch(i.GetType() ) { case cmCacheManager::BOOL: - if(cmSystemTools::IsOn(value.m_Value.c_str())) + if(cmSystemTools::IsOn(value.c_str())) { m_CacheEntriesList.AddProperty(key, "ON", - value.m_HelpString.c_str(), + i.GetProperty("HELPSTRING"), CPropertyList::COMBO,"ON|OFF", reverseOrder ); @@ -733,7 +732,7 @@ void CMakeSetupDialog::FillCacheGUIFromCacheManager() { m_CacheEntriesList.AddProperty(key, "OFF", - value.m_HelpString.c_str(), + i.GetProperty("HELPSTRING"), CPropertyList::COMBO,"ON|OFF", reverseOrder ); @@ -741,24 +740,24 @@ void CMakeSetupDialog::FillCacheGUIFromCacheManager() break; case cmCacheManager::PATH: m_CacheEntriesList.AddProperty(key, - value.m_Value.c_str(), - value.m_HelpString.c_str(), + value.c_str(), + i.GetProperty("HELPSTRING"), CPropertyList::PATH,"", reverseOrder ); break; case cmCacheManager::FILEPATH: m_CacheEntriesList.AddProperty(key, - value.m_Value.c_str(), - value.m_HelpString.c_str(), + value.c_str(), + i.GetProperty("HELPSTRING"), CPropertyList::FILE,"", reverseOrder ); break; case cmCacheManager::STRING: m_CacheEntriesList.AddProperty(key, - value.m_Value.c_str(), - value.m_HelpString.c_str(), + value.c_str(), + i.GetProperty("HELPSTRING"), CPropertyList::EDIT,"", reverseOrder ); @@ -800,13 +799,12 @@ void CMakeSetupDialog::FillCacheManagerFromCacheGUI() { cmCacheManager *cachem = this->m_CMakeInstance->GetCacheManager(); std::set<CPropertyItem*> items = m_CacheEntriesList.GetItems(); + cmCacheManager::CacheIterator it = cachem->NewIterator(); for(std::set<CPropertyItem*>::iterator i = items.begin(); i != items.end(); ++i) { CPropertyItem* item = *i; - cmCacheManager::CacheEntry *entry = cachem->GetCacheEntry( - (const char*)item->m_propName); - if (entry) + if ( it.Find((const char*)item->m_propName) ) { // if value is enclosed in single quotes ('foo') then remove them // they were used to enforce the fact that it had 'invisible' @@ -815,12 +813,12 @@ void CMakeSetupDialog::FillCacheManagerFromCacheGUI() item->m_curValue[0] == '\'' && item->m_curValue[item->m_curValue.GetLength() - 1] == '\'') { - entry->m_Value = item->m_curValue.Mid(1, - item->m_curValue.GetLength() - 2); + it.SetValue(item->m_curValue.Mid( + 1, item->m_curValue.GetLength() - 2)); } else { - entry->m_Value = item->m_curValue; + it.SetValue(item->m_curValue); } } } @@ -836,10 +834,11 @@ void CMakeSetupDialog::LoadCacheFromDiskToGUI() { cachem->LoadCache(m_WhereBuild); this->FillCacheGUIFromCacheManager(); - if(cachem->GetCacheEntry("CMAKE_GENERATOR")) + cmCacheManager::CacheIterator it = + cachem->GetCacheIterator("CMAKE_GENERATOR"); + if(!it.IsAtEnd()) { - std::string curGen = - cachem->GetCacheEntry("CMAKE_GENERATOR")->m_Value; + std::string curGen = it.GetValue(); if(m_GeneratorChoiceString != curGen.c_str()) { m_GeneratorChoiceString = curGen.c_str(); @@ -1128,19 +1127,18 @@ void CMakeSetupDialog::ShowAdvancedValues() !i.IsAtEnd(); i.Next()) { const char* key = i.GetName(); - const cmCacheManager::CacheEntry& value = i.GetEntry(); - if(!cachem->IsAdvanced(key)) + if(!i.GetPropertyAsBool("ADVANCED")) { continue; } - switch(value.m_Type ) + switch(i.GetType() ) { case cmCacheManager::BOOL: - if(cmSystemTools::IsOn(value.m_Value.c_str())) + if(cmSystemTools::IsOn(i.GetValue())) { m_CacheEntriesList.AddProperty(key, "ON", - value.m_HelpString.c_str(), + i.GetProperty("HELPSTRING"), CPropertyList::COMBO,"ON|OFF", true ); @@ -1149,7 +1147,7 @@ void CMakeSetupDialog::ShowAdvancedValues() { m_CacheEntriesList.AddProperty(key, "OFF", - value.m_HelpString.c_str(), + i.GetProperty("HELPSTRING"), CPropertyList::COMBO,"ON|OFF", true ); @@ -1157,24 +1155,24 @@ void CMakeSetupDialog::ShowAdvancedValues() break; case cmCacheManager::PATH: m_CacheEntriesList.AddProperty(key, - value.m_Value.c_str(), - value.m_HelpString.c_str(), + i.GetValue(), + i.GetProperty("HELPSTRING"), CPropertyList::PATH,"", true ); break; case cmCacheManager::FILEPATH: m_CacheEntriesList.AddProperty(key, - value.m_Value.c_str(), - value.m_HelpString.c_str(), + i.GetValue(), + i.GetProperty("HELPSTRING"), CPropertyList::FILE,"", true ); break; case cmCacheManager::STRING: m_CacheEntriesList.AddProperty(key, - value.m_Value.c_str(), - value.m_HelpString.c_str(), + i.GetValue(), + i.GetProperty("HELPSTRING"), CPropertyList::EDIT,"", true ); @@ -1194,8 +1192,7 @@ void CMakeSetupDialog::RemoveAdvancedValues() !i.IsAtEnd(); i.Next()) { const char* key = i.GetName(); - const cmCacheManager::CacheEntry& value = i.GetEntry(); - if(cachem->IsAdvanced(key)) + if(i.GetPropertyAsBool("ADVANCED")) { m_CacheEntriesList.RemoveProperty(key); } @@ -1246,15 +1243,17 @@ void CMakeSetupDialog::ChangeDirectoriesFromFile(const char* buffer) cmCacheManager *cachem = this->m_CMakeInstance->GetCacheManager(); + cmCacheManager::CacheIterator it = + cachem->NewIterator(); + if (cmSystemTools::FileExists(cache_file.c_str()) && cachem->LoadCache(path.c_str()) && - cachem->GetCacheEntry("CMAKE_HOME_DIRECTORY")) + it.Find("CMAKE_HOME_DIRECTORY")) { path = ConvertToWindowsPath(path.c_str()); this->m_WhereBuild = path.c_str(); - path = ConvertToWindowsPath( - cachem->GetCacheEntry("CMAKE_HOME_DIRECTORY")->m_Value.c_str()); + path = ConvertToWindowsPath(it.GetName()); this->m_WhereSource = path.c_str(); } else |