- /** @param g Route group, or 0.
- * @return Menu to be popped up on right-click over the given route group.
- */
- virtual Gtk::Menu* get_menu (ARDOUR::RouteGroup* g) = 0;
-
- void render (cairo_t *);
+ virtual void add_menu_items (Gtk::Menu *, ARDOUR::RouteGroup *) {}
+ virtual PBD::PropertyList default_properties () const;
+ virtual ARDOUR::RouteList selected_routes () const = 0;
+ virtual void sync_order_keys () = 0;
+
+ void new_from_selection ();
+ void new_from_rec_enabled ();
+ void new_from_soloed ();
+ ARDOUR::RouteGroup* create_and_add_group () const;
+ void collect (ARDOUR::RouteGroup *);
+ void set_activation (ARDOUR::RouteGroup *, bool);
+ void edit_group (ARDOUR::RouteGroup *);
+ void subgroup (ARDOUR::RouteGroup *, bool, ARDOUR::Placement);
+ void un_subgroup (ARDOUR::RouteGroup *);
+ void activate_all ();
+ void disable_all ();
+ void remove_group (ARDOUR::RouteGroup *);
+
+ void render (cairo_t *, cairo_rectangle_t*);