X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fghostregion.h;h=3939c46a4b897f3e4e8b0dd0029128d0454747fd;hb=38f2336b450982ccfc03017238c431b5edb3b20c;hp=823d164ede52231f7c220b99e048fe787148f8dc;hpb=4297071b3f7360b17d81ef9cf36b8d75d46d2818;p=ardour.git diff --git a/gtk2_ardour/ghostregion.h b/gtk2_ardour/ghostregion.h index 823d164ede..3939c46a4b 100644 --- a/gtk2_ardour/ghostregion.h +++ b/gtk2_ardour/ghostregion.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2004 Paul Davis + Copyright (C) 2004 Paul Davis This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -21,8 +21,8 @@ #define __ardour_gtk_ghost_region_h__ #include -#include #include +#include "pbd/signals.h" #include "canvas.h" namespace Gnome { @@ -37,10 +37,10 @@ namespace Gnome { class MidiStreamView; class TimeAxisView; -class GhostRegion : public sigc::trackable +class GhostRegion { public: - GhostRegion(ArdourCanvas::Group* parent, TimeAxisViewPtr tv, TimeAxisViewPtr source_tv, double initial_unit_pos); + GhostRegion(ArdourCanvas::Group* parent, TimeAxisView& tv, TimeAxisView& source_tv, double initial_unit_pos); virtual ~GhostRegion(); virtual void set_samples_per_unit(double spu) = 0; @@ -52,17 +52,17 @@ public: guint source_track_color(unsigned char alpha = 0xff); bool is_automation_ghost(); - sigc::signal GoingAway; - - TimeAxisViewPtr trackview; - TimeAxisViewPtr source_trackview; + TimeAxisView& trackview; + TimeAxisView& source_trackview; ArdourCanvas::Group* group; ArdourCanvas::SimpleRect* base_rect; + + static PBD::Signal1 CatchDeletion; }; class AudioGhostRegion : public GhostRegion { public: - AudioGhostRegion(TimeAxisViewPtr tv, TimeAxisViewPtr source_tv, double initial_unit_pos); + AudioGhostRegion(TimeAxisView& tv, TimeAxisView& source_tv, double initial_unit_pos); void set_samples_per_unit(double spu); void set_height(); @@ -99,9 +99,9 @@ public: void x_changed(); ArdourCanvas::Diamond* diamond; }; - - MidiGhostRegion(TimeAxisViewPtr tv, TimeAxisViewPtr source_tv, double initial_unit_pos); - MidiGhostRegion(MidiStreamView& msv, TimeAxisViewPtr source_tv, double initial_unit_pos); + + MidiGhostRegion(TimeAxisView& tv, TimeAxisView& source_tv, double initial_unit_pos); + MidiGhostRegion(MidiStreamView& msv, TimeAxisView& source_tv, double initial_unit_pos); ~MidiGhostRegion(); MidiStreamView* midi_view();