[4.0] pan-gesture code refactor and environment variables
[platform/core/uifw/dali-core.git] / dali / internal / event / events / gesture-event-processor.cpp
index 4a13feb..2d91ac2 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2017 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -37,14 +37,14 @@ namespace Dali
 namespace Internal
 {
 
-GestureEventProcessor::GestureEventProcessor(Stage& stage, Integration::GestureManager& gestureManager, Integration::RenderController& renderController)
-: mStage(stage),
-  mGestureManager(gestureManager),
-  mLongPressGestureProcessor(stage, gestureManager),
-  mPanGestureProcessor(stage, gestureManager),
-  mPinchGestureProcessor(stage, gestureManager),
-  mTapGestureProcessor(stage, gestureManager),
-  mRenderController(renderController),
+GestureEventProcessor::GestureEventProcessor( Stage& stage, SceneGraph::UpdateManager& updateManager, Integration::GestureManager& gestureManager, Integration::RenderController& renderController )
+: mStage( stage ),
+  mGestureManager( gestureManager ),
+  mLongPressGestureProcessor( stage, gestureManager ),
+  mPanGestureProcessor( stage, gestureManager, updateManager ),
+  mPinchGestureProcessor( stage, gestureManager ),
+  mTapGestureProcessor( stage, gestureManager ),
+  mRenderController( renderController ),
   mUpdateRequired( false )
 {
 }
@@ -194,7 +194,7 @@ void GestureEventProcessor::SetGestureProperties( const Gesture& gesture )
     SetUpdateRequired();
 
     // We may not be updating so we need to ask the render controller for an update.
-    mRenderController.RequestUpdate();
+    mRenderController.RequestUpdate( false );
   }
 
   switch ( gesture.type )
@@ -240,6 +240,21 @@ void GestureEventProcessor::SetPanGesturePredictionAmount( unsigned int amount )
   mPanGestureProcessor.SetPredictionAmount(amount);
 }
 
+void GestureEventProcessor::SetPanGestureMaximumPredictionAmount( unsigned int amount )
+{
+  mPanGestureProcessor.SetMaximumPredictionAmount(amount);
+}
+
+void GestureEventProcessor::SetPanGestureMinimumPredictionAmount( unsigned int amount )
+{
+  mPanGestureProcessor.SetMinimumPredictionAmount(amount);
+}
+
+void GestureEventProcessor::SetPanGesturePredictionAmountAdjustment( unsigned int amount )
+{
+  mPanGestureProcessor.SetPredictionAmountAdjustment(amount);
+}
+
 void GestureEventProcessor::SetPanGestureSmoothingMode(int mode)
 {
   mPanGestureProcessor.SetSmoothingMode(mode);
@@ -250,6 +265,47 @@ void GestureEventProcessor::SetPanGestureSmoothingAmount( float amount )
   mPanGestureProcessor.SetSmoothingAmount(amount);
 }
 
+void GestureEventProcessor::SetPanGestureUseActualTimes( bool value )
+{
+  mPanGestureProcessor.SetUseActualTimes( value );
+}
+
+void GestureEventProcessor::SetPanGestureInterpolationTimeRange( int value )
+{
+  mPanGestureProcessor.SetInterpolationTimeRange( value );
+}
+
+void GestureEventProcessor::SetPanGestureScalarOnlyPredictionEnabled( bool value )
+{
+  mPanGestureProcessor.SetScalarOnlyPredictionEnabled( value );
+}
+
+void GestureEventProcessor::SetPanGestureTwoPointPredictionEnabled( bool value )
+{
+  mPanGestureProcessor.SetTwoPointPredictionEnabled( value );
+}
+
+void GestureEventProcessor::SetPanGestureTwoPointInterpolatePastTime( int value )
+{
+  mPanGestureProcessor.SetTwoPointInterpolatePastTime( value );
+}
+
+void GestureEventProcessor::SetPanGestureTwoPointVelocityBias( float value )
+{
+  mPanGestureProcessor.SetTwoPointVelocityBias( value );
+}
+
+void GestureEventProcessor::SetPanGestureTwoPointAccelerationBias( float value )
+{
+  mPanGestureProcessor.SetTwoPointAccelerationBias( value );
+}
+
+void GestureEventProcessor::SetPanGestureMultitapSmoothingRange( int value )
+{
+  mPanGestureProcessor.SetMultitapSmoothingRange( value );
+}
+
+
 } // namespace Internal
 
 } // namespace Dali