#include "cursorheader.h"
+#include "ruler.h"
#include "view.h"
#include <QApplication>
+#include <QFontMetrics>
#include <QMouseEvent>
#include <pv/widgets/popup.h>
namespace pv {
namespace view {
-const int CursorHeader::CursorHeaderHeight = 26;
+const int CursorHeader::Padding = 20;
+
+int CursorHeader::calculateTextHeight()
+{
+ QFontMetrics fm(font());
+ return fm.boundingRect(0, 0, INT_MAX, INT_MAX,
+ Qt::AlignLeft | Qt::AlignTop, "8").height();
+}
CursorHeader::CursorHeader(View &parent) :
MarginWidget(parent),
- _dragging(false)
+ _dragging(false),
+ _textHeight(calculateTextHeight())
{
setMouseTracking(true);
}
QSize CursorHeader::sizeHint() const
{
- return QSize(0, CursorHeaderHeight);
+ return QSize(0, _textHeight + Padding);
}
void CursorHeader::clear_selection()
QPainter p(this);
p.setRenderHint(QPainter::Antialiasing);
+ unsigned int prefix = pv::view::Ruler::calculate_tick_spacing(
+ p, _view.scale(), _view.offset()).second;
+
// Draw the cursors
if (_view.cursors_shown()) {
- _view.cursors().draw_markers(p, rect(), 0); //prefix);
+ _view.cursors().draw_markers(p, rect(), prefix);
}
}