mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-06 23:05:04 +01:00
convert canvas_event_frame() and window_event_frame() to canvas_event_sample() and window_event_sample() to go along with the convention adopted in cairocanvas code re: frames+samples
This commit is contained in:
parent
0c283ba657
commit
c04285addf
8 changed files with 28 additions and 26 deletions
|
|
@ -4359,7 +4359,7 @@ Editor::get_preferred_edit_position (bool ignore_playhead, bool from_context_men
|
||||||
EditPoint ep = _edit_point;
|
EditPoint ep = _edit_point;
|
||||||
|
|
||||||
if (from_context_menu && (ep == EditAtMouse)) {
|
if (from_context_menu && (ep == EditAtMouse)) {
|
||||||
return canvas_event_frame (&context_click_event, 0, 0);
|
return canvas_event_sample (&context_click_event, 0, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (entered_marker) {
|
if (entered_marker) {
|
||||||
|
|
|
||||||
|
|
@ -1837,12 +1837,12 @@ class Editor : public PublicEditor, public PBD::ScopedConnectionList, public ARD
|
||||||
/** computes the timeline frame (sample) of an event whose coordinates
|
/** computes the timeline frame (sample) of an event whose coordinates
|
||||||
* are in canvas units (pixels, scroll offset included).
|
* are in canvas units (pixels, scroll offset included).
|
||||||
*/
|
*/
|
||||||
framepos_t canvas_event_frame (GdkEvent const *, double* px = 0, double* py = 0) const;
|
framepos_t canvas_event_sample (GdkEvent const *, double* px = 0, double* py = 0) const;
|
||||||
|
|
||||||
/** computes the timeline frame (sample) of an event whose coordinates
|
/** computes the timeline frame (sample) of an event whose coordinates
|
||||||
* are in window units (pixels, no scroll offset).
|
* are in window units (pixels, no scroll offset).
|
||||||
*/
|
*/
|
||||||
framepos_t window_event_frame (GdkEvent const *, double* px = 0, double* py = 0) const;
|
framepos_t window_event_sample (GdkEvent const *, double* px = 0, double* py = 0) const;
|
||||||
|
|
||||||
/* returns false if mouse pointer is not in track or marker canvas
|
/* returns false if mouse pointer is not in track or marker canvas
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
|
|
@ -431,7 +431,7 @@ Editor::drop_paths (const RefPtr<Gdk::DragContext>& context,
|
||||||
ev.button.x = x;
|
ev.button.x = x;
|
||||||
ev.button.y = y;
|
ev.button.y = y;
|
||||||
|
|
||||||
frame = window_event_frame (&ev, 0, &cy);
|
frame = window_event_sample (&ev, 0, &cy);
|
||||||
|
|
||||||
snap_to (frame);
|
snap_to (frame);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1031,7 +1031,7 @@ Editor::track_canvas_drag_motion (Glib::RefPtr<Gdk::DragContext> const& context,
|
||||||
/* assume we're dragging with button 1 */
|
/* assume we're dragging with button 1 */
|
||||||
event.motion.state = Gdk::BUTTON1_MASK;
|
event.motion.state = Gdk::BUTTON1_MASK;
|
||||||
|
|
||||||
(void) window_event_frame (&event, &px, &py);
|
(void) window_event_sample (&event, &px, &py);
|
||||||
|
|
||||||
std::pair<TimeAxisView*, int> const tv = trackview_by_y_position (py);
|
std::pair<TimeAxisView*, int> const tv = trackview_by_y_position (py);
|
||||||
bool can_drop = false;
|
bool can_drop = false;
|
||||||
|
|
@ -1114,7 +1114,7 @@ Editor::drop_regions (const Glib::RefPtr<Gdk::DragContext>& /*context*/,
|
||||||
/* assume we're dragging with button 1 */
|
/* assume we're dragging with button 1 */
|
||||||
event.motion.state = Gdk::BUTTON1_MASK;
|
event.motion.state = Gdk::BUTTON1_MASK;
|
||||||
|
|
||||||
framepos_t const pos = window_event_frame (&event, &px, &py);
|
framepos_t const pos = window_event_sample (&event, &px, &py);
|
||||||
|
|
||||||
std::pair<TimeAxisView*, int> const tv = trackview_by_y_position (py);
|
std::pair<TimeAxisView*, int> const tv = trackview_by_y_position (py);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -127,7 +127,7 @@ DragManager::start_grab (GdkEvent* e, Gdk::Cursor* c)
|
||||||
_old_follow_playhead = _editor->follow_playhead ();
|
_old_follow_playhead = _editor->follow_playhead ();
|
||||||
_editor->set_follow_playhead (false);
|
_editor->set_follow_playhead (false);
|
||||||
|
|
||||||
_current_pointer_frame = _editor->canvas_event_frame (e, &_current_pointer_x, &_current_pointer_y);
|
_current_pointer_frame = _editor->canvas_event_sample (e, &_current_pointer_x, &_current_pointer_y);
|
||||||
|
|
||||||
for (list<Drag*>::const_iterator i = _drags.begin(); i != _drags.end(); ++i) {
|
for (list<Drag*>::const_iterator i = _drags.begin(); i != _drags.end(); ++i) {
|
||||||
(*i)->start_grab (e, c);
|
(*i)->start_grab (e, c);
|
||||||
|
|
@ -173,7 +173,7 @@ DragManager::motion_handler (GdkEvent* e, bool from_autoscroll)
|
||||||
{
|
{
|
||||||
bool r = false;
|
bool r = false;
|
||||||
|
|
||||||
_current_pointer_frame = _editor->canvas_event_frame (e, &_current_pointer_x, &_current_pointer_y);
|
_current_pointer_frame = _editor->canvas_event_sample (e, &_current_pointer_x, &_current_pointer_y);
|
||||||
|
|
||||||
for (list<Drag*>::iterator i = _drags.begin(); i != _drags.end(); ++i) {
|
for (list<Drag*>::iterator i = _drags.begin(); i != _drags.end(); ++i) {
|
||||||
bool const t = (*i)->motion_handler (e, from_autoscroll);
|
bool const t = (*i)->motion_handler (e, from_autoscroll);
|
||||||
|
|
@ -191,7 +191,7 @@ DragManager::window_motion_handler (GdkEvent* e, bool from_autoscroll)
|
||||||
{
|
{
|
||||||
bool r = false;
|
bool r = false;
|
||||||
|
|
||||||
_current_pointer_frame = _editor->canvas_event_frame (e, &_current_pointer_x, &_current_pointer_y);
|
_current_pointer_frame = _editor->canvas_event_sample (e, &_current_pointer_x, &_current_pointer_y);
|
||||||
|
|
||||||
for (list<Drag*>::iterator i = _drags.begin(); i != _drags.end(); ++i) {
|
for (list<Drag*>::iterator i = _drags.begin(); i != _drags.end(); ++i) {
|
||||||
bool const t = (*i)->motion_handler (e, from_autoscroll);
|
bool const t = (*i)->motion_handler (e, from_autoscroll);
|
||||||
|
|
@ -259,7 +259,7 @@ Drag::start_grab (GdkEvent* event, Gdk::Cursor *cursor)
|
||||||
_y_constrained = false;
|
_y_constrained = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
_raw_grab_frame = _editor->canvas_event_frame (event, &_grab_x, &_grab_y);
|
_raw_grab_frame = _editor->canvas_event_sample (event, &_grab_x, &_grab_y);
|
||||||
setup_pointer_frame_offset ();
|
setup_pointer_frame_offset ();
|
||||||
_grab_frame = adjusted_frame (_raw_grab_frame, event);
|
_grab_frame = adjusted_frame (_raw_grab_frame, event);
|
||||||
_last_pointer_frame = _grab_frame;
|
_last_pointer_frame = _grab_frame;
|
||||||
|
|
@ -2428,7 +2428,7 @@ CursorDrag::start_grab (GdkEvent* event, Gdk::Cursor* c)
|
||||||
|
|
||||||
_grab_zoom = _editor->samples_per_pixel;
|
_grab_zoom = _editor->samples_per_pixel;
|
||||||
|
|
||||||
framepos_t where = _editor->canvas_event_frame (event);
|
framepos_t where = _editor->canvas_event_sample (event);
|
||||||
|
|
||||||
_editor->snap_to_with_modifier (where, event);
|
_editor->snap_to_with_modifier (where, event);
|
||||||
|
|
||||||
|
|
@ -3331,7 +3331,7 @@ LineDrag::finished (GdkEvent* event, bool movement_occured)
|
||||||
_line->end_drag (false, 0);
|
_line->end_drag (false, 0);
|
||||||
|
|
||||||
if ((atv = dynamic_cast<AutomationTimeAxisView*>(_editor->clicked_axisview)) != 0) {
|
if ((atv = dynamic_cast<AutomationTimeAxisView*>(_editor->clicked_axisview)) != 0) {
|
||||||
framepos_t where = _editor->window_event_frame (event, 0, 0);
|
framepos_t where = _editor->window_event_sample (event, 0, 0);
|
||||||
atv->add_automation_event (event, where, event->button.y, false);
|
atv->add_automation_event (event, where, event->button.y, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -126,13 +126,13 @@ Editor::mouse_frame (framepos_t& where, bool& in_track_canvas) const
|
||||||
event.button.x = x;
|
event.button.x = x;
|
||||||
event.button.y = y;
|
event.button.y = y;
|
||||||
|
|
||||||
where = window_event_frame (&event, 0, 0);
|
where = window_event_sample (&event, 0, 0);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
framepos_t
|
framepos_t
|
||||||
Editor::window_event_frame (GdkEvent const * event, double* pcx, double* pcy) const
|
Editor::window_event_sample (GdkEvent const * event, double* pcx, double* pcy) const
|
||||||
{
|
{
|
||||||
double x;
|
double x;
|
||||||
double y;
|
double y;
|
||||||
|
|
@ -159,7 +159,7 @@ Editor::window_event_frame (GdkEvent const * event, double* pcx, double* pcy) co
|
||||||
}
|
}
|
||||||
|
|
||||||
framepos_t
|
framepos_t
|
||||||
Editor::canvas_event_frame (GdkEvent const * event, double* pcx, double* pcy) const
|
Editor::canvas_event_sample (GdkEvent const * event, double* pcx, double* pcy) const
|
||||||
{
|
{
|
||||||
double x;
|
double x;
|
||||||
double y;
|
double y;
|
||||||
|
|
@ -346,9 +346,11 @@ Editor::mouse_mode_object_range_toggled()
|
||||||
assert (act);
|
assert (act);
|
||||||
Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic (act);
|
Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic (act);
|
||||||
assert (tact);
|
assert (tact);
|
||||||
if (tact->get_active())
|
|
||||||
|
if (tact->get_active()) {
|
||||||
m = MouseObject; //Smart mode turned to ON, force editing to Object mode
|
m = MouseObject; //Smart mode turned to ON, force editing to Object mode
|
||||||
|
}
|
||||||
|
|
||||||
set_mouse_mode(m, true); //call this so the button styles can get updated
|
set_mouse_mode(m, true); //call this so the button styles can get updated
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1063,7 +1065,7 @@ Editor::button_press_handler_1 (ArdourCanvas::Item* item, GdkEvent* event, ItemT
|
||||||
_drags->set (new RegionCreateDrag (this, item, parent), event);
|
_drags->set (new RegionCreateDrag (this, item, parent), event);
|
||||||
} else {
|
} else {
|
||||||
/* See if there's a region before the click that we can extend, and extend it if so */
|
/* See if there's a region before the click that we can extend, and extend it if so */
|
||||||
framepos_t const t = canvas_event_frame (event);
|
framepos_t const t = canvas_event_sample (event);
|
||||||
boost::shared_ptr<Region> prev = pl->find_next_region (t, End, -1);
|
boost::shared_ptr<Region> prev = pl->find_next_region (t, End, -1);
|
||||||
if (!prev) {
|
if (!prev) {
|
||||||
_drags->set (new RegionCreateDrag (this, item, parent), event);
|
_drags->set (new RegionCreateDrag (this, item, parent), event);
|
||||||
|
|
@ -1101,7 +1103,7 @@ Editor::button_press_handler_1 (ArdourCanvas::Item* item, GdkEvent* event, ItemT
|
||||||
boost::shared_ptr<Playlist> pl = t->playlist ();
|
boost::shared_ptr<Playlist> pl = t->playlist ();
|
||||||
if (pl) {
|
if (pl) {
|
||||||
|
|
||||||
boost::shared_ptr<Region> r = pl->top_region_at (canvas_event_frame (event));
|
boost::shared_ptr<Region> r = pl->top_region_at (canvas_event_sample (event));
|
||||||
if (r) {
|
if (r) {
|
||||||
RegionView* rv = rtv->view()->find_view (r);
|
RegionView* rv = rtv->view()->find_view (r);
|
||||||
clicked_selection = select_range (rv->region()->position(),
|
clicked_selection = select_range (rv->region()->position(),
|
||||||
|
|
@ -1268,9 +1270,9 @@ Editor::button_press_handler_2 (ArdourCanvas::Item* item, GdkEvent* event, ItemT
|
||||||
|
|
||||||
case MouseZoom:
|
case MouseZoom:
|
||||||
if (Keyboard::modifier_state_equals (event->button.state, Keyboard::PrimaryModifier)) {
|
if (Keyboard::modifier_state_equals (event->button.state, Keyboard::PrimaryModifier)) {
|
||||||
temporal_zoom_to_frame (false, canvas_event_frame (event));
|
temporal_zoom_to_frame (false, canvas_event_sample (event));
|
||||||
} else {
|
} else {
|
||||||
temporal_zoom_to_frame (true, canvas_event_frame(event));
|
temporal_zoom_to_frame (true, canvas_event_sample(event));
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
break;
|
break;
|
||||||
|
|
@ -1369,7 +1371,7 @@ Editor::button_press_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemTyp
|
||||||
|
|
||||||
//not rolling, range mode click + join_play_range : locate the PH here
|
//not rolling, range mode click + join_play_range : locate the PH here
|
||||||
if ( !_drags->active () && !_session->transport_rolling() && ( effective_mouse_mode() == MouseRange ) && Config->get_always_play_range() ) {
|
if ( !_drags->active () && !_session->transport_rolling() && ( effective_mouse_mode() == MouseRange ) && Config->get_always_play_range() ) {
|
||||||
framepos_t where = canvas_event_frame (event);
|
framepos_t where = canvas_event_sample (event);
|
||||||
snap_to(where);
|
snap_to(where);
|
||||||
_session->request_locate (where, false);
|
_session->request_locate (where, false);
|
||||||
}
|
}
|
||||||
|
|
@ -1418,7 +1420,7 @@ Editor::button_release_dispatch (GdkEventButton* ev)
|
||||||
bool
|
bool
|
||||||
Editor::button_release_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemType item_type)
|
Editor::button_release_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemType item_type)
|
||||||
{
|
{
|
||||||
framepos_t where = canvas_event_frame (event);
|
framepos_t where = canvas_event_sample (event);
|
||||||
AutomationTimeAxisView* atv = 0;
|
AutomationTimeAxisView* atv = 0;
|
||||||
|
|
||||||
if (pre_press_cursor) {
|
if (pre_press_cursor) {
|
||||||
|
|
|
||||||
|
|
@ -1976,7 +1976,7 @@ Editor::insert_region_list_drag (boost::shared_ptr<Region> region, int x, int y)
|
||||||
event.button.x = x;
|
event.button.x = x;
|
||||||
event.button.y = y;
|
event.button.y = y;
|
||||||
|
|
||||||
where = window_event_frame (&event, &cx, &cy);
|
where = window_event_sample (&event, &cx, &cy);
|
||||||
|
|
||||||
if (where < leftmost_frame || where > leftmost_frame + current_page_samples()) {
|
if (where < leftmost_frame || where > leftmost_frame + current_page_samples()) {
|
||||||
/* clearly outside canvas area */
|
/* clearly outside canvas area */
|
||||||
|
|
@ -2017,7 +2017,7 @@ Editor::insert_route_list_drag (boost::shared_ptr<Route> route, int x, int y)
|
||||||
event.button.x = x;
|
event.button.x = x;
|
||||||
event.button.y = y;
|
event.button.y = y;
|
||||||
|
|
||||||
window_event_frame (&event, &cx, &cy);
|
window_event_sample (&event, &cx, &cy);
|
||||||
|
|
||||||
std::pair<TimeAxisView*, int> const tv = trackview_by_y_position (cy);
|
std::pair<TimeAxisView*, int> const tv = trackview_by_y_position (cy);
|
||||||
if (tv.first == 0) {
|
if (tv.first == 0) {
|
||||||
|
|
|
||||||
|
|
@ -288,7 +288,7 @@ Editor::ruler_button_release (GdkEventButton* ev)
|
||||||
|
|
||||||
stop_canvas_autoscroll();
|
stop_canvas_autoscroll();
|
||||||
|
|
||||||
framepos_t where = window_event_frame ((GdkEvent*) ev);
|
framepos_t where = window_event_sample ((GdkEvent*) ev);
|
||||||
|
|
||||||
snap_to (where);
|
snap_to (where);
|
||||||
popup_ruler_menu (where);
|
popup_ruler_menu (where);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue