X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fcolor_theme_manager.cc;h=c9ee7ac308b83ec6931479338b85816db5c98d2a;hb=103ef2ba08e59c21f84899450f04a062ac60334e;hp=1e381f1854d2508b18cb7ed83c4a51fb65bf3e15;hpb=f2e00dfe07403421a2dd01b12ae6d22080d41e53;p=ardour.git diff --git a/gtk2_ardour/color_theme_manager.cc b/gtk2_ardour/color_theme_manager.cc index 1e381f1854..c9ee7ac308 100644 --- a/gtk2_ardour/color_theme_manager.cc +++ b/gtk2_ardour/color_theme_manager.cc @@ -20,13 +20,12 @@ #include #include +#include + #include "fix_carbon.h" #include "pbd/gstdio_compat.h" -#include "gtkmm2ext/cell_renderer_color_selector.h" -#include "gtkmm2ext/utils.h" - #include "pbd/compose.h" #include "pbd/file_utils.h" #include "pbd/replace_all.h" @@ -34,12 +33,15 @@ #include "ardour/filesystem_paths.h" #include "ardour/profile.h" +#include "gtkmm2ext/cell_renderer_color_selector.h" +#include "gtkmm2ext/utils.h" + #include "canvas/container.h" #include "canvas/rectangle.h" #include "canvas/scroll_group.h" -#include "canvas/wave_view.h" -#include "ardour_button.h" +#include "waveview/wave_view.h" + #include "ardour_dialog.h" #include "color_theme_manager.h" #include "rgb_macros.h" @@ -52,6 +54,7 @@ using namespace std; using namespace Gtk; using namespace PBD; using namespace ARDOUR; +using namespace Gtkmm2ext; using namespace ARDOUR_UI_UTILS; ColorThemeManager::ColorThemeManager () @@ -61,14 +64,10 @@ ColorThemeManager::ColorThemeManager () , palette_window (0) , color_theme_label (_("Color Theme")) { - Label* l = manage (new Label (string_compose ("%1", _("Colors")))); - l->set_alignment (0, 0.5); - l->set_use_markup (true); - _box->pack_start (*l, false, false); - std::map color_themes; get_color_themes (color_themes); + int n = 0; if (color_themes.size() > 1) { theme_list = TreeStore::create (color_theme_columns); @@ -108,8 +107,9 @@ ColorThemeManager::ColorThemeManager () hbox->set_spacing (6); hbox->pack_start (color_theme_label, false, false); hbox->pack_start (*align, true, true); - _box->pack_start (*hbox, PACK_SHRINK); hbox->show_all (); + table.attach (*hbox, 0, 3, n, n + 1); + ++n; } reset_button.signal_clicked().connect (sigc::mem_fun (*this, &ColorThemeManager::reset_canvas_colors)); @@ -149,8 +149,9 @@ ColorThemeManager::ColorThemeManager () notebook.set_size_request (400, 400); - _box->pack_start (notebook, true, true, 12); - _box->pack_start (reset_button, false, false, 12); + table.attach (notebook, 0, 3, n, n + 1); + ++n; + table.attach (reset_button, 0, 3, n, n + 1); color_dialog.get_colorsel()->set_has_opacity_control (true); color_dialog.get_colorsel()->set_has_palette (true); @@ -164,8 +165,6 @@ ColorThemeManager::ColorThemeManager () setup_modifiers (); UIConfiguration::instance().ColorsChanged.connect (sigc::mem_fun (*this, &ColorThemeManager::colors_changed)); - - _box->show_all (); } @@ -276,8 +275,8 @@ ColorThemeManager::palette_canvas_allocated (Gtk::Allocation& alloc, ArdourCanva struct NamedColor { string name; - ArdourCanvas::HSV color; - NamedColor (string s, ArdourCanvas::HSV c) : name (s), color (c) {} + Gtkmm2ext::HSV color; + NamedColor (string s, Gtkmm2ext::HSV c) : name (s), color (c) {} }; struct SortByHue { @@ -381,7 +380,7 @@ ColorThemeManager::edit_palette_color (std::string name) using namespace ArdourCanvas; double r,g, b, a; UIConfiguration* uic (&UIConfiguration::instance()); - ArdourCanvas::Color c = uic->color (name); + Gtkmm2ext::Color c = uic->color (name); Gdk::Color gdkcolor; color_to_rgba (c, r, g, b, a); @@ -606,6 +605,19 @@ ColorThemeManager::set_state_from_config () } +void +ColorThemeManager::add_to_page (OptionEditorPage* p) +{ + int const n = p->table.property_n_rows(); + int m = n + 1; + if (!_note.empty ()) { + ++m; + } + p->table.resize (m, 3); + p->table.attach (box, 1, 3, n, n + 1, FILL | EXPAND, SHRINK, 0, 0); + maybe_add_note (p, n + 1); +} + Gtk::Widget& ColorThemeManager::tip_widget() {