File indexing completed on 2024-05-05 05:48:56
0001 /* 0002 SPDX-FileCopyrightText: 2007 Nicolas Ternisien <nicolas.ternisien@gmail.com> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include <QDateTime> 0010 #include <QStringList> 0011 0012 #include "globals.h" 0013 0014 #include "logLevel.h" 0015 0016 class LogViewWidget; 0017 class LogViewWidgetItem; 0018 0019 class LogLine 0020 { 0021 public: 0022 LogLine(long internalId, const QDateTime &dateTime, const QStringList &logItems, const QString &originalFile, LogLevel *level, LogMode *logMode); 0023 0024 virtual ~LogLine(); 0025 0026 bool isOlderThan(const LogLine &other) const; 0027 bool isNewerThan(const LogLine &other) const; 0028 0029 bool equals(const LogLine &other) const; 0030 0031 bool isSameTime(const LogLine &other) const; 0032 0033 LogLevel *logLevel() const; 0034 0035 long internalId() const; 0036 QDateTime time() const; 0037 QStringList logItems() const; 0038 QString sourceFileName() const; 0039 0040 LogMode *logMode() const; 0041 0042 void setLogItems(const QStringList &logItems); 0043 void setLogLevel(LogLevel *level); 0044 void setLogMode(LogMode *logMode); 0045 0046 void setRecent(bool recent); 0047 void setItem(LogViewWidgetItem *item); 0048 0049 QString formattedText(); 0050 0051 QString exportToText() const; 0052 0053 protected: 0054 long mInternalId; 0055 0056 QDateTime mTime; 0057 0058 QStringList mLogItems; 0059 0060 QString mOriginalFile; 0061 0062 LogLevel *mLogLevel = nullptr; 0063 0064 LogMode *mLogMode = nullptr; 0065 0066 bool mRecent = false; 0067 0068 LogViewWidgetItem *mItem = nullptr; 0069 0070 private: 0071 void initializeItem(); 0072 };