13
0

change ruler rendering to change tick heights and move text down

This commit is contained in:
Paul Davis 2014-11-25 15:31:41 +02:00
parent 065c6d813e
commit 2673ef4af4

View File

@ -158,13 +158,17 @@ Ruler::render (Rect const & area, Cairo::RefPtr<Cairo::Context> cr) const
switch (m->style) { switch (m->style) {
case Mark::Major: case Mark::Major:
cr->rel_line_to (0, -height); if (_divide_height >= 0) {
cr->rel_line_to (0, -_divide_height);
} else {
cr->rel_line_to (0, -height);
}
break; break;
case Mark::Minor: case Mark::Minor:
cr->rel_line_to (0, -height/2.0); cr->rel_line_to (0, -height/4.0);
break; break;
case Mark::Micro: case Mark::Micro:
cr->rel_line_to (0, -height/4.0); cr->rel_line_to (0, -height/16.0);
break; break;
} }
cr->stroke (); cr->stroke ();
@ -177,7 +181,11 @@ Ruler::render (Rect const & area, Cairo::RefPtr<Cairo::Context> cr) const
layout->set_text (m->label); layout->set_text (m->label);
logical = layout->get_pixel_logical_extents (); logical = layout->get_pixel_logical_extents ();
cr->move_to (pos.x + 2.0, self.y0 + logical.get_y()); if (_divide_height >= 0) {
cr->move_to (pos.x + 2.0, self.y0 + _divide_height + logical.get_y() + 2.0); /* 2 pixel padding below divider */
} else {
cr->move_to (pos.x + 2.0, self.y0 + logical.get_y());
}
layout->show_in_cairo_context (cr); layout->show_in_cairo_context (cr);
} }
} }