void Cscope::OnCreateDB(wxCommandEvent& e) { // sanity if(m_mgr->IsWorkspaceOpen() == false) { return; } m_cscopeWin->Clear(); wxString list_file = DoCreateListFile(true); // get the reverted index option wxString command; wxString endMsg; CScopeConfData settings; command << GetCscopeExeName(); m_mgr->GetConfigTool()->ReadObject(wxT("CscopeSettings"), &settings); if(settings.GetBuildRevertedIndexOption()) { command << wxT(" -q"); endMsg << _("Recreated inverted CScope DB"); } else { command << wxT(" -b"); endMsg << _("Recreated CScope DB"); } // Do the actual create db // since the process is always running from the workspace // directory, there is no need to specify the full path of the list file command << wxT(" -L -i cscope_file.list"); DoCscopeCommand(command, wxEmptyString, endMsg); }
void Cscope::OnFindFunctionsCallingThisFunction(wxCommandEvent& e) { wxString word = GetSearchPattern(); if(word.IsEmpty()) { return; } m_cscopeWin->Clear(); wxString list_file = DoCreateListFile(false); // get the rebuild option wxString rebuildOption = wxT(""); CScopeConfData settings; m_mgr->GetConfigTool()->ReadObject(wxT("CscopeSettings"), &settings); if(!settings.GetRebuildOption()) { rebuildOption = wxT(" -d"); } // Do the actual search wxString command; wxString endMsg; command << GetCscopeExeName() << rebuildOption << wxT(" -L -3 ") << word << wxT(" -i ") << list_file; endMsg << _("cscope results for: functions calling '") << word << wxT("'"); DoCscopeCommand(command, word, endMsg); }
void Cscope::OnFindSymbol(wxCommandEvent &e) { // sanity if ( m_mgr->GetActiveEditor() == NULL ) { return; } wxString word = m_mgr->GetActiveEditor()->GetWordAtCaret(); if (word.IsEmpty()) { return; } m_cscopeWin->Clear(); wxString list_file = DoCreateListFile(false); // get the rebuild option wxString rebuildOption = wxT(""); CScopeConfData settings; m_mgr->GetConfigTool()->ReadObject(wxT("CscopeSettings"), &settings); if (!settings.GetRebuildOption()) { rebuildOption = wxT(" -d"); } //Do the actual search wxString command; wxString endMsg; command << GetCscopeExeName() << rebuildOption << wxT(" -L -0 ") << word << wxT(" -i ") << list_file; endMsg << wxT("cscope results for: find C symbol '") << word << wxT("'"); DoCscopeCommand(command, word, endMsg); }
void CscopePlugin::OnFind(wxCommandEvent &event) { wxString WordAtCaret = GetWordAtCaret(); if (WordAtCaret.IsEmpty()) return; wxString list_file, outputfilename; if ( !CreateListFile(list_file) ) return; wxString cmd( GetCscopeBinaryName() + _T(" ") + //_T(" -f ") + reffilename + _T(" -L") ); wxString endMsg(_T("Results for: ")); if ( event.GetId() == idOnFindFunctionsCallingThisFunction) { cmd += _T(" -3 "); endMsg += _T("find functions calling '") + WordAtCaret + _T("'"); } else //if( event.GetId() == idOnFindFunctionsCalledByThisFuncion) { cmd += _T(" -2 "); endMsg += _T("find functions called by '") + WordAtCaret + _T("'"); } // else if ( event.GetId() == idOnFindGlobalDefinition ) // { // cmd += _T(" -1 "); // endMsg += _T("find '") + WordAtCaret + _T("' global definition"); // } // else //idOnFindSymbol // { // cmd += _T(" -0 "); // endMsg += _T("find C symbol '") + WordAtCaret + _T("'"); // } cmd += WordAtCaret + _T(" -i \"") + list_file + _T("\""); DoCscopeCommand(cmd, endMsg); }
void Cscope::OnFindGlobalDefinition(wxCommandEvent& e) { wxString word = GetSearchPattern(); if(word.IsEmpty()) { return; } m_cscopeWin->Clear(); wxString list_file = DoCreateListFile(false); // Do the actual search wxString command; wxString endMsg; command << GetCscopeExeName() << wxT(" -d -L -1 ") << word << wxT(" -i ") << list_file; endMsg << _("cscope results for: find global definition of '") << word << wxT("'"); DoCscopeCommand(command, word, endMsg); }
void Cscope::OnFindFunctionsCallingThisFunction(wxCommandEvent &e) { wxString word = m_mgr->GetActiveEditor()->GetWordAtCaret(); if (word.IsEmpty()) { return; } m_cscopeWin->Clear(); wxString list_file = DoCreateListFile(false); //Do the actual search wxString command; wxString endMsg; command << GetCscopeExeName() << wxT(" -d -L -3 ") << word << wxT(" -i ") << list_file; endMsg << wxT("cscope results for: functions calling '") << word << wxT("'"); DoCscopeCommand(command, word, endMsg); }
void Cscope::OnFindFilesIncludingThisFname(wxCommandEvent& e) { wxString word = m_mgr->GetActiveEditor()->GetSelection(); if(word.IsEmpty()) { // If there's no selection, try for the caret word // That'll either be (rubbish, or) a filename // or it'll be the 'h'of filename.h // Cscope can cope with just a filename word = m_mgr->GetActiveEditor()->GetWordAtCaret(); if(word == wxT("h")) { long pos = m_mgr->GetActiveEditor()->GetCurrentPosition(); long start = m_mgr->GetActiveEditor()->WordStartPos(pos - 2, true); wxString name = m_mgr->GetActiveEditor()->GetTextRange(start, pos - 2); // Append the .h Cscope would be happy with just foo, // but would also return #include foobar.h which isn't what's been requested word = name + wxT(".h"); } if(word.IsEmpty()) { return; } } m_cscopeWin->Clear(); wxString list_file = DoCreateListFile(false); // get the rebuild option wxString rebuildOption = wxT(""); CScopeConfData settings; m_mgr->GetConfigTool()->ReadObject(wxT("CscopeSettings"), &settings); if(!settings.GetRebuildOption()) { rebuildOption = wxT(" -d"); } // Do the actual search wxString command; wxString endMsg; command << GetCscopeExeName() << rebuildOption << wxT(" -L -8 ") << word << wxT(" -i ") << list_file; endMsg << _("cscope results for: files that #include '") << word << wxT("'"); DoCscopeCommand(command, word, endMsg); }
void Cscope::DoFindSymbol(const wxString& word) { m_cscopeWin->Clear(); wxString list_file = DoCreateListFile(false); // get the rebuild option wxString rebuildOption = wxT(""); CScopeConfData settings; m_mgr->GetConfigTool()->ReadObject(wxT("CscopeSettings"), &settings); if(!settings.GetRebuildOption()) { rebuildOption = wxT(" -d"); } // Do the actual search wxString command; wxString endMsg; command << GetCscopeExeName() << rebuildOption << wxT(" -L -0 ") << word << wxT(" -i ") << list_file; endMsg << wxT("cscope results for: find C symbol '") << word << wxT("'"); DoCscopeCommand(command, word, endMsg); }
void Cscope::OnFindGlobalDefinition(wxCommandEvent &e) { // sanity if ( m_mgr->GetActiveEditor() == NULL ) { return; } wxString word = m_mgr->GetActiveEditor()->GetWordAtCaret(); if (word.IsEmpty()) { return; } m_cscopeWin->Clear(); wxString list_file = DoCreateListFile(false); //Do the actual search wxString command; wxString endMsg; command << GetCscopeExeName() << wxT(" -d -L -1 ") << word << wxT(" -i ") << list_file; endMsg << wxT("cscope results for: find global definition of '") << word << wxT("'"); DoCscopeCommand(command, word, endMsg); }