1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
|
/*
SPDX-FileCopyrightText: 2006 Adam Treat <treat@kde.org>
SPDX-FileCopyrightText: 2007 Andreas Pakulat <apaku@gmx.org>
SPDX-FileCopyrightText: 2008 David Nolden <david.nolden.kdevelop@art-master.de>
SPDX-License-Identifier: LGPL-2.0-or-later
*/
#ifndef KDEVPLATFORM_EDITORCONTEXT_H
#define KDEVPLATFORM_EDITORCONTEXT_H
#include "codecontext.h"
namespace KTextEditor {
class View;
class Cursor;
}
class QUrl;
namespace KDevelop {
class EditorContextPrivate;
/**A context for the KTextEditor.*/
class KDEVPLATFORMLANGUAGE_EXPORT EditorContext
: public DeclarationContext
{
public:
/**
* Builds a context for a KTextEditor part.
* @param view The view for the editor context.
* @param position The cursor position.
*/
EditorContext(KTextEditor::View* view, const KTextEditor::Cursor& position);
/**Destructor.*/
~EditorContext() override;
EditorContext(const EditorContext&) = delete;
EditorContext& operator=(const EditorContext&) = delete;
int type() const override;
/**@return The url for the file which this context was invoked for.*/
QUrl url() const;
QList<QUrl> urls() const override;
/**@return The cursor position.*/
KTextEditor::Cursor position() const;
/**@return A QString with the content of the line which this context was
invoked for.*/
QString currentLine() const;
/**@return A QString containing the word near to the cursor when this
context object was created.*/
QString currentWord() const;
/**
* Returns the associated view.
*/
KTextEditor::View* view() const;
private:
const QScopedPointer<class EditorContextPrivate> d_ptr;
Q_DECLARE_PRIVATE(EditorContext)
};
}
#endif
|