diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2015-04-29 18:23:09 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2015-05-05 21:29:48 -0400 |
commit | 4a301595bdfb8ada086c501630181c07594f52a8 (patch) | |
tree | 654c7d70c7f144f42a04e6d4672e9dd1d1a3f6c9 /gtk2_ardour/theme_manager.cc | |
parent | 7005529886bcec9300866abc2fc84f336a718a30 (diff) |
rename user's customized color file when resetting theme. Fixes #6286
Diffstat (limited to 'gtk2_ardour/theme_manager.cc')
-rw-r--r-- | gtk2_ardour/theme_manager.cc | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/gtk2_ardour/theme_manager.cc b/gtk2_ardour/theme_manager.cc index 1af708e524..1f1baa84f1 100644 --- a/gtk2_ardour/theme_manager.cc +++ b/gtk2_ardour/theme_manager.cc @@ -24,6 +24,8 @@ #include "fix_carbon.h" +#include <glib/gstdio.h> + #include <gtkmm/stock.h> #include <gtkmm/settings.h> @@ -385,6 +387,19 @@ ThemeManager::set_ui_to_state() void ThemeManager::reset_canvas_colors() { + string cfile; + string basename; + + basename = "my-"; + basename += ARDOUR_UI::config()->get_color_file(); + basename += ".colors"; + + if (find_file (ardour_config_search_path(), basename, cfile)) { + string backup = cfile + string (X_(".old")); + g_rename (cfile.c_str(), backup.c_str()); + /* don't really care if it fails */ + } + ARDOUR_UI::config()->load_defaults(); ARDOUR_UI::config()->save_state (); set_ui_to_state(); |