const int View::SignalHeight = 30;
const int View::SignalMargin = 10;
-const int View::SignalSnapGridSize = 10;
const QColor View::CursorAreaColour(220, 231, 243);
void View::normalize_layout()
{
- const vector< shared_ptr<RowItem> > row_items(child_items());
-
int v_min = INT_MAX;
- for (const shared_ptr<RowItem> r : row_items)
+ for (const shared_ptr<RowItem> r : *this)
v_min = min(r->v_offset(), v_min);
const int delta = -min(v_min, 0);
- for (shared_ptr<RowItem> r : row_items)
+ for (shared_ptr<RowItem> r : *this)
r->set_v_offset(r->v_offset() + delta);
verticalScrollBar()->setSliderPosition(_v_offset + delta);
// Create the initial layout
int offset = SignalMargin + SignalHeight;
- for (shared_ptr<RowItem> r : child_items()) {
+ for (shared_ptr<RowItem> r : *this) {
r->set_v_offset(offset);
offset += SignalHeight + 2 * SignalMargin;
}
update_layout();
normalize_layout();
+
+ // Update the child widgets
+ _header->signals_updated();
+ _viewport->signals_updated();
}
void View::data_updated()
void View::on_hover_point_changed()
{
- const vector< shared_ptr<RowItem> > row_items(child_items());
- for (shared_ptr<RowItem> r : row_items)
+ for (shared_ptr<RowItem> r : *this)
r->hover_point_changed();
}