X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=gtk2_ardour%2Fghostregion.cc;h=759ffb94d23a824823f5f8c682c5deda89559093;hb=026c71331e87c1c4a1aaef6ad7ddc1cd0919c660;hp=7a01df65f0c78058d0915228cc33d2a5b198c927;hpb=a0044e5f715563d3abfdbf6c431c97ed41eb9b0d;p=ardour.git diff --git a/gtk2_ardour/ghostregion.cc b/gtk2_ardour/ghostregion.cc index 7a01df65f0..759ffb94d2 100644 --- a/gtk2_ardour/ghostregion.cc +++ b/gtk2_ardour/ghostregion.cc @@ -18,9 +18,11 @@ */ #include "evoral/Note.hpp" -#include "canvas/group.h" +#include "canvas/container.h" #include "canvas/rectangle.h" #include "canvas/wave_view.h" +#include "canvas/debug.h" + #include "ardour_ui.h" #include "automation_time_axis.h" #include "ghostregion.h" @@ -36,18 +38,20 @@ using namespace ARDOUR; PBD::Signal1 GhostRegion::CatchDeletion; -GhostRegion::GhostRegion (ArdourCanvas::Group* parent, TimeAxisView& tv, TimeAxisView& source_tv, double initial_pos) +GhostRegion::GhostRegion (ArdourCanvas::Container* parent, TimeAxisView& tv, TimeAxisView& source_tv, double initial_pos) : trackview (tv) , source_trackview (source_tv) { - group = new ArdourCanvas::Group (parent); + group = new ArdourCanvas::Container (parent); + CANVAS_DEBUG_NAME (group, "ghost region"); group->set_position (ArdourCanvas::Duple (initial_pos, 0)); base_rect = new ArdourCanvas::Rectangle (group); + CANVAS_DEBUG_NAME (base_rect, "ghost region rect"); base_rect->set_x0 (0); - base_rect->set_y0 (0); - base_rect->set_y1 (trackview.current_height()); - base_rect->set_outline_what (0); + base_rect->set_y0 (0.0); + base_rect->set_y1 (trackview.current_height() - 1.0); + base_rect->set_outline_what (ArdourCanvas::Rectangle::What (0)); if (!is_automation_ghost()) { base_rect->hide(); @@ -83,8 +87,8 @@ void GhostRegion::set_colors () { if (is_automation_ghost()) { - base_rect->set_outline_color (ARDOUR_UI::config()->canvasvar_GhostTrackBase.get()); - base_rect->set_fill_color (ARDOUR_UI::config()->canvasvar_GhostTrackBase.get()); + base_rect->set_outline_color (ARDOUR_UI::config()->get_canvasvar_GhostTrackBase()); + base_rect->set_fill_color (ARDOUR_UI::config()->get_canvasvar_GhostTrackBase()); } } @@ -138,17 +142,17 @@ AudioGhostRegion::set_colors () guint fill_color; if (is_automation_ghost()) { - fill_color = ARDOUR_UI::config()->canvasvar_GhostTrackWaveFill.get(); + fill_color = ARDOUR_UI::config()->get_canvasvar_GhostTrackWaveFill(); } else { fill_color = source_track_color(200); } for (uint32_t n=0; n < waves.size(); ++n) { - waves[n]->set_outline_color (ARDOUR_UI::config()->canvasvar_GhostTrackWave.get()); + waves[n]->set_outline_color (ARDOUR_UI::config()->get_canvasvar_GhostTrackWave()); waves[n]->set_fill_color (fill_color); - waves[n]->set_clip_color (ARDOUR_UI::config()->canvasvar_GhostTrackWaveClip.get()); - waves[n]->set_zero_color (ARDOUR_UI::config()->canvasvar_GhostTrackZeroLine.get()); + waves[n]->set_clip_color (ARDOUR_UI::config()->get_canvasvar_GhostTrackWaveClip()); + waves[n]->set_zero_color (ARDOUR_UI::config()->get_canvasvar_GhostTrackZeroLine()); } } @@ -187,10 +191,11 @@ MidiGhostRegion::~MidiGhostRegion() clear_events (); } -MidiGhostRegion::GhostEvent::GhostEvent (NoteBase* e, ArdourCanvas::Group* g) +MidiGhostRegion::GhostEvent::GhostEvent (NoteBase* e, ArdourCanvas::Container* g) : event (e) { rect = new ArdourCanvas::Rectangle (g, ArdourCanvas::Rect (e->x0(), e->y0(), e->x1(), e->y1())); + CANVAS_DEBUG_NAME (rect, "ghost note rect"); } MidiGhostRegion::GhostEvent::~GhostEvent () @@ -232,7 +237,7 @@ MidiGhostRegion::set_colors() for (EventList::iterator it = events.begin(); it != events.end(); ++it) { (*it)->rect->set_fill_color (fill); - (*it)->rect->set_outline_color (ARDOUR_UI::config()->canvasvar_GhostTrackMidiOutline.get()); + (*it)->rect->set_outline_color (ARDOUR_UI::config()->get_canvasvar_GhostTrackMidiOutline()); } } @@ -268,7 +273,7 @@ MidiGhostRegion::add_note (NoteBase* n) events.push_back (event); event->rect->set_fill_color (source_track_color(200)); - event->rect->set_outline_color (ARDOUR_UI::config()->canvasvar_GhostTrackMidiOutline.get()); + event->rect->set_outline_color (ARDOUR_UI::config()->get_canvasvar_GhostTrackMidiOutline()); MidiStreamView* mv = midi_view();