Warning, file /frameworks/ktexteditor/src/vimode/emulatedcommandbar/interactivesedreplacemode.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 /*
0002     SPDX-FileCopyrightText: 2013-2016 Simon St James <kdedevel@etotheipiplusone.com>
0003 
0004     SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #ifndef KATEVI_EMULATED_COMMAND_BAR_INTERACTIVESEDREPLACEMODE_H
0008 #define KATEVI_EMULATED_COMMAND_BAR_INTERACTIVESEDREPLACEMODE_H
0009 
0010 #include "activemode.h"
0011 
0012 #include "../cmds.h"
0013 
0014 #include <QSharedPointer>
0015 
0016 class QKeyEvent;
0017 class QLabel;
0018 
0019 namespace KateVi
0020 {
0021 class EmulatedCommandBar;
0022 class MatchHighlighter;
0023 
0024 class InteractiveSedReplaceMode : public ActiveMode
0025 {
0026 public:
0027     InteractiveSedReplaceMode(EmulatedCommandBar *emulatedCommandBar,
0028                               MatchHighlighter *matchHighlighter,
0029                               InputModeManager *viInputModeManager,
0030                               KTextEditor::ViewPrivate *view);
0031     ~InteractiveSedReplaceMode() override
0032     {
0033     }
0034     void activate(QSharedPointer<SedReplace::InteractiveSedReplacer> interactiveSedReplace);
0035     bool isActive() const
0036     {
0037         return m_isActive;
0038     }
0039     bool handleKeyPress(const QKeyEvent *keyEvent) override;
0040     void deactivate(bool wasAborted) override;
0041     QWidget *label();
0042 
0043 private:
0044     void updateInteractiveSedReplaceLabelText();
0045     void finishInteractiveSedReplace();
0046     QSharedPointer<SedReplace::InteractiveSedReplacer> m_interactiveSedReplacer;
0047     bool m_isActive;
0048     QLabel *m_interactiveSedReplaceLabel;
0049 };
0050 }
0051 
0052 #endif