本文整理汇总了C++中SearchData::UseNewTab方法的典型用法代码示例。如果您正苦于以下问题:C++ SearchData::UseNewTab方法的具体用法?C++ SearchData::UseNewTab怎么用?C++ SearchData::UseNewTab使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SearchData
的用法示例。
在下文中一共展示了SearchData::UseNewTab方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: OnRepeatOutput
void FindResultsTab::OnRepeatOutput(wxCommandEvent& e)
{
wxUnusedVar(e);
SearchData* searchData = GetSearchData();
searchData->UseNewTab(false);
SearchThreadST::Get()->PerformSearch(*searchData);
}
示例2: OnRepeatOutput
void FindResultsTab::OnRepeatOutput(wxCommandEvent& e)
{
wxUnusedVar(e);
if(m_book) {
int sel = m_book->GetSelection();
if(sel != wxNOT_FOUND) {
// get the search data used to generate the output on the selected tab
wxWindow* tab = m_book->GetPage(sel);
if(tab) {
SearchData* searchData = (SearchData*)tab->GetClientData();
searchData->UseNewTab(false);
SearchThreadST::Get()->PerformSearch(*searchData);
}
}
}
}
示例3: DoSearchFiles
void SearchThread::DoSearchFiles(ThreadRequest *req)
{
SearchData *data = static_cast<SearchData*>(req);
// Get all files
if ( data->GetRootDirs().IsEmpty() )
return;
if ( data->GetFindString().IsEmpty() )
return;
StopSearch(false);
wxArrayString fileList;
GetFiles(data, fileList);
wxStopWatch sw;
// Send startup message to main thread
if ( m_notifiedWindow || data->GetOwner() ) {
wxCommandEvent event(wxEVT_SEARCH_THREAD_SEARCHSTARTED, GetId());
event.SetClientData(new SearchData(*data));
//set the rquested output tab
event.SetInt(data->UseNewTab() ? 1 : 0);
if (data->GetOwner()) {
::wxPostEvent(data->GetOwner(), event);
} else {
// since we are in if ( m_notifiedWindow || data->GetOwner() ) block...
::wxPostEvent(m_notifiedWindow, event);
}
}
for (size_t i=0; i<fileList.Count(); i++) {
m_summary.SetNumFileScanned((int)i+1);
// give user chance to cancel the search ...
if ( TestStopSearch() ) {
// Send cancel event
SendEvent(wxEVT_SEARCH_THREAD_SEARCHCANCELED, data->GetOwner());
StopSearch(false);
break;
}
DoSearchFile(fileList.Item(i), data);
}
}
示例4: DoGetSearchData
SearchData FindInFilesDialog::DoGetSearchData()
{
SearchData data;
wxString findStr(m_data.GetFindString());
if(m_findString->GetValue().IsEmpty() == false) {
findStr = m_findString->GetValue();
}
data.SetFindString(findStr);
m_data.SetFlags(GetSearchFlags());
size_t flags = m_data.GetFlags();
// If the 'Skip comments' is ON, remove the
// 'colour comments' flag
if(flags & wxFRD_SKIP_COMMENTS) {
flags &= ~wxFRD_COLOUR_COMMENTS;
}
data.SetMatchCase((flags & wxFRD_MATCHCASE) != 0);
data.SetMatchWholeWord((flags & wxFRD_MATCHWHOLEWORD) != 0);
data.SetRegularExpression((flags & wxFRD_REGULAREXPRESSION) != 0);
data.SetDisplayScope((flags & wxFRD_DISPLAYSCOPE) != 0);
data.SetEncoding(m_choiceEncoding->GetStringSelection());
data.SetSkipComments(flags & wxFRD_SKIP_COMMENTS);
data.SetSkipStrings(flags & wxFRD_SKIP_STRINGS);
data.SetColourComments(flags & wxFRD_COLOUR_COMMENTS);
wxArrayString rootDirs;
for(size_t i = 0; i < m_listPaths->GetCount(); ++i) {
rootDirs.push_back(m_listPaths->GetString(i));
}
if(rootDirs.IsEmpty()) {
wxString dir = m_dirPicker->GetPath();
if(dir.IsEmpty() == false) {
rootDirs.push_back(dir);
}
}
data.SetRootDirs(rootDirs);
wxArrayString files;
for(size_t i = 0; i < rootDirs.GetCount(); ++i) {
const wxString& rootDir = rootDirs.Item(i);
// Check both translations and otherwise: the history may contain either
if((rootDir == wxGetTranslation(SEARCH_IN_WORKSPACE)) || (rootDir == SEARCH_IN_WORKSPACE)) {
ManagerST::Get()->GetWorkspaceFiles(files);
} else if((rootDir == wxGetTranslation(SEARCH_IN_PROJECT)) || (rootDir == SEARCH_IN_PROJECT)) {
ManagerST::Get()->GetActiveProjectFiles(files);
} else if((rootDir == wxGetTranslation(SEARCH_IN_CURR_FILE_PROJECT)) ||
(rootDir == SEARCH_IN_CURR_FILE_PROJECT)) {
ManagerST::Get()->GetActiveFileProjectFiles(files);
} else if((rootDir == wxGetTranslation(SEARCH_IN_CURRENT_FILE)) || (rootDir == SEARCH_IN_CURRENT_FILE)) {
LEditor* editor = clMainFrame::Get()->GetMainBook()->GetActiveEditor();
if(editor) {
files.Add(editor->GetFileName().GetFullPath());
}
} else if((rootDir == wxGetTranslation(SEARCH_IN_OPEN_FILES)) || (rootDir == SEARCH_IN_OPEN_FILES)) {
std::vector<LEditor*> editors;
clMainFrame::Get()->GetMainBook()->GetAllEditors(editors, MainBook::kGetAll_IncludeDetached);
for(size_t n = 0; n < editors.size(); ++n) {
LEditor* editor = dynamic_cast<LEditor*>(*(editors.begin() + n));
if(editor) {
files.Add(editor->GetFileName().GetFullPath());
}
}
}
}
data.SetFiles(files);
data.UseNewTab(m_checkBoxSeparateTab->IsChecked());
data.SetExtensions(m_fileTypes->GetValue());
return data;
}
示例5: DoGetSearchData
//.........这里部分代码省略.........
if(!m_findString->GetValue().IsEmpty()) {
findStr = m_findString->GetValue();
}
data.SetFindString(findStr);
data.SetReplaceWith(m_replaceString->GetValue());
m_data.SetFlags(GetSearchFlags());
size_t flags = m_data.GetFlags();
// If the 'Skip comments' is ON, remove the
// 'colour comments' flag
if(flags & wxFRD_SKIP_COMMENTS) {
flags &= ~wxFRD_COLOUR_COMMENTS;
}
data.SetMatchCase((flags & wxFRD_MATCHCASE) != 0);
data.SetMatchWholeWord((flags & wxFRD_MATCHWHOLEWORD) != 0);
data.SetRegularExpression((flags & wxFRD_REGULAREXPRESSION) != 0);
data.SetDisplayScope((flags & wxFRD_DISPLAYSCOPE) != 0);
data.SetEncoding(m_choiceEncoding->GetStringSelection());
data.SetSkipComments(flags & wxFRD_SKIP_COMMENTS);
data.SetSkipStrings(flags & wxFRD_SKIP_STRINGS);
data.SetColourComments(flags & wxFRD_COLOUR_COMMENTS);
data.SetEnablePipeSupport(flags & wxFRD_ENABLE_PIPE_SUPPORT);
wxArrayString searchWhere = m_listPaths->GetStrings();
wxArrayString files;
wxArrayString rootDirs;
for(size_t i = 0; i < searchWhere.GetCount(); ++i) {
const wxString& rootDir = searchWhere.Item(i);
// Check both translations and otherwise: the history may contain either
if((rootDir == wxGetTranslation(SEARCH_IN_WORKSPACE)) || (rootDir == SEARCH_IN_WORKSPACE)) {
if(!clWorkspaceManager::Get().IsWorkspaceOpened()) continue;
clWorkspaceManager::Get().GetWorkspace()->GetWorkspaceFiles(files);
} else if((rootDir == wxGetTranslation(SEARCH_IN_PROJECT)) || (rootDir == SEARCH_IN_PROJECT)) {
if(!clWorkspaceManager::Get().IsWorkspaceOpened()) continue;
if(clWorkspaceManager::Get().GetWorkspace()->IsProjectSupported()) {
// get the active project files
clWorkspaceManager::Get().GetWorkspace()->GetProjectFiles("", files);
} else {
// search the entire workspace
clWorkspaceManager::Get().GetWorkspace()->GetWorkspaceFiles(files);
}
} else if((rootDir == wxGetTranslation(SEARCH_IN_CURR_FILE_PROJECT)) ||
(rootDir == SEARCH_IN_CURR_FILE_PROJECT)) {
if(!clWorkspaceManager::Get().IsWorkspaceOpened()) continue;
IEditor* editor = clGetManager()->GetActiveEditor();
if(!editor) continue;
if(clWorkspaceManager::Get().GetWorkspace()->IsProjectSupported()) {
wxString projectName =
clWorkspaceManager::Get().GetWorkspace()->GetProjectFromFile(editor->GetFileName());
clWorkspaceManager::Get().GetWorkspace()->GetProjectFiles(projectName, files);
} else {
// search the entire workspace
clWorkspaceManager::Get().GetWorkspace()->GetWorkspaceFiles(files);
}
} else if((rootDir == wxGetTranslation(SEARCH_IN_CURRENT_FILE)) || (rootDir == SEARCH_IN_CURRENT_FILE)) {
LEditor* editor = clMainFrame::Get()->GetMainBook()->GetActiveEditor();
if(editor) {
files.Add(editor->GetFileName().GetFullPath());
}
} else if((rootDir == wxGetTranslation(SEARCH_IN_OPEN_FILES)) || (rootDir == SEARCH_IN_OPEN_FILES)) {
std::vector<LEditor*> editors;
clMainFrame::Get()->GetMainBook()->GetAllEditors(editors, MainBook::kGetAll_IncludeDetached);
for(size_t n = 0; n < editors.size(); ++n) {
LEditor* editor = dynamic_cast<LEditor*>(*(editors.begin() + n));
if(editor) {
files.Add(editor->GetFileName().GetFullPath());
}
}
} else if(wxFileName::DirExists(searchWhere.Item(i))) {
rootDirs.Add(searchWhere.Item(i));
}
}
// Remove duplicates
wxStringSet_t filesSet;
wxArrayString uniqueFiles;
std::for_each(files.begin(), files.end(), [&](const wxString& file) {
if(filesSet.count(file) == 0) {
filesSet.insert(file);
uniqueFiles.Add(file);
}
});
files.swap(uniqueFiles);
data.SetFiles(files); // list of files
data.SetRootDirs(rootDirs); // folders
data.UseNewTab(false);
data.SetExtensions(m_fileTypes->GetValue());
return data;
}