- m_fsm.addTransition( "moving", "leave", "outMoving" );
- m_fsm.addTransition( "outMoving", "enter", "moving" );
+ if( m_scrollMode == kManual )
+ {
+ m_fsm.addTransition( "still", "mouse:left:down", "manual1",
+ &m_cmdToManual );
+ m_fsm.addTransition( "manual1", "mouse:left:up", "still",
+ &m_cmdManualStill );
+ m_fsm.addTransition( "manual1", "motion", "manual1", &m_cmdMove );
+ }
+ else if( m_scrollMode == kAutomatic )
+ {
+ m_fsm.addTransition( "still", "mouse:left:down", "manual1",
+ &m_cmdToManual );
+ m_fsm.addTransition( "manual1", "mouse:left:up", "moving",
+ &m_cmdManualMoving );
+ m_fsm.addTransition( "moving", "mouse:left:down", "manual2",
+ &m_cmdToManual );
+ m_fsm.addTransition( "manual2", "mouse:left:up", "still",
+ &m_cmdManualStill );
+ m_fsm.addTransition( "manual1", "motion", "manual1", &m_cmdMove );
+ m_fsm.addTransition( "manual2", "motion", "manual2", &m_cmdMove );
+ m_fsm.addTransition( "moving", "leave", "outMoving" );
+ m_fsm.addTransition( "outMoving", "enter", "moving" );
+ }