File indexing completed on 2024-04-21 03:57:20
0001 /* 0002 SPDX-FileCopyrightText: 2024 Waqar Ahmed <waqar.17a@gmail.com> 0003 SPDX-License-Identifier: LGPL-2.0-or-later 0004 */ 0005 0006 #ifndef KATEARGUMENTHINTTREE_H 0007 #define KATEARGUMENTHINTTREE_H 0008 0009 #include <QFrame> 0010 0011 class KateCompletionWidget; 0012 class KateArgumentHintModel; 0013 class QPlainTextEdit; 0014 class QLabel; 0015 class QFont; 0016 class ArgumentHighlighter; 0017 0018 class ArgumentHintWidget : public QFrame 0019 { 0020 public: 0021 explicit ArgumentHintWidget(KateArgumentHintModel *model, const QFont &font, KateCompletionWidget *completion, QWidget *parent); 0022 0023 void positionAndShow(); 0024 void clearAndHide(); 0025 0026 void selectNext(); 0027 void selectPrevious(); 0028 0029 void updateGeometry(); 0030 0031 private: 0032 void activateHint(int i, int rowCount); 0033 0034 KateCompletionWidget *const m_completionWidget; 0035 QPlainTextEdit *const m_view; 0036 QLabel *const m_currentIndicator; 0037 int m_current = -1; 0038 KateArgumentHintModel *const m_model; 0039 ArgumentHighlighter *const m_highlighter; 0040 QWidget *const m_leftSide; 0041 }; 0042 0043 #endif