13 #ifndef CXCONSOLEWIDGET_H_ 14 #define CXCONSOLEWIDGET_H_ 16 #include "cxResourceWidgetsExport.h" 20 #include <QTextBrowser> 21 #include <QTextCharFormat> 24 class QTableWidgetItem;
27 class QContextMenuEvent;
33 class PopupToolbarWidget;
41 virtual void clear() = 0;
44 virtual QString
getType()
const = 0;
49 std::map<MESSAGE_LEVEL, QTextCharFormat>
mFormat;
60 virtual QString
getType()
const {
return "detail";}
67 QTableWidgetItem *addItem(
int column, QString text,
const Message& message);
68 void scrollToBottom();
80 virtual QString
getType()
const {
return "simple";}
85 void format(
const Message &message);
86 QString getCompactMessage(
Message message);
88 void scrollToBottom();
89 bool mScrollToBottomEnabled;
105 ConsoleWidget(QWidget* parent, QString uid=
"console_widget", QString name=
"Console");
109 void setDetails(
bool on);
112 void contextMenuEvent(QContextMenuEvent* event);
113 virtual void showEvent(QShowEvent* event);
116 virtual void prePaintEvent();
119 void onChannelSelectorChanged();
120 void onLoggingFolderChanged();
121 void receivedMessage(
Message message);
122 void receivedChannel(QString channel);
125 void onSeverityDown();
126 void onSeverityChange(
int delta);
129 void updateShowHeader();
134 void printMessage(
const Message& message);
135 void addSeverityButtons(QBoxLayout* buttonLayout);
136 void addDetailsButton(QBoxLayout* buttonLayout);
137 void createChannelSelector();
138 void updateSeverityIndicator(QString iconname, QString help);
139 void addSeverityIndicator(QBoxLayout* buttonLayout);
140 void updateSeverityIndicator();
141 QString getDetailTypeFromButton()
const;
142 void selectMessagesWidget();
143 void createButtonWidget(QWidget *widget);
146 QAction* mSeverityAction;
148 QVBoxLayout* mMessagesLayout;
150 QAction* mDetailsAction;
152 QStringList mChannels;
153 MessageListenerPtr mMessageListener;
154 boost::shared_ptr<class MessageFilterConsole> mMessageFilter;
Helper class for storing one string value in an xml document.
boost::shared_ptr< class StringProperty > StringPropertyPtr
boost::shared_ptr< class Log > LogPtr
Helper class for xml files used to store ssc/cx data.
boost::shared_ptr< class MessageListener > MessageListenerPtr
Namespace for all CustusX production code.