Warning, file /utilities/kate/addons/latexunicodecompletion/completionmodel.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: 2021 Ilia Kats <ilia-kats@gmx.net> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include <QModelIndex> 0010 0011 #include <KTextEditor/CodeCompletionModel> 0012 #include <KTextEditor/CodeCompletionModelControllerInterface> 0013 #include <KTextEditor/Cursor> 0014 #include <KTextEditor/Range> 0015 0016 namespace KTextEditor 0017 { 0018 class View; 0019 } 0020 0021 struct Completion; 0022 class LatexCompletionModel : public KTextEditor::CodeCompletionModel, public KTextEditor::CodeCompletionModelControllerInterface 0023 { 0024 Q_OBJECT 0025 Q_INTERFACES(KTextEditor::CodeCompletionModelControllerInterface) 0026 public: 0027 explicit LatexCompletionModel(QObject *parent); 0028 KTextEditor::Range completionRange(KTextEditor::View *view, const KTextEditor::Cursor &position) override; 0029 bool shouldStartCompletion(KTextEditor::View *view, const QString &insertedText, bool userInsertion, const KTextEditor::Cursor &position) override; 0030 bool shouldAbortCompletion(KTextEditor::View *view, const KTextEditor::Range &range, const QString ¤tCompletion) override; 0031 void completionInvoked(KTextEditor::View *view, const KTextEditor::Range &range, InvocationType invocationType) override; 0032 void executeCompletionItem(KTextEditor::View *view, const KTextEditor::Range &word, const QModelIndex &index) const override; 0033 inline KTextEditor::CodeCompletionModelControllerInterface::MatchReaction matchingItem(const QModelIndex &) override 0034 { 0035 return None; 0036 }; 0037 QVariant data(const QModelIndex &index, int role) const override; 0038 0039 private: 0040 QPair<int, int> m_matches = {0, 0}; 0041 };