MCPcopy Create free account
hub / github.com/MrNeRF/LichtFeld-Studio / AddSearch

Method AddSearch

external/zep/src/editor.cpp:344–367  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

342 }
343
344 ZepWindow* ZepEditor::AddSearch() {
345 if (!GetActiveTabWindow()) {
346 return nullptr;
347 }
348
349 static std::unordered_set<std::string> search_keywords = {};
350 static std::unordered_set<std::string> search_identifiers = {};
351
352 auto pSearchBuffer = GetEmptyBuffer("Search", FileFlags::Locked | FileFlags::ReadOnly);
353 pSearchBuffer->SetBufferType(BufferType::Search);
354 pSearchBuffer->SetSyntax(std::make_shared<ZepSyntax>(*pSearchBuffer, search_keywords, search_identifiers, ZepSyntaxFlags::CaseInsensitive));
355
356 auto pActiveWindow = GetActiveTabWindow()->GetActiveWindow();
357 bool hasGit = false;
358 auto searchPath = GetFileSystem().GetSearchRoot(pActiveWindow->GetBuffer().GetFilePath(), hasGit);
359
360 auto pSearchWindow = GetActiveTabWindow()->AddWindow(pSearchBuffer, nullptr, RegionLayoutType::VBox);
361 pSearchWindow->SetWindowFlags(pSearchWindow->GetWindowFlags() | WindowFlags::Modal);
362
363 auto pMode = std::make_shared<ZepMode_Search>(*this, *pActiveWindow, *pSearchWindow, searchPath);
364 pSearchBuffer->SetMode(pMode);
365 pMode->Begin(pSearchWindow);
366 return pSearchWindow;
367 }
368
369 ZepTabWindow* ZepEditor::EnsureTab() {
370 if (m_tabWindows.empty()) {

Callers 1

GetCommandMethod · 0.80

Calls 10

SetBufferTypeMethod · 0.80
SetSyntaxMethod · 0.80
GetSearchRootMethod · 0.80
GetFilePathMethod · 0.80
AddWindowMethod · 0.80
SetWindowFlagsMethod · 0.80
GetWindowFlagsMethod · 0.80
SetModeMethod · 0.80
GetActiveWindowMethod · 0.45
BeginMethod · 0.45

Tested by

no test coverage detected