Files
qt5-legatus-legacy/Lts/Tools/LogViewer/logviewtableview.h
T
2026-08-13 18:33:10 +02:00

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;
};