summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2011-06-08 19:48:57 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2011-06-08 19:48:57 +0000
commita6517a01902370e6c6dfa3e4a153e214b68cf4a7 (patch)
treeaa2cf8aa8465b74d20f7c7d81eea328c2eb13bbe
parent7c6b33e7994741173d095c163832a8b8266a8728 (diff)
move punch in/out buttons into time info box; remove rounded corners on clocks
git-svn-id: svn://localhost/ardour2/branches/3.0@9691 d708f5d6-7413-0410-9779-e7cbd77b26cf
-rw-r--r--gtk2_ardour/ardour3_ui_dark.rc.in10
-rw-r--r--gtk2_ardour/ardour_ui.cc2
-rw-r--r--gtk2_ardour/ardour_ui.h2
-rw-r--r--gtk2_ardour/ardour_ui2.cc11
-rw-r--r--gtk2_ardour/ardour_ui_ed.cc3
-rw-r--r--gtk2_ardour/audio_clock.cc4
-rw-r--r--gtk2_ardour/time_info_box.cc20
-rw-r--r--gtk2_ardour/time_info_box.h10
8 files changed, 42 insertions, 20 deletions
diff --git a/gtk2_ardour/ardour3_ui_dark.rc.in b/gtk2_ardour/ardour3_ui_dark.rc.in
index 25e0694c8f..dcde2d3ea1 100644
--- a/gtk2_ardour/ardour3_ui_dark.rc.in
+++ b/gtk2_ardour/ardour3_ui_dark.rc.in
@@ -355,6 +355,15 @@ style "very_small_red_active_and_selected_button" = "very_small_button"
bg[SELECTED] = @@COLPREFIX@_bright_indicator
}
+style "punch_button" = "very_small_red_active_and_selected_button"
+{
+ font_name = "@FONT_SMALLER@"
+
+ fg[ACTIVE] = @@COLPREFIX@_darkest
+ bg[ACTIVE] = @@COLPREFIX@_bright_indicator
+ bg[SELECTED] = @@COLPREFIX@_bright_indicator
+}
+
style "small_red_active_and_selected_button" = "small_button"
{
fg[ACTIVE] = @@COLPREFIX@_darkest
@@ -1888,6 +1897,7 @@ widget "*TimeInfoSelectionTitle" style:highest "very_small_bright_when_active"
widget "*TimeInfoSelectionLabel" style:highest "very_small_bright_when_active"
widget "*TimeInfoPunchTitle" style:highest "very_small_bright_when_active"
widget "*TimeInfoPunchLabel" style:highest "very_small_bright_when_active"
+widget "*TimeInfoPunchButton" style:highest "punch_button"
widget "*RouteNameEditorEntry" style:highest "text_cell_entry"
widget "*RegionNameEditorEntry" style:highest "text_cell_entry"
diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc
index eefa3b9901..0230d5ce4a 100644
--- a/gtk2_ardour/ardour_ui.cc
+++ b/gtk2_ardour/ardour_ui.cc
@@ -165,8 +165,6 @@ ARDOUR_UI::ARDOUR_UI (int *argcp, char **argvp[])
, play_selection_button (play_selection_controllable)
, rec_button (rec_controllable)
- , punch_in_button (_("Punch In"))
- , punch_out_button (_("Punch Out"))
, auto_return_button (_("Auto Return"))
, auto_play_button (_("Auto Play"))
, auto_input_button (_("Auto Input"))
diff --git a/gtk2_ardour/ardour_ui.h b/gtk2_ardour/ardour_ui.h
index 0b22928c56..fb44b853dd 100644
--- a/gtk2_ardour/ardour_ui.h
+++ b/gtk2_ardour/ardour_ui.h
@@ -432,8 +432,6 @@ class ARDOUR_UI : public Gtkmm2ext::UI, public ARDOUR::SessionHandlePtr
ShuttleControl* shuttle_box;
- Gtkmm2ext::StatefulToggleButton punch_in_button;
- Gtkmm2ext::StatefulToggleButton punch_out_button;
Gtkmm2ext::StatefulToggleButton auto_return_button;
Gtkmm2ext::StatefulToggleButton auto_play_button;
Gtkmm2ext::StatefulToggleButton auto_input_button;
diff --git a/gtk2_ardour/ardour_ui2.cc b/gtk2_ardour/ardour_ui2.cc
index c74db60def..5c2ca58087 100644
--- a/gtk2_ardour/ardour_ui2.cc
+++ b/gtk2_ardour/ardour_ui2.cc
@@ -136,8 +136,6 @@ ARDOUR_UI::setup_tooltips ()
set_tip (auto_return_button, _("Return to last playback start when stopped"));
set_tip (auto_play_button, _("Start playback after any locate"));
set_tip (auto_input_button, _("Be sensible about input monitoring"));
- set_tip (punch_in_button, _("Start recording at auto-punch start"));
- set_tip (punch_out_button, _("Stop recording at auto-punch end"));
set_tip (click_button, _("Enable/Disable audio click"));
set_tip (time_master_button, string_compose (_("Does %1 control the time?"), PROGRAM_NAME));
set_tip (solo_alert_button, _("When active, something is soloed.\nClick to de-solo everything"));
@@ -250,8 +248,6 @@ ARDOUR_UI::setup_transport ()
auto_return_button.set_name ("TransportButton");
auto_play_button.set_name ("TransportButton");
auto_input_button.set_name ("TransportButton");
- punch_in_button.set_name ("TransportButton");
- punch_out_button.set_name ("TransportButton");
click_button.set_name ("TransportButton");
time_master_button.set_name ("TransportButton");
sync_button.set_name ("TransportSyncButton");
@@ -328,8 +324,6 @@ ARDOUR_UI::setup_transport ()
ActionManager::get_action ("Transport", "ToggleAutoPlay")->connect_proxy (auto_play_button);
ActionManager::get_action ("Transport", "ToggleAutoInput")->connect_proxy (auto_input_button);
ActionManager::get_action ("Transport", "ToggleClick")->connect_proxy (click_button);
- ActionManager::get_action ("Transport", "TogglePunchIn")->connect_proxy (punch_in_button);
- ActionManager::get_action ("Transport", "TogglePunchOut")->connect_proxy (punch_out_button);
click_button.signal_button_press_event().connect (sigc::mem_fun (*this, &ARDOUR_UI::click_button_clicked), false);
@@ -420,11 +414,6 @@ ARDOUR_UI::setup_transport ()
HBox* toggle_box = manage(new HBox);
- VBox* punch_box = manage (new VBox);
- punch_box->pack_start (punch_in_button, false, false);
- punch_box->pack_start (punch_out_button, false, false);
- toggle_box->pack_start (*punch_box, false, false);
-
VBox* auto_box = manage (new VBox);
auto_box->pack_start (auto_play_button, false, false);
auto_box->pack_start (auto_return_button, false, false);
diff --git a/gtk2_ardour/ardour_ui_ed.cc b/gtk2_ardour/ardour_ui_ed.cc
index 98da8d21f9..8dfbfef750 100644
--- a/gtk2_ardour/ardour_ui_ed.cc
+++ b/gtk2_ardour/ardour_ui_ed.cc
@@ -373,12 +373,15 @@ ARDOUR_UI::install_actions ()
ActionManager::session_sensitive_actions.push_back (act);
act = ActionManager::register_toggle_action (transport_actions, X_("TogglePunchIn"), _("Punch In"), sigc::mem_fun(*this, &ARDOUR_UI::toggle_punch_in));
+ act->set_short_label (_("In"));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::transport_sensitive_actions.push_back (act);
act = ActionManager::register_toggle_action (transport_actions, X_("TogglePunchOut"), _("Punch Out"), sigc::mem_fun(*this, &ARDOUR_UI::toggle_punch_out));
+ act->set_short_label (_("Out"));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::transport_sensitive_actions.push_back (act);
act = ActionManager::register_toggle_action (transport_actions, X_("TogglePunch"), _("Punch In/Out"), sigc::mem_fun(*this, &ARDOUR_UI::toggle_punch));
+ act->set_short_label (_("In/Out"));
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::transport_sensitive_actions.push_back (act);
act = ActionManager::register_toggle_action (transport_actions, X_("ToggleClick"), _("Click"), sigc::mem_fun(*this, &ARDOUR_UI::toggle_click));
diff --git a/gtk2_ardour/audio_clock.cc b/gtk2_ardour/audio_clock.cc
index 4b70f420ab..0a7ccd4125 100644
--- a/gtk2_ardour/audio_clock.cc
+++ b/gtk2_ardour/audio_clock.cc
@@ -109,6 +109,7 @@ AudioClock::AudioClock (const string& clock_name, bool transient, const string&
/* basic per-mode editable text "arrays" */
display = new CairoEditableText ();
+ display->set_corner_radius (0);
_fixed_cells[Colon1] = new CairoCharCell (Colon1, ':');
_fixed_cells[Colon2] = new CairoCharCell (Colon2, ':');
@@ -146,6 +147,9 @@ AudioClock::AudioClock (const string& clock_name, bool transient, const string&
supplemental_left = new CairoEditableText ();
supplemental_right = new CairoEditableText ();
+ supplemental_left->set_corner_radius (0);
+ supplemental_right->set_corner_radius (0);
+
/* field lengths of these cells will be set dynamically by ::set_mode()
*/
diff --git a/gtk2_ardour/time_info_box.cc b/gtk2_ardour/time_info_box.cc
index 750ce9cea7..315767313f 100644
--- a/gtk2_ardour/time_info_box.cc
+++ b/gtk2_ardour/time_info_box.cc
@@ -23,6 +23,8 @@
#include "gtkmm2ext/cairocell.h"
#include "gtkmm2ext/gui_thread.h"
#include "gtkmm2ext/utils.h"
+#include "gtkmm2ext/stateful_button.h"
+#include "gtkmm2ext/actions.h"
#include "ardour/location.h"
#include "ardour/session.h"
@@ -42,6 +44,8 @@ TimeInfoBox::TimeInfoBox ()
: Table (4, 4)
, syncing_selection (false)
, syncing_punch (false)
+ , punch_in_button (_("In"))
+ , punch_out_button (_("Out"))
{
selection_start = new AudioClock ("selection-start", false, "SelectionClockDisplay", false, false, false, false);
selection_end = new AudioClock ("selection-end", false, "SelectionClockDisplay", false, false, false, false);
@@ -117,6 +121,22 @@ TimeInfoBox::TimeInfoBox ()
attach (*l, 2, 3, 2, 3, FILL);
attach (*punch_end, 3, 4, 2, 3);
+ punch_in_button.set_name ("TimeInfoPunchButton");
+ punch_out_button.set_name ("TimeInfoPunchButton");
+ punch_button_box.set_homogeneous (true);
+ punch_button_box.set_spacing (6);
+ punch_button_box.set_border_width (2);
+ punch_button_box.pack_start (punch_in_button, true, true);
+ punch_button_box.pack_start (punch_out_button, true, true);
+
+ ActionManager::get_action ("Transport", "TogglePunchIn")->connect_proxy (punch_in_button);
+ ActionManager::get_action ("Transport", "TogglePunchOut")->connect_proxy (punch_out_button);
+
+ Gtkmm2ext::UI::instance()->set_tip (punch_in_button, _("Start recording at auto-punch start"));
+ Gtkmm2ext::UI::instance()->set_tip (punch_out_button, _("Stop recording at auto-punch end"));
+
+ attach (punch_button_box, 2, 4, 3, 4, FILL, FILL);
+
show_all ();
selection_start->mode_changed.connect (sigc::bind (sigc::mem_fun (*this, &TimeInfoBox::sync_selection_mode), selection_start));
diff --git a/gtk2_ardour/time_info_box.h b/gtk2_ardour/time_info_box.h
index 5be6a0e45a..2731fda11d 100644
--- a/gtk2_ardour/time_info_box.h
+++ b/gtk2_ardour/time_info_box.h
@@ -24,14 +24,11 @@
#include <gtkmm/box.h>
#include <gtkmm/label.h>
+#include <gtkmm/table.h>
#include "ardour/ardour.h"
#include "ardour/session_handle.h"
-class CairoEditableText;
-class CairoCell;
-class CairoTextCell;
-
namespace ARDOUR {
class Session;
class Location;
@@ -67,9 +64,12 @@ class TimeInfoBox : public Gtk::Table, public ARDOUR::SessionHandlePtr
void punch_location_changed (ARDOUR::Location*);
void watch_punch (ARDOUR::Location*);
PBD::ScopedConnectionList punch_connections;
-
PBD::ScopedConnectionList editor_connections;
+ Gtkmm2ext::StatefulToggleButton punch_in_button;
+ Gtkmm2ext::StatefulToggleButton punch_out_button;
+ Gtk::HBox punch_button_box;
+
void selection_changed ();
void sync_selection_mode (AudioClock*);