fix thinko-typo in SoloControl::soloed_by_others()
[ardour.git] / gtk2_ardour / editor_pt_import.cc
index 3639fcf877f5fc468b794b69184e11b9bbe8365e..2b659e0369d509417f7a6ffe179acaaeb08a79d0 100644 (file)
@@ -60,7 +60,7 @@
 #include "mouse_cursors.h"
 #include "editor_cursors.h"
 
-#include "i18n.h"
+#include "pbd/i18n.h"
 
 using namespace std;
 using namespace ARDOUR;
@@ -244,12 +244,27 @@ Editor::do_ptimport (std::string ptpath,
                                } else {
                                        // Put on a new track
                                        DEBUG_TRACE (DEBUG::FileUtils, string_compose ("\twav(%1) reg(%2) new_tr(%3)\n", a->reg.wave.filename.c_str(), a->reg.index, nth));
-                                       list<boost::shared_ptr<AudioTrack> > at (_session->new_audio_track (1, 2, Normal, 0, 1));
+                                       list<boost::shared_ptr<AudioTrack> > at (_session->new_audio_track (1, 2, 0, 1, string(), PresentationInfo::max_order, Normal));
                                        if (at.empty()) {
                                                return;
                                        }
                                        existing_track = at.back();
-                                       existing_track->set_name (a->name);
+                                       std::string trackname;
+                                       try {
+                                               trackname = Glib::convert_with_fallback (a->name, "UTF-8", "UTF-8", "_");
+                                       } catch (Glib::ConvertError& err) {
+                                               trackname = string_compose ("Invalid %1", a->index);
+                                       }
+                                       // TODO legalize track name (no slashes, no colons)
+#if 0 // TODO --  "find_route_name" is currently private
+                                       /* generate a unique name by adding a number if needed */
+                                       uint32_t id = 0;
+                                       if (!_session->find_route_name (trackname.c_str (), id, trackname, false)) {
+                                               fatal << _("PTImport: UINT_MAX routes? impossible!") << endmsg;
+                                               abort(); /*NOTREACHED*/
+                                       }
+#endif
+                                       existing_track->set_name (trackname);
                                        boost::shared_ptr<Playlist> playlist = existing_track->playlist();
                                        boost::shared_ptr<Region> copy (RegionFactory::create (r, true));
                                        playlist->clear_changes ();