Remove internal edit mode and add "content" tool.
[ardour.git] / gtk2_ardour / editor_regions.cc
index 72a0da29099d4e516485650bfd71e4eed1eae112..f406694e4d6df6e11d6fb2488dc3cfae5fe7e9c5 100644 (file)
@@ -53,6 +53,7 @@
 
 using namespace std;
 using namespace ARDOUR;
+using namespace ARDOUR_UI_UTILS;
 using namespace PBD;
 using namespace Gtk;
 using namespace Glib;
@@ -114,7 +115,7 @@ EditorRegions::EditorRegions (Editor* e)
                { 3, _("Length"),  _("Length of the region") },
                { 4, _("Sync"),  _("Position of region sync point, relative to start of the region") },
                { 5, _("Fade In"),  _("Length of region fade-in (units: secondary clock), () if disabled") },
-               { 6, _("Fade Out"),  _("Length of region fade-out (units: secondary clock), () if dsisabled") },
+               { 6, _("Fade Out"),  _("Length of region fade-out (units: secondary clock), () if disabled") },
                { 7, _("L"),  _("Region position locked?") },
                { 8, _("G"),  _("Region position glued to Bars|Beats time?") },
                { 9, _("M"),  _("Region muted?") },
@@ -294,7 +295,7 @@ EditorRegions::add_region (boost::shared_ptr<Region> region)
        string str;
        TreeModel::Row row;
        Gdk::Color c;
-       bool missing_source = boost::dynamic_pointer_cast<SilentFileSource>(region->source());
+       bool missing_source = boost::dynamic_pointer_cast<SilentFileSource>(region->source()) != NULL;
 
        if (!_show_automatic_regions && region->automatic()) {
                return;
@@ -340,14 +341,15 @@ EditorRegions::add_region (boost::shared_ptr<Region> region)
                row = *(_model->append());
 
                if (missing_source) {
-                       c.set_rgb(65535,0,0);     // FIXME: error color from style
+                       // c.set_rgb(65535,0,0);     // FIXME: error color from style
+                       set_color_from_rgba (c, ARDOUR_UI::config()->color ("region list missing source"));
 
                } else if (region->automatic()){
-                       c.set_rgb(0,65535,0);     // FIXME: error color from style
+                       // c.set_rgb(0,65535,0);     // FIXME: error color from style
+                       set_color_from_rgba (c, ARDOUR_UI::config()->color ("region list automatic"));
 
                } else {
-                       set_color(c, rgba_from_style ("RegionListWholeFile", 0xff, 0, 0, 0, "fg", Gtk::STATE_NORMAL, false ));
-
+                       set_color_from_rgba (c, ARDOUR_UI::config()->color ("region list whole file"));
                }
 
                row[_columns.color_] = c;
@@ -1115,7 +1117,7 @@ EditorRegions::sorter (TreeModel::iterator a, TreeModel::iterator b)
 
        switch (_sort_type) {
        case ByName:
-               cmp = g_strcasecmp (region1->name().c_str(), region2->name().c_str());
+               cmp = region1->name().compare(region2->name());
                break;
 
        case ByLength:
@@ -1140,7 +1142,7 @@ EditorRegions::sorter (TreeModel::iterator a, TreeModel::iterator b)
                break;
 
        case BySourceFileName:
-               cmp = g_strcasecmp (region1->source()->name().c_str(), region2->source()->name().c_str());
+               cmp = region1->source()->name().compare(region2->source()->name());
                break;
 
        case BySourceFileLength:
@@ -1153,9 +1155,9 @@ EditorRegions::sorter (TreeModel::iterator a, TreeModel::iterator b)
 
        case BySourceFileFS:
                if (region1->source()->name() == region2->source()->name()) {
-                       cmp = g_strcasecmp (region1->name().c_str(),  region2->name().c_str());
+                       cmp = region1->name().compare(region2->name());
                } else {
-                       cmp = g_strcasecmp (region1->source()->name().c_str(),  region2->source()->name().c_str());
+                       cmp = region1->source()->name().compare(region2->source()->name());
                }
                break;
        }
@@ -1559,7 +1561,7 @@ EditorRegions::sort_type_action (Editing::RegionListSortType t) const
                break;
        default:
                fatal << string_compose (_("programming error: %1: %2"), "EditorRegions: impossible sort type", (int) t) << endmsg;
-               /*NOTREACHED*/
+               abort(); /*NOTREACHED*/
        }
 
        RefPtr<Action> act = ActionManager::get_action (X_("RegionList"), action);