File indexing completed on 2024-04-28 05:49:11

0001 /*
0002     SPDX-FileCopyrightText: 2020 Kåre Särs <kare.sars@iki.fi>
0003 
0004     SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #pragma once
0008 
0009 #include <KTextEditor/Command>
0010 #include <QString>
0011 
0012 namespace KTextEditor
0013 {
0014 class View;
0015 class Range;
0016 }
0017 
0018 class KateSearchCommand : public KTextEditor::Command
0019 {
0020     Q_OBJECT
0021 public:
0022     KateSearchCommand(QObject *parent);
0023 
0024     void setBusy(bool busy);
0025 
0026 Q_SIGNALS:
0027     void setSearchPlace(int place);
0028     void setCurrentFolder();
0029     void setSearchString(const QString &pattern);
0030     void startSearch();
0031     void newTab();
0032     void setRegexMode(bool enabled);
0033     void setCaseInsensitive(bool enabled);
0034     void setExpandResults(bool enabled);
0035 
0036     //
0037     // KTextEditor::Command
0038     //
0039 public:
0040     bool exec(KTextEditor::View *view, const QString &cmd, QString &msg, const KTextEditor::Range &range = KTextEditor::Range::invalid()) override;
0041     bool help(KTextEditor::View *view, const QString &cmd, QString &msg) override;
0042 
0043 private:
0044     bool m_busy{false};
0045 };
0046 
0047 // kate: space-indent on; indent-width 4; replace-tabs on;