Chatterino
TooltipWidget.hpp
Go to the documentation of this file.
1 #pragma once
2 
3 #include "widgets/BaseWindow.hpp"
4 
5 #include <QLabel>
6 #include <QWidget>
7 #include <pajlada/signals/signal.hpp>
8 
9 namespace chatterino {
10 
11 class TooltipWidget : public BaseWindow
12 {
13  Q_OBJECT
14 
15 public:
16  static TooltipWidget *instance();
17 
18  TooltipWidget(BaseWidget *parent = nullptr);
19  ~TooltipWidget() override;
20 
21  void setText(QString text);
22  void setWordWrap(bool wrap);
23  void clearImage();
24  void setImage(QPixmap image);
25 
26 #ifdef USEWINSDK
27  void raise();
28 #endif
29 
30 protected:
31  void changeEvent(QEvent *) override;
32  void leaveEvent(QEvent *) override;
33  void themeChangedEvent() override;
34  void scaleChangedEvent(float) override;
35  void paintEvent(QPaintEvent *) override;
36 
37 private:
38  void updateFont();
39 
40  QLabel *displayImage_;
41  QLabel *displayText_;
42  pajlada::Signals::Connection fontChangedConnection_;
43 };
44 
45 } // namespace chatterino
~TooltipWidget() override
Definition: TooltipWidget.cpp:52
Definition: BaseWindow.hpp:20
Definition: Application.cpp:48
void setText(QString text)
Definition: TooltipWidget.cpp:88
Definition: TooltipWidget.hpp:11
void clearImage()
Definition: TooltipWidget.cpp:98
void scaleChangedEvent(float) override
Definition: TooltipWidget.cpp:77
void paintEvent(QPaintEvent *) override
Definition: TooltipWidget.cpp:70
void themeChangedEvent() override
Definition: TooltipWidget.cpp:65
void leaveEvent(QEvent *) override
Definition: TooltipWidget.cpp:114
void setImage(QPixmap image)
Definition: TooltipWidget.cpp:103
void changeEvent(QEvent *) override
Definition: TooltipWidget.cpp:109
static TooltipWidget * instance()
Definition: TooltipWidget.cpp:18
void setWordWrap(bool wrap)
Definition: TooltipWidget.cpp:93
Definition: BaseWidget.hpp:14
TooltipWidget(BaseWidget *parent=nullptr)
Definition: TooltipWidget.cpp:24