本文整理汇总了C++中SearchData::GetDisplayScope方法的典型用法代码示例。如果您正苦于以下问题:C++ SearchData::GetDisplayScope方法的具体用法?C++ SearchData::GetDisplayScope怎么用?C++ SearchData::GetDisplayScope使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SearchData
的用法示例。
在下文中一共展示了SearchData::GetDisplayScope方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: OnSearchMatch
void FindResultsTab::OnSearchMatch(wxCommandEvent& e)
{
SearchResultList* res = (SearchResultList*)e.GetClientData();
if(!res) return;
int m = m_book ? m_book->GetPageIndex(m_recv) : 0;
if(m == wxNOT_FOUND) {
wxDELETE(res);
return;
}
MatchInfo& matchInfo = GetMatchInfo(m);
for(SearchResultList::iterator iter = res->begin(); iter != res->end(); iter++) {
if(matchInfo.empty() || matchInfo.rbegin()->second.GetFileName() != iter->GetFileName()) {
if(!matchInfo.empty()) {
AppendText("\n");
}
wxFileName fn(iter->GetFileName());
fn.MakeRelativeTo();
AppendText(fn.GetFullPath() + wxT("\n"));
}
int lineno = m_recv->GetLineCount() - 1;
matchInfo.insert(std::make_pair(lineno, *iter));
wxString text = iter->GetPattern();
int delta = -text.Length();
text.Trim(false);
delta += text.Length();
text.Trim();
wxString linenum;
if(iter->GetMatchState() == CppWordScanner::STATE_CPP_COMMENT ||
iter->GetMatchState() == CppWordScanner::STATE_C_COMMENT)
linenum = wxString::Format(wxT(" %5u //"), iter->GetLineNumber());
else
linenum = wxString::Format(wxT(" %5u "), iter->GetLineNumber());
SearchData* d = GetSearchData(m_recv);
// Print the scope name
if(d->GetDisplayScope()) {
TagEntryPtr tag = TagsManagerST::Get()->FunctionFromFileLine(iter->GetFileName(), iter->GetLineNumber());
wxString scopeName(wxT("global"));
if(tag) {
scopeName = tag->GetPath();
}
linenum << wxT("[ ") << scopeName << wxT(" ] ");
iter->SetScope(scopeName);
}
delta += linenum.Length();
AppendText(linenum + text + wxT("\n"));
m_recv->IndicatorFillRange(m_sci->PositionFromLine(lineno) + iter->GetColumn() + delta, iter->GetLen());
}
wxDELETE(res);
}
示例2: OnSearchMatch
void FindResultsTab::OnSearchMatch(wxCommandEvent& e)
{
SearchResultList* res = (SearchResultList*)e.GetClientData();
if(!res) return;
SearchResultList::iterator iter = res->begin();
for(; iter != res->end(); ++iter) {
if(m_matchInfo.empty() || m_matchInfo.rbegin()->second.GetFileName() != iter->GetFileName()) {
if(!m_matchInfo.empty()) {
AppendText("\n");
}
wxFileName fn(iter->GetFileName());
fn.MakeRelativeTo();
AppendText(fn.GetFullPath() + wxT("\n"));
}
int lineno = m_sci->GetLineCount() - 1;
m_matchInfo.insert(std::make_pair(lineno, *iter));
wxString text = iter->GetPattern();
// int delta = -text.Length();
// text.Trim(false);
// delta += text.Length();
// text.Trim();
wxString linenum = wxString::Format(wxT(" %5u: "), iter->GetLineNumber());
SearchData* d = GetSearchData();
// Print the scope name
if(d->GetDisplayScope()) {
TagEntryPtr tag = TagsManagerST::Get()->FunctionFromFileLine(iter->GetFileName(), iter->GetLineNumber());
wxString scopeName(wxT("global"));
if(tag) {
scopeName = tag->GetPath();
}
linenum << wxT("[ ") << scopeName << wxT(" ] ");
iter->SetScope(scopeName);
}
AppendText(linenum + text + wxT("\n"));
int indicatorStartPos = m_sci->PositionFromLine(lineno) + iter->GetColumn() + linenum.Length();
int indicatorLen = iter->GetLen();
m_indicators.push_back(indicatorStartPos);
m_sci->IndicatorFillRange(indicatorStartPos, indicatorLen);
}
wxDELETE(res);
}