File indexing completed on 2024-04-28 05:48:56

0001 /*
0002     SPDX-FileCopyrightText: 2019 Mark Nauwelaerts <mark.nauwelaerts@gmail.com>
0003     SPDX-FileCopyrightText: 2019 Christoph Cullmann <cullmann@kde.org>
0004 
0005     SPDX-License-Identifier: MIT
0006 */
0007 
0008 #pragma once
0009 
0010 class LSPClientServerManager;
0011 class LSPClientServer;
0012 
0013 #include <QObject>
0014 #include <memory>
0015 
0016 namespace KTextEditor
0017 {
0018 class View;
0019 class Cursor;
0020 }
0021 
0022 class LSPClientHover : public QObject
0023 {
0024     Q_OBJECT
0025 
0026 public:
0027     // implementation factory method
0028     static LSPClientHover *new_(std::shared_ptr<LSPClientServerManager> manager, class KateTextHintProvider *provider);
0029 
0030     LSPClientHover()
0031     {
0032     }
0033 
0034     virtual void setServer(std::shared_ptr<LSPClientServer> server) = 0;
0035 
0036     // support additional parameters besides the usual interface signature
0037     virtual QString showTextHint(KTextEditor::View *view, const KTextEditor::Cursor &position, bool manual) = 0;
0038 };