X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Froute_processor_selection.h;h=d92436dbc4821dd23c8077287112a8b61c55cbf0;hb=a02d8d254aca3c5f29395833458b4c8516c638d4;hp=78f6ddca4886d09a5fd5cdfd28214021e786c945;hpb=05bcdd1d4c583c68ed977164913ff47e94df7adb;p=ardour.git diff --git a/gtk2_ardour/route_processor_selection.h b/gtk2_ardour/route_processor_selection.h index 78f6ddca48..d92436dbc4 100644 --- a/gtk2_ardour/route_processor_selection.h +++ b/gtk2_ardour/route_processor_selection.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,43 +21,45 @@ #define __ardour_gtk_route_processor_selection_h__ #include -#include +#include "pbd/signals.h" #include "processor_selection.h" -#include "route_selection.h" +#include "route_ui_selection.h" -class RouteRedirectSelection : public sigc::trackable -{ - public: - ProcessorSelection processors; - RouteSelection routes; +namespace ARDOUR { + class SessionHandlePtr; +} + +class AxisViewProvider; - RouteRedirectSelection() {} +class RouteProcessorSelection : public ProcessorSelection +{ +public: + AxisViewSelection axes; - RouteRedirectSelection& operator= (const RouteRedirectSelection& other); + RouteProcessorSelection (ARDOUR::SessionHandlePtr&, AxisViewProvider&); - sigc::signal ProcessorsChanged; - sigc::signal RoutesChanged; + RouteProcessorSelection& operator= (const RouteProcessorSelection& other); void clear (); bool empty(); - void set (boost::shared_ptr); - void set (const std::vector >&); - void add (boost::shared_ptr); - void add (const std::vector >&); - void remove (boost::shared_ptr); + void set (AxisView*); + void add (AxisView*, bool with_groups = false); + void remove (AxisView*, bool with_groups = false); + bool selected (AxisView*); - void set (boost::shared_ptr); - void add (boost::shared_ptr); - void remove (boost::shared_ptr); - - void clear_processors (); void clear_routes (); - bool selected (boost::shared_ptr); + void presentation_info_changed (PBD::PropertyChange const & what_changed); + +private: + ARDOUR::SessionHandlePtr& shp; + AxisViewProvider& avp; + void removed (AxisView*); + std::list add_grouped_tracks (AxisView*) const; }; -bool operator==(const RouteRedirectSelection& a, const RouteRedirectSelection& b); +bool operator==(const RouteProcessorSelection& a, const RouteProcessorSelection& b); #endif /* __ardour_gtk_route_processor_selection_h__ */