projects
/
ardour.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix comments.
[ardour.git]
/
gtk2_ardour
/
route_group_menu.cc
diff --git
a/gtk2_ardour/route_group_menu.cc
b/gtk2_ardour/route_group_menu.cc
index 6c3e9db73dea4edfb363b0ea4644f163fb3606c0..7e05c26fe3d63414a559793806c9291cf0d8b52e 100644
(file)
--- a/
gtk2_ardour/route_group_menu.cc
+++ b/
gtk2_ardour/route_group_menu.cc
@@
-28,9
+28,9
@@
using namespace Gtk;
using namespace ARDOUR;
using namespace Gtk;
using namespace ARDOUR;
-RouteGroupMenu::RouteGroupMenu (Session
&
s, RouteGroup::Property p)
- :
_session (s),
-
_default_properties (p)
+RouteGroupMenu::RouteGroupMenu (Session
*
s, RouteGroup::Property p)
+ :
SessionHandlePtr (s)
+
,
_default_properties (p)
{
rebuild (0);
}
{
rebuild (0);
}
@@
-42,17
+42,19
@@
RouteGroupMenu::rebuild (RouteGroup* curr)
items().clear ();
items().clear ();
- items().push_back (MenuElem (_("New group..."), mem_fun (*this, &RouteGroupMenu::new_group)));
+ items().push_back (MenuElem (_("New group..."),
sigc::
mem_fun (*this, &RouteGroupMenu::new_group)));
items().push_back (SeparatorElem ());
RadioMenuItem::Group group;
items().push_back (SeparatorElem ());
RadioMenuItem::Group group;
- items().push_back (RadioMenuElem (group, _("No group"),
bind (
mem_fun (*this, &RouteGroupMenu::set_group), (RouteGroup *) 0)));
+ items().push_back (RadioMenuElem (group, _("No group"),
sigc::bind (sigc::
mem_fun (*this, &RouteGroupMenu::set_group), (RouteGroup *) 0)));
if (curr == 0) {
static_cast<RadioMenuItem*> (&items().back())->set_active ();
}
if (curr == 0) {
static_cast<RadioMenuItem*> (&items().back())->set_active ();
}
- _session.foreach_route_group (bind (mem_fun (*this, &RouteGroupMenu::add_item), curr, &group));
+ if (_session) {
+ _session->foreach_route_group (sigc::bind (sigc::mem_fun (*this, &RouteGroupMenu::add_item), curr, &group));
+ }
}
void
}
void
@@
-60,7
+62,7
@@
RouteGroupMenu::add_item (RouteGroup* rg, RouteGroup* curr, RadioMenuItem::Group
{
using namespace Menu_Helpers;
{
using namespace Menu_Helpers;
- items().push_back (RadioMenuElem (*group, rg->name(),
bind (
mem_fun(*this, &RouteGroupMenu::set_group), rg)));
+ items().push_back (RadioMenuElem (*group, rg->name(),
sigc::bind (sigc::
mem_fun(*this, &RouteGroupMenu::set_group), rg)));
if (rg == curr) {
static_cast<RadioMenuItem*> (&items().back())->set_active ();
if (rg == curr) {
static_cast<RadioMenuItem*> (&items().back())->set_active ();
@@
-73,17
+75,20
@@
RouteGroupMenu::set_group (RouteGroup* g)
GroupSelected (g);
}
GroupSelected (g);
}
-
void
RouteGroupMenu::new_group ()
{
void
RouteGroupMenu::new_group ()
{
- RouteGroup* g = new RouteGroup (_session, "", RouteGroup::Active, _default_properties);
+ if (!_session) {
+ return;
+ }
+
+ RouteGroup* g = new RouteGroup (*_session, "", RouteGroup::Active, _default_properties);
RouteGroupDialog d (g, Gtk::Stock::NEW);
int const r = d.do_run ();
if (r == Gtk::RESPONSE_OK) {
RouteGroupDialog d (g, Gtk::Stock::NEW);
int const r = d.do_run ();
if (r == Gtk::RESPONSE_OK) {
- _session
.
add_route_group (g);
+ _session
->
add_route_group (g);
set_group (g);
} else {
delete g;
set_group (g);
} else {
delete g;