73 lines
1.7 KiB
C++
Executable File
73 lines
1.7 KiB
C++
Executable File
/*
|
|
* @RDE_HEADER@
|
|
* <short description>
|
|
* $Id$
|
|
* $HeadURL$
|
|
* $Author$
|
|
* Created by Malte Schröder, SLSE, 2016-07-14
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <QTableView>
|
|
#include <QPoint>
|
|
|
|
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<bool> &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;
|
|
};
|