File: frameaxiswidget.h

package info (click to toggle)
apitrace 7.1%2Bgit20170623.d38a69d6%2Brepack-3
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 15,992 kB
  • sloc: cpp: 179,347; ansic: 62,439; python: 33,058; java: 377; makefile: 105; sh: 26; xml: 26
file content (31 lines) | stat: -rw-r--r-- 715 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#pragma once

#include "graphaxiswidget.h"

class FrameDataProvider {
public:
    virtual ~FrameDataProvider() {}

    /* Number of frames */
    virtual unsigned size() const = 0;

    /* Start and end values of frame */
    virtual qint64 frameStart(unsigned frame) const = 0;
    virtual qint64 frameEnd(unsigned frame) const = 0;
};

/**
 * A generic axis which will draw frame numbers over a period of values.
 * Frames designated by start / end values.
 */
class FrameAxisWidget : public GraphAxisWidget {
public:
    FrameAxisWidget(QWidget* parent = 0);

    void setDataProvider(FrameDataProvider* data);

    virtual void paintEvent(QPaintEvent *e) override;

protected:
    FrameDataProvider* m_data;
};