File indexing completed on 2024-05-12 04:39:13
0001 /* 0002 SPDX-FileCopyrightText: 2014 Milian Wolff <mail@milianw.de> 0003 SPDX-FileCopyrightText: 2014 Kevin Funk <kfunk@kde.org> 0004 0005 SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0006 */ 0007 0008 #ifndef NAVIGATIONWIDGET_H 0009 #define NAVIGATIONWIDGET_H 0010 0011 #include "clangprivateexport.h" 0012 0013 #include "macrodefinition.h" 0014 0015 #include <language/duchain/navigation/abstractnavigationwidget.h> 0016 0017 namespace KDevelop 0018 { 0019 class DocumentCursor; 0020 class IncludeItem; 0021 } 0022 0023 class KDEVCLANGPRIVATE_EXPORT ClangNavigationWidget : public KDevelop::AbstractNavigationWidget 0024 { 0025 Q_OBJECT 0026 public: 0027 explicit ClangNavigationWidget(const KDevelop::DeclarationPointer& declaration, 0028 KDevelop::AbstractNavigationWidget::DisplayHints hints = KDevelop::AbstractNavigationWidget::NoHints); 0029 ClangNavigationWidget(const MacroDefinition::Ptr& macro, const KDevelop::DocumentCursor& expansionLocation, 0030 KDevelop::AbstractNavigationWidget::DisplayHints hints = KDevelop::AbstractNavigationWidget::NoHints); 0031 ClangNavigationWidget(const KDevelop::IncludeItem& includeItem, const KDevelop::TopDUContextPointer& topContext, 0032 KDevelop::AbstractNavigationWidget::DisplayHints hints = KDevelop::AbstractNavigationWidget::NoHints); 0033 ~ClangNavigationWidget() override = default; 0034 0035 /// Used by @see AbstractIncludeFileCompletionItem 0036 static QString shortDescription(const KDevelop::IncludeItem& includeItem); 0037 }; 0038 0039 #endif // NAVIGATIONWIDGET_H