13
0

Fix crash when deleting route while creating a routegroup for it

This reverts 00e35c48b6. Modal dialog does not
allow to change the color of the RouteGroup. Interaction
with the colorpicker was not possible.

See also 0db79b8023
This commit is contained in:
Robin Gareus 2024-08-13 21:07:51 +02:00
parent b501eaf43a
commit b55e94ced4
Signed by: rgareus
GPG Key ID: A090BCE02CF57F04
3 changed files with 11 additions and 2 deletions

View File

@ -698,7 +698,13 @@ GroupTabs::run_new_group_dialog (RouteList const * rl, bool with_master)
}
RouteGroup* g = new RouteGroup (*_session, "");
RouteGroupDialog* d = new RouteGroupDialog (g, true);
RouteGroupDialog* d = new RouteGroupDialog (g, true); // XXX
if (rl) {
for (auto const& r : *rl) {
r->DropReferences.connect (_new_route_group_connection, invalidator (*d), boost::bind (&Dialog::response, d, RESPONSE_CANCEL), gui_context());
}
}
d->signal_response().connect (sigc::bind (sigc::mem_fun (*this, &GroupTabs::new_group_dialog_finished), d, rl ? new RouteList (*rl): 0, with_master));
d->present ();
@ -707,6 +713,7 @@ GroupTabs::run_new_group_dialog (RouteList const * rl, bool with_master)
void
GroupTabs::new_group_dialog_finished (int r, RouteGroupDialog* d, RouteList const * rl, bool with_master) const
{
_new_route_group_connection.disconnect ();
if (r == RESPONSE_OK) {
if (!d->name_check()) {

View File

@ -178,6 +178,8 @@ private:
bool _hovering;
mutable PBD::ScopedConnection _new_route_group_connection;
/** colors that have been used for new route group tabs */
static std::list<Gdk::Color> _used_colors;
};

View File

@ -42,7 +42,7 @@ using namespace std;
using namespace PBD;
RouteGroupDialog::RouteGroupDialog (RouteGroup* g, bool creating_new)
: ArdourDialog (_("Track/bus Group"), creating_new)
: ArdourDialog (_("Track/bus Group"))
, _group (g)
, _initial_name (g->name ())
, _active (_("Active"))