diff options
Diffstat (limited to 'Source/MFCDialog/CMakeSetupDialog.cpp')
-rw-r--r-- | Source/MFCDialog/CMakeSetupDialog.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/Source/MFCDialog/CMakeSetupDialog.cpp b/Source/MFCDialog/CMakeSetupDialog.cpp index 0303375..67800b9 100644 --- a/Source/MFCDialog/CMakeSetupDialog.cpp +++ b/Source/MFCDialog/CMakeSetupDialog.cpp @@ -315,6 +315,22 @@ void CMakeSetupDialog::LoadFromRegistry() void CMakeSetupDialog::OnBuildProjects() { + if(!cmSystemTools::FileExists(m_WhereBuild)) + { + std::string message = + "Build directory does not exist, should I create it?\n\n" + "Directory: "; + message += (const char*)m_WhereBuild; + if(MessageBox(message.c_str(), "Create Directory", MB_OKCANCEL) == IDOK) + { + cmSystemTools::MakeDirectory(m_WhereBuild); + } + else + { + MessageBox("Build Project aborted, nothing done."); + return; + } + } ::SetCursor(LoadCursor(NULL, IDC_WAIT)); // get all the info from the screen this->UpdateData(); |