#include <pbd/basename.h>
#include <ardour/audioregion.h>
-#include <ardour/audiosource.h>
+#include <ardour/audiofilesource.h>
#include <ardour/session_region.h>
#include <gtkmm2ext/stop_signal.h>
void
Editor::handle_audio_region_removed (boost::weak_ptr<AudioRegion> wregion)
{
- ENSURE_GUI_THREAD (bind (mem_fun (*this, &Editor::handle_audio_region_removed), wregion));
+ ENSURE_GUI_THREAD (mem_fun (*this, &Editor::redisplay_regions));
redisplay_regions ();
}
parent = *(region_list_model->append());
parent[region_list_columns.name] = _("Hidden");
- /// XXX FIX ME parent[region_list_columns.region]->reset ();
+ boost::shared_ptr<Region> proxy = parent[region_list_columns.region];
+ proxy.reset ();
} else {
parent = *(region_list_model->insert(iter));
parent[region_list_columns.name] = _("Hidden");
- /// XXX FIX ME parent[region_list_columns.region]->reset ();
+ boost::shared_ptr<Region> proxy = parent[region_list_columns.region];
+ proxy.reset ();
} else {
parent = *iter;
if (region->whole_file()) {
str = ".../";
- str += PBD::basename_nosuffix (region->source()->name());
-
+
+ boost::shared_ptr<AudioFileSource> afs = boost::dynamic_pointer_cast<AudioFileSource>(region->source());
+
+ if (afs) {
+ str += region_name_from_path (afs->path(), region->n_channels() > 1);
+ } else {
+ str += region->source()->name();
+ }
+
} else {
str = region->name();
}
}
}
-void
-Editor::region_list_clear ()
-{
- region_list_model->clear();
-}
-
void
Editor::build_region_list_menu ()
{
void
Editor::remove_a_region (boost::shared_ptr<Region> r)
{
+ cerr << "remove " << r->name();
session->remove_region_from_region_list (r);
}
void
Editor::remove_region_from_region_list ()
{
+ cerr << "Mapping remove over region selection\n";
region_list_selection_mapover (mem_fun (*this, &Editor::remove_a_region));
}