File indexing completed on 2024-05-19 15:41:37
0001 /* 0002 SPDX-FileCopyrightText: 2011 Sven Brauch <svenbrauch@googlemail.com> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #ifndef FUNCTIONDECLARATIONCOMPLETIONITEM_H 0008 #define FUNCTIONDECLARATIONCOMPLETIONITEM_H 0009 0010 #include <language/codecompletion/normaldeclarationcompletionitem.h> 0011 #include <language/duchain/functiondeclaration.h> 0012 0013 #include "declaration.h" 0014 0015 using namespace KDevelop; 0016 0017 namespace Python { 0018 0019 class FunctionDeclarationCompletionItem : public Python::PythonDeclarationCompletionItem 0020 { 0021 0022 public: 0023 FunctionDeclarationCompletionItem(DeclarationPointer decl, KDevelop::CodeCompletionContext::Ptr context); 0024 ~FunctionDeclarationCompletionItem() override; 0025 int argumentHintDepth() const override; 0026 virtual int atArgument() const; 0027 void setAtArgument(int d); 0028 void setDepth(int d); 0029 void setDoNotCall(bool doNotCall); 0030 0031 QVariant data(const QModelIndex& index, int role, const CodeCompletionModel* model) const override; 0032 void executed(KTextEditor::View* view, const KTextEditor::Range& word) override; 0033 private: 0034 int m_atArgument; 0035 int m_depth; 0036 // indicates that no parentheses should be added when executing this item, 0037 // e.g. for import completion or inheritance 0038 bool m_doNotCall; 0039 }; 0040 0041 } 0042 0043 #endif // FUNCTIONDECLARATIONCOMPLETIONITEM_H