File indexing completed on 2025-02-02 04:11:34

0001 /*
0002  * SPDX-FileCopyrightText: 2019-2023 Mattia Basaglia <dev@dragon.best>
0003  *
0004  * SPDX-License-Identifier: GPL-3.0-or-later
0005  */
0006 
0007 #pragma once
0008 #include <memory>
0009 #include <QTreeView>
0010 
0011 namespace glaxnimate::gui {
0012 
0013 class TimelineTreeview : public QTreeView
0014 {
0015 public:
0016     explicit TimelineTreeview(QWidget* parent = nullptr);
0017     ~TimelineTreeview();
0018 
0019 protected:
0020     void mousePressEvent(QMouseEvent * event) override;
0021     void mouseMoveEvent(QMouseEvent * event) override;
0022     void mouseReleaseEvent(QMouseEvent * event) override;
0023     void paintEvent(QPaintEvent * event) override;
0024     void scrollContentsBy(int dx, int dy) override;
0025 
0026 private:
0027     class Private;
0028     std::unique_ptr<Private> d;
0029 };
0030 
0031 } // namespace glaxnimate::gui