OpenTwin 0.1
OpenTwin
 
Loading...
Searching...
No Matches
Logging.h
Go to the documentation of this file.
1
4// ###########################################################################################################################################################################################################################################################################################################################
5
6#pragma once
7
8// API header
9#include "OToolkitAPI/Tool.h"
10
11// OT header
12#include "OTCore/Logger.h" // LogMessage
13
14// Qt header
15#include <QtCore/qobject.h>
16#include <QtCore/qlist.h>
17#include <QtWidgets/qdialog.h>
18
19// std header
20#include <list>
21
22class LogModeSetter;
24
25class QWidget;
26class QVBoxLayout;
27class QHBoxLayout;
28class QGridLayout;
29class QGroupBox;
30class QCheckBox;
31class QPushButton;
32class QPlainTextEdit;
33class QTableWidget;
34class QTableWidgetItem;
35class QLabel;
36
37class QAction;
38class QShortcut;
39
40class Logging : public QObject, public otoolkit::Tool {
41 Q_OBJECT
42public:
43 // Static functions
44
45 static QString logMessageTypeString(const ot::LogMessage& _msg);
46
47 // ###########################################################################################################################################################################################################################################################################################################################
48
49 Logging();
50 virtual ~Logging();
51
52 // ###########################################################################################################################################################################################################################################################################################################################
53
54 // API base functions
55
58 virtual QString getToolName(void) const override;
59
61 virtual bool runTool(QMenu* _rootMenu, otoolkit::ToolWidgets& _content) override;
62
63 virtual void restoreToolSettings(QSettings& _settings) override;
64
66 virtual bool prepareToolShutdown(QSettings& _settings) override;
67
68 // ###########################################################################################################################################################################################################################################################################################################################
69
70 // Log Visualization
71
72 void appendLogMessage(const ot::LogMessage& _msg);
73 void appendLogMessages(const std::list<ot::LogMessage>& _messages);
74
75public Q_SLOTS:
76 void slotUpdateColumnWidth(void);
77
78 void runQuickExport(void);
79 void slotConnect(void);
80 void slotAutoConnect(void);
81 void slotImport(void);
82 void slotExport(void);
83
84 void slotClear(void);
85 void slotClearAll(void);
86 void slotFilterChanged(void);
88 void slotUpdateCheckboxColors(void);
89 void slotToggleAutoConnect(void);
90 void slotViewCellContent(QTableWidgetItem* _itm);
91 void slotScrollToItem(int _row);
92
93private:
94 void iniTableItem(int _row, int _column, QTableWidgetItem* _itm);
95 void updateCountLabels(void);
96 void connectToLogger(bool _isAutoConnect);
97 bool disconnectFromLogger(void);
98
99 // Data
100
101 LogModeSetter* m_logModeSetter;
102 LoggingFilterView* m_filterView;
103
104 std::list<ot::LogMessage> m_messages;
105 int m_errorCount;
106 int m_warningCount;
107
108 std::string m_loggerUrl;
109
110 QString m_columnWidthTmp;
111
112 ot::WidgetView* m_root;
113
114 QCheckBox* m_ignoreNewMessages;
115 QCheckBox* m_autoScrollToBottom;
116 QTableWidget* m_table;
117
118 // Status Bar
119 QLabel* m_errorCountLabel;
120 QLabel* m_warningCountLabel;
121 QLabel* m_messageCountLabel;
122
123 // Tool Bar
124 QAction* m_connectButton;
125 QAction* m_autoConnect;
126 QAction* m_importButton;
127 QAction* m_exportButton;
128};
OpenTwin Logging system.
Definition LogModeSetter.h:20
Definition LoggingFilterView.h:22
Definition Logging.h:40
void appendLogMessages(const std::list< ot::LogMessage > &_messages)
Definition Logging.cpp:424
virtual void restoreToolSettings(QSettings &_settings) override
Definition Logging.cpp:191
virtual bool prepareToolShutdown(QSettings &_settings) override
Stop all the logic of this tool.
Definition Logging.cpp:207
void slotToggleAutoConnect(void)
Definition Logging.cpp:342
virtual QString getToolName(void) const override
Return the unique tool name The name will be used to create all required menu entries.
Definition Logging.cpp:81
void slotClear(void)
Definition Logging.cpp:293
virtual bool runTool(QMenu *_rootMenu, otoolkit::ToolWidgets &_content) override
Create the central widget that will be displayed to the user in the main tab view.
Definition Logging.cpp:85
void slotFilterChanged(void)
Definition Logging.cpp:307
void slotAutoScrollToBottomChanged(void)
Definition Logging.cpp:330
void appendLogMessage(const ot::LogMessage &_msg)
Definition Logging.cpp:370
void slotScrollToItem(int _row)
Definition Logging.cpp:360
void runQuickExport(void)
Definition Logging.cpp:444
void slotUpdateCheckboxColors(void)
Definition Logging.cpp:334
void slotClearAll(void)
Definition Logging.cpp:301
void slotAutoConnect(void)
Definition Logging.cpp:232
void slotExport(void)
Definition Logging.cpp:268
void slotImport(void)
Definition Logging.cpp:236
void slotUpdateColumnWidth(void)
Definition Logging.cpp:433
static QString logMessageTypeString(const ot::LogMessage &_msg)
Definition Logging.cpp:478
Logging()
Definition Logging.cpp:71
void slotConnect(void)
Definition Logging.cpp:228
virtual ~Logging()
Definition Logging.cpp:77
void slotViewCellContent(QTableWidgetItem *_itm)
Definition Logging.cpp:349
Contains information about the origin and the content of a log message.
Definition Logger.h:345
The WidgetView class is used to integrate the Qt-ADS functionallity into open twin.
Definition WidgetView.h:33
Definition Tool.h:27
Definition ToolWidgets.h:24