mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-18 04:36:30 +01:00
Cont'd work on editor rulers (actions and style)
This commit is contained in:
parent
c47a3e79e8
commit
3c43628344
6 changed files with 78 additions and 10 deletions
|
|
@ -594,6 +594,22 @@ ARDOUR_UI::install_dependent_actions ()
|
|||
sigc::bind (sigc::mem_fun(*editor, &PublicEditor::jump_forward_to_mark_flagged), Location::Flags (0), Location::Flags (0), Location::IsMark));
|
||||
ActionManager::session_sensitive_actions.push_back (act);
|
||||
|
||||
act = ActionManager::register_action (common_actions, "jump-backward-to-range", _("Jump to Previous Range"),
|
||||
sigc::bind (sigc::mem_fun(*editor, &PublicEditor::jump_backward_to_mark_flagged), Location::Flags (Location::IsRangeMarker | Location::IsSessionRange), Location::Flags (0), Location::Flags (0)));
|
||||
ActionManager::session_sensitive_actions.push_back (act);
|
||||
|
||||
act = ActionManager::register_action (common_actions, "jump-forward-to-range", _("Jump to Next Range"),
|
||||
sigc::bind (sigc::mem_fun(*editor, &PublicEditor::jump_forward_to_mark_flagged), Location::Flags(Location::IsRangeMarker | Location::IsSessionRange), Location::Flags (0), Location::Flags (0)));
|
||||
ActionManager::session_sensitive_actions.push_back (act);
|
||||
|
||||
act = ActionManager::register_action (common_actions, "jump-backward-to-section-mark", _("Jump to Previous Arrangment Mark"),
|
||||
sigc::bind (sigc::mem_fun(*editor, &PublicEditor::jump_backward_to_mark_flagged), Location::Flags (0), Location::Flags (0), Location::Flags (Location::IsMark | Location::IsSection)));
|
||||
ActionManager::session_sensitive_actions.push_back (act);
|
||||
|
||||
act = ActionManager::register_action (common_actions, "jump-forward-to-section-mark", _("Jump to Next Arrangment Mark"),
|
||||
sigc::bind (sigc::mem_fun(*editor, &PublicEditor::jump_forward_to_mark_flagged), Location::Flags (0), Location::Flags (0), Location::Flags(Location::IsMark | Location::IsSection)));
|
||||
ActionManager::session_sensitive_actions.push_back (act);
|
||||
|
||||
for (int i = 1; i <= 9; ++i) {
|
||||
string const a = string_compose(X_("goto-mark-%1"), i);
|
||||
string const n = string_compose(_("Locate to Mark %1"), i);
|
||||
|
|
|
|||
|
|
@ -275,10 +275,17 @@ Editor::Editor ()
|
|||
, range_marker_bar (0)
|
||||
, section_marker_bar (0)
|
||||
, ruler_separator (0)
|
||||
, _ruler_btn_section_add ("+")
|
||||
, _ruler_btn_tempo_add ("+")
|
||||
, _ruler_btn_meter_add ("+")
|
||||
, _ruler_btn_range_prev ("<")
|
||||
, _ruler_btn_range_next (">")
|
||||
, _ruler_btn_range_add ("+")
|
||||
, _ruler_btn_loc_prev ("<")
|
||||
, _ruler_btn_loc_next (">")
|
||||
, _ruler_btn_loc_add ("+")
|
||||
, _ruler_btn_section_prev ("<")
|
||||
, _ruler_btn_section_next (">")
|
||||
, _ruler_btn_section_add ("+")
|
||||
, videotl_label (_("Video Timeline"))
|
||||
, videotl_group (0)
|
||||
, _region_boundary_cache_dirty (true)
|
||||
|
|
@ -422,18 +429,25 @@ Editor::Editor ()
|
|||
rtbl = setup_ruler_new (_ruler_box_bbt, _("Bars:Beats"));
|
||||
|
||||
rtbl = setup_ruler_new (_ruler_box_tempo, _("Tempo"));
|
||||
setup_ruler_add (rtbl, _ruler_btn_tempo_add);
|
||||
|
||||
rtbl = setup_ruler_new (_ruler_box_meter, _("Time Signature"));
|
||||
setup_ruler_add (rtbl, _ruler_btn_meter_add);
|
||||
|
||||
rtbl = setup_ruler_new (_ruler_box_range, _("Range Markers"));
|
||||
setup_ruler_add (rtbl, _ruler_btn_range_prev, 0);
|
||||
setup_ruler_add (rtbl, _ruler_btn_range_add, 1);
|
||||
setup_ruler_add (rtbl, _ruler_btn_range_next, 2);
|
||||
|
||||
rtbl = setup_ruler_new (_ruler_box_marker, _("Location Markers"));
|
||||
setup_ruler_add (rtbl, _ruler_btn_loc_prev, 0);
|
||||
setup_ruler_add (rtbl, _ruler_btn_loc_next, 1);
|
||||
setup_ruler_add (rtbl, _ruler_btn_loc_add, 2);
|
||||
setup_ruler_add (rtbl, _ruler_btn_loc_add, 1);
|
||||
setup_ruler_add (rtbl, _ruler_btn_loc_next, 2);
|
||||
|
||||
rtbl = setup_ruler_new (_ruler_box_section, _("Arrangement Markers"));
|
||||
setup_ruler_add (rtbl, _ruler_btn_section_add);
|
||||
setup_ruler_add (rtbl, _ruler_btn_section_prev, 0);
|
||||
setup_ruler_add (rtbl, _ruler_btn_section_add, 1);
|
||||
setup_ruler_add (rtbl, _ruler_btn_section_next, 2);
|
||||
|
||||
rtbl = setup_ruler_new (_ruler_box_videotl, &videotl_label);
|
||||
videotl_label.set_size_request (-1, 4 * timebar_height);
|
||||
|
|
@ -751,13 +765,14 @@ Editor::setup_ruler_new (Gtk::HBox& box, Gtk::Label* rlbl)
|
|||
{
|
||||
rlbl->set_name ("EditorRulerLabel");
|
||||
rlbl->set_size_request (-1, (int)timebar_height);
|
||||
rlbl->set_alignment (1.0, 0);
|
||||
rlbl->show ();
|
||||
|
||||
Gtk::Table* rtbl = manage (new Gtk::Table);
|
||||
rtbl->attach (*rlbl, 0, 1, 0, 1, SHRINK, SHRINK, 2, 0);
|
||||
rtbl->attach (*rlbl, 0, 1, 0, 1, EXPAND|FILL, SHRINK, 2, 0);
|
||||
rtbl->show ();
|
||||
|
||||
box.pack_end (*rtbl, false, false);
|
||||
box.pack_start (*rtbl, true, true);
|
||||
box.hide();
|
||||
box.set_no_show_all();
|
||||
return rtbl;
|
||||
|
|
@ -768,8 +783,10 @@ Editor::setup_ruler_add (Gtk::Table* rtbl, ArdourWidgets::ArdourButton& b, int p
|
|||
{
|
||||
b.set_name ("editor ruler button");
|
||||
b.set_size_request (-1, (int)timebar_height -2);
|
||||
b.set_tweaks(ArdourButton::Tweaks(ArdourButton::ForceBoxy | ArdourButton::ForceFlat));
|
||||
b.set_elements (ArdourButton::Element(ArdourButton::Text));
|
||||
b.show ();
|
||||
rtbl->attach (b, pos + 1, pos + 2, 0, 1, SHRINK, SHRINK, 2, 1);
|
||||
rtbl->attach (b, pos + 1, pos + 2, 0, 1, SHRINK, SHRINK, 0, 1);
|
||||
}
|
||||
|
||||
bool
|
||||
|
|
|
|||
|
|
@ -935,10 +935,17 @@ private:
|
|||
Gtk::HBox _ruler_box_section;
|
||||
Gtk::HBox _ruler_box_videotl;
|
||||
|
||||
ArdourWidgets::ArdourButton _ruler_btn_section_add;
|
||||
ArdourWidgets::ArdourButton _ruler_btn_tempo_add;
|
||||
ArdourWidgets::ArdourButton _ruler_btn_meter_add;
|
||||
ArdourWidgets::ArdourButton _ruler_btn_range_prev;
|
||||
ArdourWidgets::ArdourButton _ruler_btn_range_next;
|
||||
ArdourWidgets::ArdourButton _ruler_btn_range_add;
|
||||
ArdourWidgets::ArdourButton _ruler_btn_loc_prev;
|
||||
ArdourWidgets::ArdourButton _ruler_btn_loc_next;
|
||||
ArdourWidgets::ArdourButton _ruler_btn_loc_add;
|
||||
ArdourWidgets::ArdourButton _ruler_btn_section_prev;
|
||||
ArdourWidgets::ArdourButton _ruler_btn_section_next;
|
||||
ArdourWidgets::ArdourButton _ruler_btn_section_add;
|
||||
|
||||
/* videtimline related actions */
|
||||
Gtk::Label videotl_label;
|
||||
|
|
@ -1411,6 +1418,9 @@ private:
|
|||
void set_loop_range (Temporal::timepos_t const & start, Temporal::timepos_t const & end, std::string cmd);
|
||||
void set_punch_range (Temporal::timepos_t const & start, Temporal::timepos_t const & end, std::string cmd);
|
||||
|
||||
void add_tempo_from_playhead_cursor ();
|
||||
void add_meter_from_playhead_cursor ();
|
||||
|
||||
void toggle_location_at_playhead_cursor ();
|
||||
void add_location_from_playhead_cursor ();
|
||||
bool do_remove_location_at_playhead_cursor ();
|
||||
|
|
|
|||
|
|
@ -403,6 +403,12 @@ Editor::register_actions ()
|
|||
act = reg_sens (editor_actions, "add-range-marker-from-selection", _("Add Range Marker from Selection"), sigc::mem_fun(*this, &Editor::add_location_from_selection));
|
||||
ActionManager::session_sensitive_actions.push_back (act);
|
||||
|
||||
act = reg_sens (editor_actions, "add-tempo-from-playhead", _("Add Tempo Marker at Playhead"), sigc::mem_fun(*this, &Editor::add_tempo_from_playhead_cursor));
|
||||
ActionManager::session_sensitive_actions.push_back (act);
|
||||
|
||||
act = reg_sens (editor_actions, "add-meter-from-playhead", _("Add Time Signature at Playhead"), sigc::mem_fun(*this, &Editor::add_meter_from_playhead_cursor));
|
||||
ActionManager::session_sensitive_actions.push_back (act);
|
||||
|
||||
act = reg_sens (editor_actions, "editor-consolidate-with-processing", _("Consolidate Range (with processing)"), sigc::bind (sigc::mem_fun(*this, &Editor::bounce_range_selection), ReplaceRange, true));
|
||||
ActionManager::time_selection_sensitive_actions.push_back (act);
|
||||
act = reg_sens (editor_actions, "editor-consolidate", _("Consolidate Range"), sigc::bind (sigc::mem_fun(*this, &Editor::bounce_range_selection), ReplaceRange, false));
|
||||
|
|
|
|||
|
|
@ -2150,6 +2150,17 @@ Editor::add_section_from_playhead ()
|
|||
add_location_mark_with_flag (timepos_t (_session->audible_sample()), Location::Flags(Location::IsMark | Location::IsSection), 0);
|
||||
}
|
||||
|
||||
void
|
||||
Editor::add_tempo_from_playhead_cursor ()
|
||||
{
|
||||
mouse_add_new_tempo_event (timepos_t (_session->audible_sample()));
|
||||
}
|
||||
|
||||
void
|
||||
Editor::add_meter_from_playhead_cursor ()
|
||||
{
|
||||
mouse_add_new_meter_event (timepos_t (_session->audible_sample()));
|
||||
}
|
||||
|
||||
/** Add a single range marker around all selected regions */
|
||||
void
|
||||
|
|
|
|||
|
|
@ -197,12 +197,20 @@ Editor::initialize_rulers ()
|
|||
void
|
||||
Editor::initialize_ruler_actions ()
|
||||
{
|
||||
_ruler_btn_loc_prev.set_related_action (ActionManager::get_action (X_("Common"), X_("jump-backward-to-mark")));
|
||||
_ruler_btn_loc_next.set_related_action (ActionManager::get_action (X_("Common"), X_("jump-forward-to-mark")));
|
||||
_ruler_btn_loc_prev.set_related_action (ActionManager::get_action (X_("Common"), X_("jump-backward-to-location-mark")));
|
||||
_ruler_btn_loc_next.set_related_action (ActionManager::get_action (X_("Common"), X_("jump-forward-to-location-mark")));
|
||||
_ruler_btn_loc_add.set_related_action (ActionManager::get_action (X_("Common"), X_("add-location-from-playhead")));
|
||||
|
||||
_ruler_btn_section_prev.set_related_action (ActionManager::get_action (X_("Common"), X_("jump-backward-to-section-mark")));
|
||||
_ruler_btn_section_next.set_related_action (ActionManager::get_action (X_("Common"), X_("jump-forward-to-section-mark")));
|
||||
_ruler_btn_section_add.set_related_action (ActionManager::get_action (X_("Common"), X_("add-section-from-playhead")));
|
||||
|
||||
_ruler_btn_range_add.set_related_action (ActionManager::get_action (X_("Editor"), X_("add-range-marker-from-selection")));
|
||||
_ruler_btn_range_prev.set_related_action (ActionManager::get_action (X_("Common"), X_("jump-backward-to-range")));
|
||||
_ruler_btn_range_next.set_related_action (ActionManager::get_action (X_("Common"), X_("jump-forward-to-range")));
|
||||
|
||||
_ruler_btn_tempo_add.set_related_action (ActionManager::get_action (X_("Editor"), X_("add-tempo-from-playhead")));
|
||||
_ruler_btn_meter_add.set_related_action (ActionManager::get_action (X_("Editor"), X_("add-meter-from-playhead")));
|
||||
}
|
||||
|
||||
bool
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue