File indexing completed on 2024-04-28 15:52:42
0001 /* 0002 SPDX-FileCopyrightText: 2007 David Nolden <david.nolden.kdevelop@art-master.de> 0003 SPDX-FileCopyrightText: 2008 Niko Sams <niko.sams@gmail.com> 0004 0005 SPDX-License-Identifier: LGPL-2.0-only 0006 */ 0007 0008 #ifndef DECLARATIONNAVIGATIONCONTEXT_H 0009 #define DECLARATIONNAVIGATIONCONTEXT_H 0010 0011 #include <language/duchain/navigation/abstractdeclarationnavigationcontext.h> 0012 #include <language/duchain/types/abstracttype.h> 0013 0014 namespace Php 0015 { 0016 0017 class DeclarationNavigationContext : public KDevelop::AbstractDeclarationNavigationContext 0018 { 0019 public: 0020 DeclarationNavigationContext(KDevelop::DeclarationPointer decl, KDevelop::TopDUContextPointer topContext, KDevelop::AbstractNavigationContext* previousContext = nullptr); 0021 0022 protected: 0023 KDevelop::NavigationContextPointer registerChild(KDevelop::DeclarationPointer declaration); 0024 KDevelop::QualifiedIdentifier prettyQualifiedIdentifier(const KDevelop::DeclarationPointer& decl) const override; 0025 void htmlClass() override; 0026 void htmlAdditionalNavigation() override; 0027 void htmlFunction() override; 0028 0029 void makeLink(const QString& name, const KDevelop::DeclarationPointer& declaration, KDevelop::NavigationAction::Type actionType) override; 0030 0031 QString declarationKind(const KDevelop::DeclarationPointer& decl) override; 0032 }; 0033 0034 } 0035 0036 #endif