13
0

rework track inset (amend 7d7b787 and bf13bf63):

Only inset red-selection rectangle (top & bottom).
Do not draw duplicate borders (waste pixels) for regular regions.
This commit is contained in:
Robin Gareus 2014-08-31 23:36:38 +02:00
parent 4718def3c4
commit cb8ce29725
2 changed files with 29 additions and 4 deletions

View File

@ -158,7 +158,7 @@
<Option name="stereo panner inverted bg" value="2e2929ff"/>
<Option name="tempo bar" value="70727fcc"/>
<Option name="tempo marker" value="f2425bff"/>
<Option name="time axis frame" value="333639ff"/>
<Option name="time axis frame" value="000000ff"/>
<Option name="selected time axis frame" value="ee0000ff"/>
<Option name="time stretch fill" value="e2b5b596"/>
<Option name="time stretch outline" value="63636396"/>

View File

@ -201,11 +201,11 @@ TimeAxisViewItem::init (ArdourCanvas::Item* parent, double fpp, uint32_t base_co
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 {
frame->set_outline_what (ArdourCanvas::Rectangle::What (ArdourCanvas::Rectangle::LEFT|ArdourCanvas::Rectangle::RIGHT|ArdourCanvas::Rectangle::BOTTOM|ArdourCanvas::Rectangle::TOP));
frame->set_outline_what (ArdourCanvas::Rectangle::What (ArdourCanvas::Rectangle::LEFT|ArdourCanvas::Rectangle::RIGHT|ArdourCanvas::Rectangle::BOTTOM));
}
if (_recregion) {
@ -543,6 +543,20 @@ TimeAxisViewItem::set_selected(bool yn)
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);
}
}
}
}
@ -593,7 +607,18 @@ TimeAxisViewItem::set_height (double height)
}
if (frame) {
frame->set_y1 (height -1);
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);