File indexing completed on 2024-05-05 16:17:47
0001 /* 0002 SPDX-FileCopyrightText: KDE Developers 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #ifndef KATE_VI_INPUT_MODE_FACTORY_H 0008 #define KATE_VI_INPUT_MODE_FACTORY_H 0009 0010 #include <memory> 0011 0012 #include "kateabstractinputmodefactory.h" 0013 0014 namespace KateVi 0015 { 0016 class GlobalState; 0017 } 0018 class KateViInputMode; 0019 0020 class KateViInputModeFactory : public KateAbstractInputModeFactory 0021 { 0022 friend KateViInputMode; 0023 0024 public: 0025 KateViInputModeFactory(); 0026 0027 KateAbstractInputMode *createInputMode(KateViewInternal *viewInternal) override; 0028 0029 QString name() override; 0030 KTextEditor::View::InputMode inputMode() override; 0031 0032 KateConfigPage *createConfigPage(QWidget *) override; 0033 0034 private: 0035 std::unique_ptr<KateVi::GlobalState> m_viGlobal; 0036 }; 0037 0038 #endif