#include <QRectF>
#include <QWidgetAction>
-#include "selectableitem.hpp"
+#include "timeitem.hpp"
class QPainter;
class QRect;
class View;
-class TimeMarker : public SelectableItem
+class TimeMarker : public TimeItem
{
Q_OBJECT
+public:
+ static const int ArrowSize;
+ static const int Offset;
+
protected:
/**
* Constructor.
*/
virtual void paint(QPainter &p, const QRect &rect);
+ /**
+ * Gets the text to show in the marker.
+ */
+ virtual QString get_text() const = 0;
+
/**
* Gets the marker label rectangle.
* @param rect The rectangle of the ruler client area.
* @return Returns the label rectangle.
*/
- virtual QRectF get_label_rect(const QRect &rect) const = 0;
+ virtual QRectF get_label_rect(const QRect &rect) const;
/**
* Paints the marker's label to the ruler.
* @param p The painter to draw with.
* @param rect The rectangle of the ruler client area.
- * @param prefix The SI prefix to paint time value with.
*/
- virtual void paint_label(QPainter &p, const QRect &rect,
- unsigned int prefix) = 0;
+ void paint_label(QPainter &p, const QRect &rect);
pv::widgets::Popup* create_popup(QWidget *parent);
void time_changed();
protected:
- View &view_;
const QColor &colour_;
double time_;