36 lines
749 B
C++
Executable File
36 lines
749 B
C++
Executable File
#pragma once
|
|
|
|
#include <LtsTimeline/item_delegate.h>
|
|
|
|
|
|
namespace LtsTimeline { class Item; }
|
|
|
|
|
|
namespace Timeline
|
|
{
|
|
|
|
class TimelineModel;
|
|
|
|
|
|
class TimelineDelegate : public LtsTimeline::ItemDelegate
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
static const int s_zeroDurationItemWidth;
|
|
|
|
explicit TimelineDelegate(LtsTimeline::TimelineView *parent = nullptr);
|
|
|
|
QSize sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const override;
|
|
|
|
private:
|
|
void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const override;
|
|
|
|
void drawItem(const QStyleOptionViewItem &option, const QModelIndex &index, QPainter *painter, TimelineModel *model,
|
|
const LtsTimeline::Item &item
|
|
) const;
|
|
|
|
};
|
|
|
|
} // namespace Timeline
|