27#include <wx/fdrepdlg.h>
30#include "cells/MatrixBlock.h"
39namespace WorksheetSearch {
class Matcher; }
110 bool FindNext(
const wxString &str,
bool down,
bool ignoreCase,
bool regex,
133 std::optional<MatrixEntry> start,
134 bool down,
bool inclusive,
136 bool *wrapped =
nullptr);
179 static MatrCell *PartiallyShownMatrixIn(
Cell *list, wxPoint point);
181 void OnIdle(wxIdleEvent &event);
183 void OnCharHook(wxKeyEvent &event);
185 void OnFind(wxFindDialogEvent &event);
187 void IncrementalSearch();
191 std::optional<MatrixEntry> SelectedEntry()
const;
200 std::unique_ptr<Configuration> m_configuration;
217 std::optional<MatrixEntry> m_searchOrigin;
219 wxString m_oldFindString;
220 long m_oldFindFlags = 0;
221 bool m_oldRegexSearch =
false;
This file defines the class FindReplacePane.
The base class all cell types the worksheet can consist of are derived from.
Definition: Cell.h:148
The configuration storage for the current worksheet.
Definition: Configuration.h:101
The find+replace dialog.
Definition: FindReplaceDialog.h:42
Definition: FindReplacePane.h:51
A cell grouping input (and, if there is one, also the output) cell to a foldable item.
Definition: GroupCell.h:88
A Cell that displays a matrix.
Definition: MatrCell.h:95
A window that shows a matrix the worksheet only shows part of (GH #2344)
Definition: MatrixViewer.h:70
bool FindNext(const wxString &str, bool down, bool ignoreCase, bool regex, bool warn=true)
Selects the next entry that matches, and scrolls it into view.
Definition: MatrixViewer.cpp:339
static std::unique_ptr< GroupCell > CopyForViewer(const MatrCell &matrix, Configuration *config)
A group cell whose output is a copy of this matrix.
Definition: MatrixViewer.cpp:106
Worksheet * GetWorksheet() const
The worksheet the viewer shows the matrix in.
Definition: MatrixViewer.h:84
static MatrCell * PartiallyShownMatrixAt(const GroupCell *group, wxPoint point)
The matrix a double-click at this point should open a viewer for.
Definition: MatrixViewer.cpp:132
static void ConfigureForViewer(Configuration &config)
Makes a copy of the worksheet's configuration suitable for the viewer.
Definition: MatrixViewer.cpp:88
static std::optional< MatrixEntry > FindEntry(const MatrCell &matrix, std::optional< MatrixEntry > start, bool down, bool inclusive, const WorksheetSearch::Matcher &matcher, bool *wrapped=nullptr)
The next entry of a matrix whose text matches.
Definition: MatrixViewer.cpp:372
MatrCell * GetMatrix() const
The viewer's copy of the matrix.
Definition: MatrixViewer.cpp:209
FindReplaceDialog * GetFindDialog() const
The search dialog, or nullptr if it hasn't been opened.
Definition: MatrixViewer.h:94
void OpenFindDialog()
Opens the search dialog (Ctrl+F), or brings it to the front.
Definition: MatrixViewer.cpp:225
Matches a search expression against worksheet text.
Definition: WorksheetSearch.h:56
The canvas that contains the spreadsheet the whole program is about.
Definition: Worksheet.h:121
One entry of a matrix, by its zero-based row and column.
Definition: MatrixBlock.h:30