trackview.current_height() - 1.0));
CANVAS_DEBUG_NAME (frame, string_compose ("frame for %1", get_item_name()));
-
+
if (Config->get_show_name_highlight()) {
frame->set_outline_what (ArdourCanvas::Rectangle::What (ArdourCanvas::Rectangle::LEFT|ArdourCanvas::Rectangle::RIGHT));
} else {
name_text->set_position (ArdourCanvas::Duple (NAME_X_OFFSET, NAME_Y_OFFSET));
}
name_text->set_font_description (NAME_FONT);
+ name_text->set_ignore_events (true);
} else {
name_text = 0;
}
Selectable::set_selected (yn);
set_frame_color ();
set_name_text_color ();
+
+ if (frame) {
+ if (!Config->get_show_name_highlight() && yn) {
+ frame->set_outline_what (ArdourCanvas::Rectangle::What (ArdourCanvas::Rectangle::LEFT|ArdourCanvas::Rectangle::RIGHT|ArdourCanvas::Rectangle::BOTTOM|ArdourCanvas::Rectangle::TOP));
+ frame->set_y1 (_height - 1.0);
+ } else {
+ if (Config->get_show_name_highlight()) {
+ frame->set_outline_what (ArdourCanvas::Rectangle::What (ArdourCanvas::Rectangle::LEFT|ArdourCanvas::Rectangle::RIGHT));
+ } else {
+ frame->set_outline_what (ArdourCanvas::Rectangle::What (ArdourCanvas::Rectangle::LEFT|ArdourCanvas::Rectangle::RIGHT|ArdourCanvas::Rectangle::BOTTOM));
+ }
+ frame->set_y1 (_height);
+ }
+ }
}
}
}
if (frame) {
- frame->set_y1 (height);
+ if (!Config->get_show_name_highlight() && _selected) {
+ frame->set_outline_what (ArdourCanvas::Rectangle::What (ArdourCanvas::Rectangle::LEFT|ArdourCanvas::Rectangle::RIGHT|ArdourCanvas::Rectangle::BOTTOM|ArdourCanvas::Rectangle::TOP));
+ frame->set_y1 (_height - 1.0);
+ } else {
+ if (Config->get_show_name_highlight()) {
+ frame->set_outline_what (ArdourCanvas::Rectangle::What (ArdourCanvas::Rectangle::LEFT|ArdourCanvas::Rectangle::RIGHT));
+ } else {
+ frame->set_outline_what (ArdourCanvas::Rectangle::What (ArdourCanvas::Rectangle::LEFT|ArdourCanvas::Rectangle::RIGHT|ArdourCanvas::Rectangle::BOTTOM));
+ }
+ frame->set_y1 (_height);
+ }
+
if (frame_handle_start) {
frame_handle_start->set_y1 (height);
frame_handle_end->set_y1 (height);
f = get_fill_color ();
}
- name_text->set_color (contrasting_text_color (f));
+ name_text->set_color (ArdourCanvas::contrasting_text_color (f));
}
uint32_t