diff options
-rw-r--r-- | gtk2_ardour/ardour3_styles.rc.in | 66 | ||||
-rw-r--r-- | gtk2_ardour/ardour3_widget_list.rc | 13 | ||||
-rw-r--r-- | gtk2_ardour/route_ui.cc | 16 | ||||
-rw-r--r-- | gtk2_ardour/route_ui.h | 1 |
4 files changed, 80 insertions, 16 deletions
diff --git a/gtk2_ardour/ardour3_styles.rc.in b/gtk2_ardour/ardour3_styles.rc.in index f29a4ef5f9..237b62f07b 100644 --- a/gtk2_ardour/ardour3_styles.rc.in +++ b/gtk2_ardour/ardour3_styles.rc.in @@ -154,9 +154,22 @@ style "monitor_input_button" = "small_button" fg[PRELIGHT] = darker(@@COLPREFIX@_fg) bg[NORMAL] = mix(0.1,@@COLPREFIX@_bright_indicator,darker(@@COLPREFIX@_bg)) bg[PRELIGHT] = mix(0.1,@@COLPREFIX@_bright_indicator,darker(@@COLPREFIX@_bg)) - - fg[ACTIVE] = @@COLPREFIX@_fg - bg[ACTIVE] = @@COLPREFIX@_bright_indicator +} + +style "monitor_input_button_active" = "small_button" +{ + fg[NORMAL] = @@COLPREFIX@_fg + fg[PRELIGHT] = @@COLPREFIX@_fg + bg[NORMAL] = @@COLPREFIX@_bright_indicator + bg[PRELIGHT] = @@COLPREFIX@_bright_indicator +} + +style "monitor_input_button_alternate" = "small_button" +{ + fg[NORMAL] = @@COLPREFIX@_fg + fg[PRELIGHT] = @@COLPREFIX@_fg + bg[NORMAL] = mix(0.3,@@COLPREFIX@_bright_indicator,darker(@@COLPREFIX@_bg)) + bg[PRELIGHT] = mix(0.3,@@COLPREFIX@_bright_indicator,darker(@@COLPREFIX@_bg)) } style "monitor_disk_button" = "small_button" @@ -165,9 +178,22 @@ style "monitor_disk_button" = "small_button" fg[PRELIGHT] = darker(@@COLPREFIX@_fg) bg[NORMAL] = mix(0.1,@@COLPREFIX@_bright_indicator,darker(@@COLPREFIX@_bg)) bg[PRELIGHT] = mix(0.1,@@COLPREFIX@_bright_indicator,darker(@@COLPREFIX@_bg)) - - fg[ACTIVE] = @@COLPREFIX@_fg - bg[ACTIVE] = @@COLPREFIX@_bright_indicator +} + +style "monitor_disk_button_active" = "small_button" +{ + fg[NORMAL] = @@COLPREFIX@_fg + fg[PRELIGHT] = @@COLPREFIX@_fg + bg[NORMAL] = @@COLPREFIX@_bright_indicator + bg[PRELIGHT] = @@COLPREFIX@_bright_indicator +} + +style "monitor_disk_button_alternate" = "small_button" +{ + fg[NORMAL] = @@COLPREFIX@_fg + fg[PRELIGHT] = @@COLPREFIX@_fg + bg[NORMAL] = mix(0.3,@@COLPREFIX@_bright_indicator,darker(@@COLPREFIX@_bg)) + bg[PRELIGHT] = mix(0.3,@@COLPREFIX@_bright_indicator,darker(@@COLPREFIX@_bg)) } style "solo_button" = "small_button" @@ -268,13 +294,37 @@ style "mixer_solo_button_active" = "solo_button_active" ythickness = 0 } -style "mixer_monitor_input_button" = "monitor_input_button" +style "mixer_monitor_input" = "monitor_input_button" +{ + xthickness = 0 + ythickness = 0 +} + +style "mixer_monitor_input_active" = "monitor_input_button_active" +{ + xthickness = 0 + ythickness = 0 +} + +style "mixer_monitor_input_alternate" = "monitor_input_button_alternate" +{ + xthickness = 0 + ythickness = 0 +} + +style "mixer_monitor_disk" = "monitor_disk_button" +{ + xthickness = 0 + ythickness = 0 +} + +style "mixer_monitor_disk_active" = "monitor_disk_button_active" { xthickness = 0 ythickness = 0 } -style "mixer_monitor_disk_button" = "monitor_disk_button" +style "mixer_monitor_disk_alternate" = "monitor_disk_button_alternate" { xthickness = 0 ythickness = 0 diff --git a/gtk2_ardour/ardour3_widget_list.rc b/gtk2_ardour/ardour3_widget_list.rc index ad2a640725..9f0a3c0393 100644 --- a/gtk2_ardour/ardour3_widget_list.rc +++ b/gtk2_ardour/ardour3_widget_list.rc @@ -42,8 +42,6 @@ widget "*MixerSendSwitch" style:highest "default_button" widget "*MixerInsertButton" style:highest "default_button" widget "*MixerInsertButtonLabel" style:highest "default_button" widget "*MixerInsertSwitch" style:highest "default_button" -widget "*MixerMonitorInputButton*" style:highest "very_small_button" -widget "*MixerMonitorInputButton.*" style:highest "very_small_button" widget "*MixerIOButton" style:highest "very_small_button" widget "*MixerIOButtonLabel" style:highest "very_small_button" widget "*AddRouteDialogSpinner" style:highest "ardour_adjusters" @@ -80,8 +78,15 @@ widget "*MixerSoloButton" style:highest "mixer_solo_button" widget "*MixerSoloButton-alternate" style:highest "mixer_solo_button_alternate" widget "*MixerSoloButton-alternate2" style:highest "mixer_solo_button_alternate2" widget "*MixerSoloButton-active" style:highest "mixer_solo_button_active" -widget "*MixerMonitorInputButton" style:highest "mixer_monitor_input_button" -widget "*MixerMonitorDiskButton" style:highest "mixer_monitor_disk_button" + +widget "*MixerMonitorInputButton" style:highest "mixer_monitor_input" +widget "*MixerMonitorInputButton-active" style:highest "mixer_monitor_input_active" +widget "*MixerMonitorInputButton-alternate" style:highest "mixer_monitor_input_alternate" + +widget "*MixerMonitorDiskButton" style:highest "mixer_monitor_disk" +widget "*MixerMonitorDiskButton-active" style:highest "mixer_monitor_disk_active" +widget "*MixerMonitorDiskButton-alternate" style:highest "mixer_monitor_disk_alternate" + widget "*TrackLoopButton*" style:highest "track_loop_button" widget "*PanAutomationLineSelector*" style:highest "multiline_combo" widget "*EditorTimeButton*" style:highest "time_button" diff --git a/gtk2_ardour/route_ui.cc b/gtk2_ardour/route_ui.cc index 6607da3942..9dd2f81599 100644 --- a/gtk2_ardour/route_ui.cc +++ b/gtk2_ardour/route_ui.cc @@ -249,6 +249,8 @@ RouteUI::set_route (boost::shared_ptr<Route> rp) if (is_track()) { boost::shared_ptr<Track> t = boost::dynamic_pointer_cast<Track>(_route); t->MonitoringChanged.connect (route_connections, invalidator (*this), boost::bind (&RouteUI::monitoring_changed, this), gui_context()); + + update_monitoring_display (); } mute_button->unset_flags (Gtk::CAN_FOCUS); @@ -585,6 +587,12 @@ RouteUI::rec_enable_press(GdkEventButton* ev) void RouteUI::monitoring_changed () { + update_monitoring_display (); +} + +void +RouteUI::update_monitoring_display () +{ boost::shared_ptr<Track> t = boost::dynamic_pointer_cast<Track>(_route); if (!t) { @@ -594,15 +602,15 @@ RouteUI::monitoring_changed () MonitorChoice mc = t->monitoring(); if (mc & MonitorInput) { - monitor_input_button->set_active (true); + monitor_input_button->set_visual_state (1); } else { - monitor_input_button->set_active (false); + monitor_input_button->set_visual_state (0); } if (mc & MonitorDisk) { - monitor_disk_button->set_active (true); + monitor_disk_button->set_visual_state (1); } else { - monitor_disk_button->set_active (false); + monitor_disk_button->set_visual_state (0); } } diff --git a/gtk2_ardour/route_ui.h b/gtk2_ardour/route_ui.h index d084ec696a..d6667a3eeb 100644 --- a/gtk2_ardour/route_ui.h +++ b/gtk2_ardour/route_ui.h @@ -131,6 +131,7 @@ class RouteUI : public virtual AxisView bool monitor_disk_press(GdkEventButton*); bool monitor_disk_release(GdkEventButton*); void monitoring_changed (); + void update_monitoring_display (); void step_gain_up (); void step_gain_down (); |