summaryrefslogtreecommitdiff
path: root/libs/ardour/location.cc
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2010-06-23 01:51:55 +0000
committerCarl Hetherington <carl@carlh.net>2010-06-23 01:51:55 +0000
commitcac03dbeb6ebdcd406385dd14a746cb8c51dd5f8 (patch)
tree08e3e6cbadedc6b6a4cd5af27d7cad436d893e99 /libs/ardour/location.cc
parent055f839b1f9b435f319b8ad5f99b8d523a0a38f6 (diff)
Update locations GUI more efficiently by avoiding a rebuild when a location is removed. Fixes #3263.
git-svn-id: svn://localhost/ardour2/branches/3.0@7290 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/location.cc')
-rw-r--r--libs/ardour/location.cc13
1 files changed, 6 insertions, 7 deletions
diff --git a/libs/ardour/location.cc b/libs/ardour/location.cc
index 7202e1ef03..93b6b5c5fa 100644
--- a/libs/ardour/location.cc
+++ b/libs/ardour/location.cc
@@ -492,7 +492,7 @@ Locations::clear ()
current_location = 0;
}
- changed (); /* EMIT SIGNAL */
+ changed (OTHER); /* EMIT SIGNAL */
current_changed (0); /* EMIT SIGNAL */
}
@@ -515,7 +515,7 @@ Locations::clear_markers ()
}
}
- changed (); /* EMIT SIGNAL */
+ changed (OTHER); /* EMIT SIGNAL */
}
void
@@ -541,7 +541,7 @@ Locations::clear_ranges ()
current_location = 0;
}
- changed (); /* EMIT SIGNAL */
+ changed (OTHER); /* EMIT SIGNAL */
current_changed (0); /* EMIT SIGNAL */
}
@@ -568,7 +568,6 @@ Locations::add (Location *loc, bool make_current)
void
Locations::remove (Location *loc)
-
{
bool was_removed = false;
bool was_current = false;
@@ -602,14 +601,14 @@ Locations::remove (Location *loc)
current_changed (0); /* EMIT SIGNAL */
}
- changed (); /* EMIT_SIGNAL */
+ changed (REMOVAL); /* EMIT_SIGNAL */
}
}
void
Locations::location_changed (Location* /*loc*/)
{
- changed (); /* EMIT SIGNAL */
+ changed (OTHER); /* EMIT SIGNAL */
}
XMLNode&
@@ -701,7 +700,7 @@ Locations::set_state (const XMLNode& node, int version)
}
}
- changed (); /* EMIT SIGNAL */
+ changed (OTHER); /* EMIT SIGNAL */
return 0;
}