void AdvancedCompilerOptionsDlg::WriteCompilerOptions() { Compiler* compiler = CompilerFactory::GetCompiler(m_CompilerId); for (int i = 0; i < ctCount; ++i) { compiler->GetCommandToolsVector((CommandType)i) = m_Commands[i]; } // switches CompilerSwitches switches; switches.includeDirs = XRCCTRL(*this, "txtAddIncludePath", wxTextCtrl)->GetValue(); switches.libDirs = XRCCTRL(*this, "txtAddLibPath", wxTextCtrl)->GetValue(); switches.linkLibs = XRCCTRL(*this, "txtAddLib", wxTextCtrl)->GetValue(); switches.libPrefix = XRCCTRL(*this, "txtLibPrefix", wxTextCtrl)->GetValue(); switches.libExtension = XRCCTRL(*this, "txtLibExt", wxTextCtrl)->GetValue(); switches.defines = XRCCTRL(*this, "txtDefine", wxTextCtrl)->GetValue(); switches.genericSwitch = XRCCTRL(*this, "txtGenericSwitch", wxTextCtrl)->GetValue(); switches.objectExtension = XRCCTRL(*this, "txtObjectExt", wxTextCtrl)->GetValue(); switches.forceFwdSlashes = XRCCTRL(*this, "chkFwdSlashes", wxCheckBox)->GetValue(); switches.linkerNeedsLibPrefix = XRCCTRL(*this, "chkLinkerNeedsLibPrefix", wxCheckBox)->GetValue(); switches.linkerNeedsLibExtension = XRCCTRL(*this, "chkLinkerNeedsLibExt", wxCheckBox)->GetValue(); switches.needDependencies = XRCCTRL(*this, "chkNeedDeps", wxCheckBox)->GetValue(); switches.forceCompilerUseQuotes = XRCCTRL(*this, "chkForceCompilerQuotes", wxCheckBox)->GetValue(); switches.forceLinkerUseQuotes = XRCCTRL(*this, "chkForceLinkerQuotes", wxCheckBox)->GetValue(); switches.supportsPCH = XRCCTRL(*this, "chkSupportsPCH", wxCheckBox)->GetValue(); switches.PCHExtension = XRCCTRL(*this, "txtPCHExt", wxTextCtrl)->GetValue(); switches.UseFlatObjects = XRCCTRL(*this, "chkUseFlatObjects", wxCheckBox)->GetValue(); switches.UseFullSourcePaths = XRCCTRL(*this, "chkUseFullSourcePaths", wxCheckBox)->GetValue(); compiler->SetSwitches(switches); } // end of WriteCompilerOptions
void AdvancedCompilerOptionsDlg::WriteCompilerOptions() { Compiler* compiler = CompilerFactory::GetCompiler(m_CompilerId); if (!compiler) return; for (int i = 0; i < ctCount; ++i) compiler->GetCommandToolsVector((CommandType)i) = m_Commands[i]; // switches CompilerSwitches switches; switches.includeDirs = XRCCTRL(*this, "txtAddIncludePath", wxTextCtrl)->GetValue(); switches.libDirs = XRCCTRL(*this, "txtAddLibPath", wxTextCtrl)->GetValue(); switches.linkLibs = XRCCTRL(*this, "txtAddLib", wxTextCtrl)->GetValue(); switches.libPrefix = XRCCTRL(*this, "txtLibPrefix", wxTextCtrl)->GetValue(); switches.libExtension = XRCCTRL(*this, "txtLibExt", wxTextCtrl)->GetValue(); switches.defines = XRCCTRL(*this, "txtDefine", wxTextCtrl)->GetValue(); switches.genericSwitch = XRCCTRL(*this, "txtGenericSwitch", wxTextCtrl)->GetValue(); switches.objectExtension = XRCCTRL(*this, "txtObjectExt", wxTextCtrl)->GetValue(); switches.forceFwdSlashes = XRCCTRL(*this, "chkFwdSlashes", wxCheckBox)->GetValue(); switches.linkerNeedsLibPrefix = XRCCTRL(*this, "chkLinkerNeedsLibPrefix", wxCheckBox)->GetValue(); switches.linkerNeedsLibExtension = XRCCTRL(*this, "chkLinkerNeedsLibExt", wxCheckBox)->GetValue(); switches.linkerNeedsPathResolved = XRCCTRL(*this, "chkLinkerNeedsPathRes", wxCheckBox)->GetValue(); switches.needDependencies = XRCCTRL(*this, "chkNeedDeps", wxCheckBox)->GetValue(); switches.forceCompilerUseQuotes = XRCCTRL(*this, "chkForceCompilerQuotes", wxCheckBox)->GetValue(); switches.forceLinkerUseQuotes = XRCCTRL(*this, "chkForceLinkerQuotes", wxCheckBox)->GetValue(); switches.supportsPCH = XRCCTRL(*this, "chkSupportsPCH", wxCheckBox)->GetValue(); switches.PCHExtension = XRCCTRL(*this, "txtPCHExt", wxTextCtrl)->GetValue(); switches.UseFlatObjects = XRCCTRL(*this, "chkUseFlatObjects", wxCheckBox)->GetValue(); switches.UseFullSourcePaths = XRCCTRL(*this, "chkUseFullSourcePaths", wxCheckBox)->GetValue(); { wxString value = XRCCTRL(*this, "txtIncludeDirSeparator", wxTextCtrl)->GetValue(); if (!value.IsEmpty()) switches.includeDirSeparator = value[0]; } { wxString value = XRCCTRL(*this, "txtLibDirSeparator", wxTextCtrl)->GetValue(); if (!value.IsEmpty()) switches.libDirSeparator = value[0]; } { wxString value = XRCCTRL(*this, "txtObjectSeparator", wxTextCtrl)->GetValue(); if (!value.IsEmpty()) switches.objectSeparator = value[0]; } switches.statusSuccess = XRCCTRL(*this, "spnStatusSuccess", wxSpinCtrl)->GetValue(); switches.Use83Paths = XRCCTRL(*this, "chkUse83Paths", wxCheckBox)->GetValue(); compiler->SetSwitches(switches); }
void AdvancedCompilerOptionsDlg::ReadCompilerOptions() { Compiler* compiler = CompilerFactory::GetCompiler(m_CompilerId); if (!compiler) return; wxChoice* lst = XRCCTRL(*this, "lstCommands", wxChoice); lst->Clear(); for (int i = 0; i < ctCount; ++i) { m_Commands[i] = compiler->GetCommandToolsVector((CommandType)i); lst->Append(Compiler::CommandTypeDescriptions[i]); } lst->SetSelection(0); DisplayCommand(0,0); ReadExtensions(0); // switches const CompilerSwitches& switches = compiler->GetSwitches(); XRCCTRL(*this, "txtAddIncludePath", wxTextCtrl)->SetValue(switches.includeDirs); XRCCTRL(*this, "txtAddLibPath", wxTextCtrl)->SetValue(switches.libDirs); XRCCTRL(*this, "txtAddLib", wxTextCtrl)->SetValue(switches.linkLibs); XRCCTRL(*this, "txtLibPrefix", wxTextCtrl)->SetValue(switches.libPrefix); XRCCTRL(*this, "txtLibExt", wxTextCtrl)->SetValue(switches.libExtension); XRCCTRL(*this, "txtDefine", wxTextCtrl)->SetValue(switches.defines); XRCCTRL(*this, "txtGenericSwitch", wxTextCtrl)->SetValue(switches.genericSwitch); XRCCTRL(*this, "txtObjectExt", wxTextCtrl)->SetValue(switches.objectExtension); XRCCTRL(*this, "chkFwdSlashes", wxCheckBox)->SetValue(switches.forceFwdSlashes); XRCCTRL(*this, "chkLinkerNeedsLibPrefix", wxCheckBox)->SetValue(switches.linkerNeedsLibPrefix); XRCCTRL(*this, "chkLinkerNeedsLibExt", wxCheckBox)->SetValue(switches.linkerNeedsLibExtension); XRCCTRL(*this, "chkLinkerNeedsPathRes", wxCheckBox)->SetValue(switches.linkerNeedsPathResolved); XRCCTRL(*this, "chkNeedDeps", wxCheckBox)->SetValue(switches.needDependencies); XRCCTRL(*this, "chkForceCompilerQuotes", wxCheckBox)->SetValue(switches.forceCompilerUseQuotes); XRCCTRL(*this, "chkForceLinkerQuotes", wxCheckBox)->SetValue(switches.forceLinkerUseQuotes); XRCCTRL(*this, "chkSupportsPCH", wxCheckBox)->SetValue(switches.supportsPCH); XRCCTRL(*this, "txtPCHExt", wxTextCtrl)->SetValue(switches.PCHExtension); XRCCTRL(*this, "chkUseFlatObjects", wxCheckBox)->SetValue(switches.UseFlatObjects); XRCCTRL(*this, "chkUseFullSourcePaths", wxCheckBox)->SetValue(switches.UseFullSourcePaths); XRCCTRL(*this, "txtIncludeDirSeparator", wxTextCtrl)->SetValue(switches.includeDirSeparator); XRCCTRL(*this, "txtLibDirSeparator", wxTextCtrl)->SetValue(switches.libDirSeparator); XRCCTRL(*this, "txtObjectSeparator", wxTextCtrl)->SetValue(switches.objectSeparator); XRCCTRL(*this, "spnStatusSuccess", wxSpinCtrl)->SetValue(switches.statusSuccess); XRCCTRL(*this, "chkUse83Paths", wxCheckBox)->SetValue(switches.Use83Paths); m_Regexes = compiler->GetRegExArray(); m_SelectedRegex = m_Regexes.Count() > 0 ? 0 : -1; FillRegexes(); }