summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Anderson <ardour@semiosix.com>2007-07-22 20:58:24 +0000
committerJohn Anderson <ardour@semiosix.com>2007-07-22 20:58:24 +0000
commite21e79d84697a9fb28eff434a2a099b0cbad95f6 (patch)
tree62375bffcc3a3552e328da60ecbcb1c510f0399e
parent0e7d75e7a01295f0bf5bacb83aba440fb3763d30 (diff)
more notes and comments and tings
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@2173 d708f5d6-7413-0410-9779-e7cbd77b26cf
-rw-r--r--libs/surfaces/mackie/TODO1
-rw-r--r--libs/surfaces/mackie/mackie_jog_wheel.cc24
2 files changed, 5 insertions, 20 deletions
diff --git a/libs/surfaces/mackie/TODO b/libs/surfaces/mackie/TODO
index aa9a98f247..7917b380da 100644
--- a/libs/surfaces/mackie/TODO
+++ b/libs/surfaces/mackie/TODO
@@ -1,5 +1,4 @@
* if mackie wheel moves too fast, it's ignored.
-* need to put scaling functions and multipliers in subclasses.
* update manual with jog wheel states
* alsa/sequencer ports unstable. possibly problems with use of ::poll
* use glib::timeout for check_scrubbing
diff --git a/libs/surfaces/mackie/mackie_jog_wheel.cc b/libs/surfaces/mackie/mackie_jog_wheel.cc
index b53af6776d..54ded2f84e 100644
--- a/libs/surfaces/mackie/mackie_jog_wheel.cc
+++ b/libs/surfaces/mackie/mackie_jog_wheel.cc
@@ -43,23 +43,7 @@ void JogWheel::scroll_event( SurfacePort & port, Control & control, const Contro
void JogWheel::jog_event( SurfacePort & port, Control & control, const ControlState & state )
{
-// TODO use current snap-to setting?
-#if 0
- long delta = state.ticks * sign * 1000;
- nframes_t next = session->transport_frame() + delta;
- if ( delta < 0 && session->transport_frame() < (nframes_t) abs( delta ) )
- {
- next = session->current_start_frame();
- }
- else if ( next > session->current_end_frame() )
- {
- next = session->current_end_frame();
- }
-
- // doesn't work very well
- session->request_locate( next, session->transport_rolling() );
-#endif
-
+ // TODO use current snap-to setting?
switch ( jog_wheel_state() )
{
case scroll:
@@ -67,6 +51,9 @@ void JogWheel::jog_event( SurfacePort & port, Control & control, const ControlSt
break;
case zoom:
+ // Chunky Zoom.
+ // TODO implement something similar to ScrollTimeline which
+ // ends up in Editor::control_scroll for smoother zooming.
if ( state.sign > 0 )
for ( unsigned int i = 0; i < state.ticks; ++i ) _mcp.ZoomIn();
else
@@ -75,10 +62,9 @@ void JogWheel::jog_event( SurfacePort & port, Control & control, const ControlSt
case speed:
// locally, _transport_speed is an positive value
- // fairly arbitrary scaling function
_transport_speed += _mcp.surface().scaled_delta( state, _mcp.get_session().transport_speed() );
- // make sure not weirdness get so the session
+ // make sure no weirdness gets to the session
if ( _transport_speed < 0 || isnan( _transport_speed ) )
{
_transport_speed = 0.0;