KTextEditor
codecompletionmodelcontrollerinterface.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef KDELIBS_KTEXTEDITOR_CODECOMPLETIONMODELCONTROLLERINTERFACE_H
00021 #define KDELIBS_KTEXTEDITOR_CODECOMPLETIONMODELCONTROLLERINTERFACE_H
00022
00023 #include <ktexteditor/ktexteditor_export.h>
00024 #include <ktexteditor/smartrange.h>
00025 #include <ktexteditor/cursor.h>
00026
00027 class QModelIndex;
00028
00029 namespace KTextEditor {
00030 class View;
00069 class KTEXTEDITOR_EXPORT CodeCompletionModelControllerInterface
00070 {
00071 public:
00072 CodeCompletionModelControllerInterface();
00073 virtual ~CodeCompletionModelControllerInterface();
00074
00089 virtual bool shouldStartCompletion(View* view, const QString &insertedText, bool userInsertion, const Cursor &position);
00090
00105 virtual Range completionRange(View* view, const Cursor &position);
00106
00116 virtual void updateCompletionRange(View* view, SmartRange& range);
00117
00130 virtual QString filterString(View* view, const SmartRange& range, const Cursor &position);
00131
00143 virtual bool shouldAbortCompletion(View* view, const SmartRange& range, const QString ¤tCompletion);
00144
00152 virtual bool shouldExecute(const QModelIndex& selected, QChar inserted);
00153
00158 virtual void aborted(View* view);
00159 };
00160
00161 }
00162
00163 Q_DECLARE_INTERFACE(KTextEditor::CodeCompletionModelControllerInterface, "org.kde.KTextEditor.CodeCompletionModelControllerInterface")
00164
00165 #endif // KDELIBS_KTEXTEDITOR_CODECOMPLETIONMODELCONTROLLERINTERFACE_H