Files
qt-migration-legatus/qt6-after/qt6-migrated-legatus/Lts/Common/LtsTimelineClassic/Event.h
T
torstenandCopilot d6b6ffce7c Apply clang-format to Lts/Common and DTC/enum headers
- Formatted all CodeGen module files (9 files)
- Formatted LtsAppDescriptor module files
- Formatted LtsAppManager/AppChooser files
- Applied clang-format to all DTC and enum headers across modules
- Removed coordTransTests from CommonUnitTestsPlaceholder (moved to tests/)

Cosmetic changes only, no functional modifications.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-19 14:46:29 +02:00

196 lines
3.8 KiB
C++

#pragma once
#include "ltstimelineclassic_export.h"
#include <LtsUtilsCore/qpoint3d.h>
#include <QColor>
#include <QJsonObject>
#include <QStringList>
class QPainter;
class QRect;
namespace LtsSession
{
class LtsSession;
}
namespace LtsTimelineClassic
{
class LTSTIMELINECLASSIC_EXPORT Event
{
public:
enum ButtonType {
ActiveEvent,
EventBlock,
};
typedef void (*EventPaintFunc)(QPainter*, const QRect&);
static void drawCustomEventGraphicTriangle(QPainter* painter, const QRect& rect);
static void drawCustomEventGraphicInvertTriangle(QPainter* painter, const QRect& rect);
static void drawCustomEventGraphicEllipse(QPainter* painter, const QRect& rect);
static void drawCustomEventGraphicRect(QPainter* painter, const QRect& rect);
static void drawCustomEventGraphicRoundedRect(QPainter* painter, const QRect& rect);
static void drawMultipleEventGraphic(QPainter* painter, const QRect& rect);
Event() = default;
Event(int uniqueId, int typeId, qint64 startTime, qint64 endTime, int playerId, int partyId, int equipmentId,
const QStringList& path, const EventPaintFunc& paintFunc, const QColor& paintColor,
const QJsonObject& detailData, int subEventId = -1, const LtsUtils::QPoint3D& pos = LtsUtils::QPoint3D(),
LtsSession::LtsSession* session = nullptr);
QStringList getActuator() const
{
return m_path;
}
int typeId() const
{
return m_typeId;
}
int uniqueId() const
{
return m_uniqueId;
}
int getSubEventID() const;
QColor getColor() const
{
return m_eventColor;
}
EventPaintFunc getPaintFunc() const
{
return m_paintFunc;
}
qint64 startTime() const
{
return m_startTime;
}
qint64 endTime() const
{
return m_endTime;
}
const QJsonObject& detailData() const
{
return m_detailData;
}
void setDetailData(const QJsonObject& detailData)
{
m_detailData = detailData;
}
void setEndT(qint64 newEnd);
qint64 duration(bool ignoreLiveEvents = false) const;
int playerId() const
{
return m_playerId;
}
void setPlayerId(int playerId)
{
m_playerId = playerId;
}
int partyId() const
{
return m_partyId;
}
void setPartyId(int teamId)
{
m_partyId = teamId;
}
int equipmentId() const
{
return m_equipmentId;
}
void setEquipmentId(int eqId)
{
m_equipmentId = eqId;
}
QString getShortActuator() const;
bool positionValid() const
{
return !std::isnan(m_position.x()) && !std::isnan(m_position.y());
}
const LtsUtils::QPoint3D& position() const
{
return m_position;
}
QPointF pos2d() const
{
return QPointF(m_position.x(), m_position.y());
}
void setPosition(const LtsUtils::QPoint3D& pos)
{
m_position = pos;
}
void hide();
void show();
bool isVisible() const
{
return m_visible;
}
void setVisible(bool visibility = true);
void setDeleted()
{
m_deleted = true;
}
bool isDeleted() const
{
return m_deleted;
}
protected:
NGL::INGLLogger& m_logger;
QStringList m_path;
QJsonObject m_detailData;
LtsUtils::QPoint3D m_position;
EventPaintFunc m_paintFunc = nullptr;
LtsSession::LtsSession* m_session = nullptr;
QColor m_eventColor;
qint64 m_startTime = -1;
qint64 m_endTime = -1;
mutable qint64 m_duration = -1;
int m_uniqueId = -1;
int m_typeId = -1;
int m_subEventId = -1;
int m_playerId = -1;
int m_partyId = -1;
int m_equipmentId = -1;
bool m_deleted = false;
bool m_visible = false;
private:
static bool checkDuration();
};
} // namespace LtsTimelineClassic