From a0f22a822230639739e0b6cee5af962b9969f164 Mon Sep 17 00:00:00 2001 From: duanshengchao <519970194@qq.com> Date: Tue, 19 Nov 2024 14:53:28 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0util=E7=9B=AE=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- util/TimeLine/timeLineWidget.cpp | 42 ++++++++++++++++++++++++++++++++ util/TimeLine/timeLineWidget.h | 27 ++++++++++++++++++++ 2 files changed, 69 insertions(+) create mode 100644 util/TimeLine/timeLineWidget.cpp create mode 100644 util/TimeLine/timeLineWidget.h diff --git a/util/TimeLine/timeLineWidget.cpp b/util/TimeLine/timeLineWidget.cpp new file mode 100644 index 0000000..784f889 --- /dev/null +++ b/util/TimeLine/timeLineWidget.cpp @@ -0,0 +1,42 @@ +#include "timeLineWidget.h" + +#include +#include + +namespace TimeLine +{ + +class TimeLineWidgetPrivate +{ +public: + QGraphicsScene* m_pScene; + QColor m_background_color; + QColor m_timeline_color; +}; + +TimeLineWidget::TimeLineWidget(QWidget *parent) + : QGraphicsView(parent) + , d_ptr(new TimeLine::TimeLineWidgetPrivate) +{ + d_ptr->m_pScene = new QGraphicsScene; + + setScene(d_ptr->m_pScene); +} + +TimeLineWidget::~TimeLineWidget() +{ + delete d_ptr; +} + +void TimeLineWidget::setBackground(QColor color) +{ + d_ptr->m_background_color = color; +} + +void TimeLineWidget::setTimelineColor(QColor color) +{ + d_ptr->m_timeline_color = color; + setBackgroundBrush(QBrush(color, Qt::SolidPattern)); +} + +} // namespace TimeLine diff --git a/util/TimeLine/timeLineWidget.h b/util/TimeLine/timeLineWidget.h new file mode 100644 index 0000000..2fcb051 --- /dev/null +++ b/util/TimeLine/timeLineWidget.h @@ -0,0 +1,27 @@ +#ifndef TIMELINEWIDGET_H +#define TIMELINEWIDGET_H + +#include + +namespace TimeLine +{ + +class TimeLineWidgetPrivate; + +class TimeLineWidget : public QGraphicsView +{ + Q_OBJECT +public: + explicit TimeLineWidget(QWidget *parent = 0); + virtual ~TimeLineWidget(); + + void setBackground(QColor); + void setTimelineColor(QColor); + +private: + TimeLineWidgetPrivate* d_ptr; +}; // class TimeLineWidget + +} // namespace TimeLine + +#endif