, _dragging (0)
, _dragging_new_tab (0)
{
-
+ add_events (Gdk::BUTTON_PRESS_MASK|Gdk::BUTTON_RELEASE_MASK|Gdk::POINTER_MOTION_MASK);
}
GroupTabs::~GroupTabs ()
set_dirty ();
queue_draw ();
+ gdk_event_request_motions(ev);
+
return true;
}
bool
-GroupTabs::on_button_release_event (GdkEventButton* ev)
+GroupTabs::on_button_release_event (GdkEventButton*)
{
if (_dragging == 0) {
return false;
items.push_back (MenuElem (_("Collect Group"), sigc::bind (sigc::mem_fun (*this, &GroupTabs::collect), g)));
items.push_back (MenuElem (_("Remove Group"), sigc::bind (sigc::mem_fun (*this, &GroupTabs::remove_group), g)));
items.push_back (SeparatorElem());
- items.push_back (MenuElem (_("Add New Subgroup Bus"), sigc::bind (sigc::mem_fun (*this, &GroupTabs::subgroup), g, false, PreFader)));
+ if (g->has_subgroup()) {
+ items.push_back (MenuElem (_("Remove Subgroup Bus"), sigc::bind (sigc::mem_fun (*this, &GroupTabs::un_subgroup), g)));
+ } else {
+ items.push_back (MenuElem (_("Add New Subgroup Bus"), sigc::bind (sigc::mem_fun (*this, &GroupTabs::subgroup), g, false, PreFader)));
+ }
items.push_back (MenuElem (_("Add New Aux Bus (pre-fader)"), sigc::bind (sigc::mem_fun (*this, &GroupTabs::subgroup), g, true, PreFader)));
items.push_back (MenuElem (_("Add New Aux Bus (post-fader)"), sigc::bind (sigc::mem_fun (*this, &GroupTabs::subgroup), g, true, PostFader)));
}
g->make_subgroup (aux, placement);
}
+void
+GroupTabs::un_subgroup (RouteGroup* g)
+{
+ g->destroy_subgroup ();
+}
+
struct CollectSorter {
- CollectSorter (string const & key) : _key (key) {}
+ CollectSorter (RouteSortOrderKey key) : _key (key) {}
bool operator () (boost::shared_ptr<Route> a, boost::shared_ptr<Route> b) {
return a->order_key (_key) < b->order_key (_key);
}
- string _key;
+ RouteSortOrderKey _key;
};
struct OrderSorter {
- OrderSorter (string const & key) : _key (key) {}
+ OrderSorter (RouteSortOrderKey key) : _key (key) {}
bool operator() (boost::shared_ptr<Route> a, boost::shared_ptr<Route> b) {
- /* use of ">" forces the correct sort order */
return a->order_key (_key) < b->order_key (_key);
}
- string _key;
+ RouteSortOrderKey _key;
};
/** Collect all members of a RouteGroup so that they are together in the Editor or Mixer.
char buf[64];
snprintf (buf, sizeof (buf), "%d:%d:%d", color.get_red(), color.get_green(), color.get_blue());
- gui_state.set (group_gui_id (group), "color", buf);
+ gui_state.set_property (group_gui_id (group), "color", buf);
/* the group color change notification */