/* * @RDE_HEADER@ * * $Id$ * $HeadURL$ * $Author$ * Created by Malte Schröder, SLSE, 2016-07-14 */ #pragma once #include #include class QAction; class QMenu; class LogViewTableView : public QTableView { Q_OBJECT public: explicit LogViewTableView(QWidget *parent = nullptr); ~LogViewTableView(); void setContentAvailable(bool state) { m_contentAvailable = state; } public slots: void showActivatedFilter(QVector &filter); private slots: void setCellColor(); void setFontColor(); signals: void mouseMoved(const QPoint &coords); void cellColorIsAboutToChange(const QColor &color, const QString &str); void fontColorIsAboutToChange(const QColor &color, const QString &str); void dateFilterIsAboutToChange(); void levelFilterIsAboutToChange(); void loggerFilterIsAboutToChange(); void dataFilterIsAboutToChange(); void locationFilterIsAboutToChange(); void resetAllFilter(); void whichFilterAreActivated(); private: void mouseReleaseEvent(QMouseEvent *event) override; void mouseMoveEvent(QMouseEvent *event) override; void enableColorSubMenuActions(bool checkState); // Color QMenu *m_contextMenu; QMenu *m_colorMenu; QAction *m_actionSetCellColor; QAction *m_actionSetFontColor; // Filter QMenu *m_filterMenu; QAction *m_actionFilterDate; QAction *m_actionFilterLevel; QAction *m_actionFilterLogger; QAction *m_actionFilterData; QAction *m_actionFilterLocation; QAction *m_actionResetFilter; QPoint m_coords; bool m_contentAvailable; };