diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2013-04-04 00:32:52 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2013-04-04 00:32:52 -0400 |
commit | aaea166135ace01709f7e0be64f40be80f4107ec (patch) | |
tree | 0e794ef7a723e4aaf909b841a6816e405b4ceca1 /gtk2_ardour/ghostregion.cc | |
parent | 1d8bac08c0c00d44e22c581768a275e1b21a99a7 (diff) |
initial commit of hand merging, plus getting "ancient" waf script to work correctly
Diffstat (limited to 'gtk2_ardour/ghostregion.cc')
-rw-r--r-- | gtk2_ardour/ghostregion.cc | 68 |
1 files changed, 33 insertions, 35 deletions
diff --git a/gtk2_ardour/ghostregion.cc b/gtk2_ardour/ghostregion.cc index 31e6de390b..e21f77f654 100644 --- a/gtk2_ardour/ghostregion.cc +++ b/gtk2_ardour/ghostregion.cc @@ -18,15 +18,16 @@ */ #include "evoral/Note.hpp" +#include "canvas/group.h" +#include "canvas/rectangle.h" +#include "canvas/wave_view.h" #include "ardour_ui.h" #include "automation_time_axis.h" -#include "canvas-note.h" #include "ghostregion.h" #include "midi_streamview.h" #include "midi_time_axis.h" #include "rgb_macros.h" -#include "simplerect.h" -#include "waveview.h" +#include "note.h" using namespace std; using namespace Editing; @@ -39,15 +40,14 @@ GhostRegion::GhostRegion (ArdourCanvas::Group* parent, TimeAxisView& tv, TimeAxi : trackview (tv) , source_trackview (source_tv) { - group = new ArdourCanvas::Group (*parent); - group->property_x() = initial_pos; - group->property_y() = 0.0; + group = new ArdourCanvas::Group (parent); + group->set_position (ArdourCanvas::Duple (initial_pos, 0)); - base_rect = new ArdourCanvas::SimpleRect (*group); - base_rect->property_x1() = (double) 0.0; - base_rect->property_y1() = (double) 0.0; - base_rect->property_y2() = (double) trackview.current_height(); - base_rect->property_outline_what() = (guint32) 0; + base_rect = new ArdourCanvas::Rectangle (group); + base_rect->set_x0 (0); + base_rect->set_y0 (0); + base_rect->set_y1 (trackview.current_height()); + base_rect->set_outline_what (0); if (!is_automation_ghost()) { base_rect->hide(); @@ -70,21 +70,21 @@ GhostRegion::~GhostRegion () void GhostRegion::set_duration (double units) { - base_rect->property_x2() = units; + base_rect->set_x1 (units); } void GhostRegion::set_height () { - base_rect->property_y2() = (double) trackview.current_height(); + base_rect->set_y1 (trackview.current_height()); } void GhostRegion::set_colors () { if (is_automation_ghost()) { - base_rect->property_outline_color_rgba() = ARDOUR_UI::config()->canvasvar_GhostTrackBase.get(); - base_rect->property_fill_color_rgba() = ARDOUR_UI::config()->canvasvar_GhostTrackBase.get(); + base_rect->set_outline_color (ARDOUR_UI::config()->canvasvar_GhostTrackBase.get()); + base_rect->set_fill_color (ARDOUR_UI::config()->canvasvar_GhostTrackBase.get()); } } @@ -107,29 +107,27 @@ AudioGhostRegion::AudioGhostRegion(TimeAxisView& tv, TimeAxisView& source_tv, do } -void -AudioGhostRegion::set_samples_per_unit (double spu) +ovoid +AudioGhostRegion::set_frames_per_pixel (double fpp) { for (vector<WaveView*>::iterator i = waves.begin(); i != waves.end(); ++i) { - (*i)->property_samples_per_unit() = spu; + (*i)->set_frames_per_pixel (fpp); } } void AudioGhostRegion::set_height () { - gdouble ht; vector<WaveView*>::iterator i; uint32_t n; GhostRegion::set_height(); - ht = ((trackview.current_height()) / (double) waves.size()); + double const ht = ((trackview.current_height()) / (double) waves.size()); for (n = 0, i = waves.begin(); i != waves.end(); ++i, ++n) { - gdouble yoff = n * ht; - (*i)->property_height() = ht; - (*i)->property_y() = yoff; + (*i)->set_height (ht); + (*i)->set_y_position (n * ht); } } @@ -147,8 +145,8 @@ AudioGhostRegion::set_colors () } for (uint32_t n=0; n < waves.size(); ++n) { - waves[n]->property_wave_color() = ARDOUR_UI::config()->canvasvar_GhostTrackWave.get(); - waves[n]->property_fill_color() = fill_color; + waves[n]->set_outline_color (ARDOUR_UI::config()->canvasvar_GhostTrackWave.get()); + waves[n]->set_fill_color (fill_color); waves[n]->property_clip_color() = ARDOUR_UI::config()->canvasvar_GhostTrackWaveClip.get(); waves[n]->property_zero_color() = ARDOUR_UI::config()->canvasvar_GhostTrackZeroLine.get(); } @@ -189,10 +187,10 @@ MidiGhostRegion::~MidiGhostRegion() clear_events (); } -MidiGhostRegion::Event::Event (ArdourCanvas::CanvasNoteEvent* e, ArdourCanvas::Group* g) +MidiGhostRegion::Event::Event (NoteBase* e, ArdourCanvas::Group* g) : event (e) { - rect = new ArdourCanvas::SimpleRect (*g, e->x1(), e->y1(), e->x2(), e->y2()); + rect = new ArdourCanvas::Rectangle (*g, e->x1(), e->y1(), e->x2(), e->y2()); } MidiGhostRegion::Event::~Event () @@ -202,7 +200,7 @@ MidiGhostRegion::Event::~Event () } void -MidiGhostRegion::set_samples_per_unit (double /*spu*/) +MidiGhostRegion::set_frames_per_pixel (double /*spu*/) { } @@ -264,7 +262,7 @@ MidiGhostRegion::update_range () } void -MidiGhostRegion::add_note(ArdourCanvas::CanvasNote* n) +MidiGhostRegion::add_note(NoteBase* n) { Event* event = new Event (n, group); events.push_back (event); @@ -302,17 +300,17 @@ MidiGhostRegion::clear_events() * @param parent The CanvasNote from the parent MidiRegionView. */ void -MidiGhostRegion::update_note (ArdourCanvas::CanvasNote* parent) +MidiGhostRegion::update_note (Note* parent) { Event* ev = find_event (parent); if (!ev) { return; } - double const x1 = parent->property_x1 (); - double const x2 = parent->property_x2 (); - ev->rect->property_x1 () = x1; - ev->rect->property_x2 () = x2; + double const x1 = parent->x0 (); + double const x2 = parent->x1 (); + ev->rect->set_x0 (x1); + ev->rect->set_x1 (x2); } void @@ -334,7 +332,7 @@ MidiGhostRegion::remove_note (ArdourCanvas::CanvasNoteEvent* note) */ MidiGhostRegion::Event * -MidiGhostRegion::find_event (ArdourCanvas::CanvasNoteEvent* parent) +MidiGhostRegion::find_event (Note* parent) { /* we are using _optimization_iterator to speed up the common case where a caller is going through our notes in order. |