void AdvancedCompilerOptionsDlg::OnRegexAdd(wxCommandEvent& WXUNUSED(event)) { SaveRegexDetails(m_SelectedRegex); m_Regexes.Add(RegExStruct(_("New regular expression"), cltError, _T(""), 0)); m_SelectedRegex = m_Regexes.Count() - 1; FillRegexes(); }
void AdvancedCompilerOptionsDlg::OnRegexDelete(wxCommandEvent& WXUNUSED(event)) { if (cbMessageBox(_("Are you sure you want to delete this regular expression?"), _("Confirmation"), wxICON_QUESTION | wxYES_NO | wxNO_DEFAULT) == wxID_YES) { m_Regexes.RemoveAt(m_SelectedRegex); if (m_SelectedRegex >= (int)m_Regexes.Count()) --m_SelectedRegex; FillRegexes(); } }
void AdvancedCompilerOptionsDlg::OnRegexDown(wxSpinEvent& WXUNUSED(event)) { if (m_SelectedRegex >= (int)m_Regexes.Count() - 1) return; RegExStruct rs = m_Regexes[m_SelectedRegex]; m_Regexes.RemoveAt(m_SelectedRegex); m_Regexes.Insert(rs, m_SelectedRegex + 1); ++m_SelectedRegex; FillRegexes(); }
void AdvancedCompilerOptionsDlg::OnRegexUp(wxSpinEvent& WXUNUSED(event)) { if (m_SelectedRegex <= 0) return; RegExStruct rs = m_Regexes[m_SelectedRegex]; m_Regexes.RemoveAt(m_SelectedRegex); m_Regexes.Insert(rs, m_SelectedRegex - 1); --m_SelectedRegex; FillRegexes(); }
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(); }
void AdvancedCompilerOptionsDlg::OnRegexDefaults(wxCommandEvent& WXUNUSED(event)) { if (cbMessageBox(_("Are you sure you want to load the default regular expressions " "for this compiler?\n" "ALL regular expressions will be erased and replaced with their default " "counterparts!\n\n" "Are you REALLY sure?"), _("Confirmation"), wxICON_QUESTION | wxYES_NO | wxNO_DEFAULT) == wxID_YES) { Compiler* compiler = CompilerFactory::GetCompiler(m_CompilerId); compiler->LoadDefaultRegExArray(); m_Regexes = compiler->GetRegExArray(); while (m_SelectedRegex >= (int)m_Regexes.Count()) --m_SelectedRegex; FillRegexes(); } }