Toolbox Qt
Loading...
Searching...
No Matches
tablewidgetitemlink.h
1#ifndef TBQ_WIDGETS_TABLE_TABLEWIDGETITEMLINK_H
2#define TBQ_WIDGETS_TABLE_TABLEWIDGETITEMLINK_H
3
4#include "toolboxqt/toolboxqt_global.h"
5#include "toolboxqt/core/richlink.h"
6
7#include <QTableWidgetItem>
8
9namespace tbq
10{
11
12/*****************************/
13/* Class definitions */
14/* TableWidgetItemLink */
15/*****************************/
16
17class TOOLBOXQT_EXPORT TableWidgetItemLink : public QTableWidgetItem
18{
19
20public:
21 static constexpr int TypeId = QTableWidgetItem::UserType + 1;
22
23public:
25 TableWidgetItemLink(const RichLink &link);
26 TableWidgetItemLink(const QIcon &icon, const RichLink &link);
27
28public:
29 bool openLink() const;
30 void setLink(const RichLink &link);
31
32private:
33 using QTableWidgetItem::setText;
34
35public:
36 static bool isTypeId(const QTableWidgetItem *item);
37};
38
39/*****************************/
40/* Class definitions */
41/* TableWidgetLinkHelper */
42/*****************************/
43
44class TOOLBOXQT_EXPORT TableWidgetLinkHelper
45{
46public:
47 static void manageEvents(QTableWidget *table);
48
49public:
50 static void handleOpening(QTableWidget *table, int row, int column);
51 static void handleHovering(QTableWidget *table, QTableWidgetItem *item);
52};
53
54} // namespace tbq
55
56#endif // TBQ_WIDGETS_TABLE_TABLEWIDGETITEMLINK_H