#ifndef TIMECODEDISPLAY_H_
#define TIMECODEDISPLAY_H_
-#include "ui_timecodedisplay_ui.h"
#include "timecode.h"
#include "gentime.h"
+#include <QAbstractSpinBox>
/**
* @class TimecodeDisplay
* TimecodeDisplay can be used to insert eigther frames
* or a timecode in the format HH:MM:SS:FF
*/
-class TimecodeDisplay : public QWidget, public Ui::TimecodeDisplay_UI
+class TimecodeDisplay : public QAbstractSpinBox
{
Q_OBJECT
void setRange(int min, int max);
/** @brief Returns the current input in frames. */
- int value() const;
+ int getValue() const;
/** @brief Returns the current input as a GenTime object. */
GenTime gentime() const;
* @param t the new timecode */
void updateTimeCode(Timecode t);
+ virtual void stepBy(int steps);
+
private:
/** timecode for widget */
Timecode m_timecode;
void slotUpdateTimeCodeFormat();
private slots:
- void slotValueUp();
- void slotValueDown();
+ void slotEditingFinished();
+
+ /** @brief Updates the selection when the cursor position changed.
+ * The digit after the cursor will be selected.
+ * This makes it easier to edit the timecode. */
+ void slotCursorPositionChanged(int oldPos, int newPos);
signals:
/**
protected:
virtual void keyPressEvent(QKeyEvent *e);
- virtual void wheelEvent(QWheelEvent *e);
+ virtual void mouseReleaseEvent(QMouseEvent *);
+// virtual void wheelEvent(QWheelEvent *e);
+ virtual QAbstractSpinBox::StepEnabled stepEnabled () const;
};