X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali%2Fintegration-api%2Finput-options.h;h=3789cc9424a2fdd859a53d61ed6301034e3c0f78;hb=be1696c6783e8dba628338211e4931df52987abf;hp=6b8ce6bfe132e5699523fe03887d23b60989d558;hpb=265c8e7319c74698f96141d4c9f90e16ecd7ac23;p=platform%2Fcore%2Fuifw%2Fdali-core.git diff --git a/dali/integration-api/input-options.h b/dali/integration-api/input-options.h index 6b8ce6b..3789cc9 100644 --- a/dali/integration-api/input-options.h +++ b/dali/integration-api/input-options.h @@ -1,8 +1,8 @@ -#ifndef __DALI_INTEGRATION_INPUT_OPTIONS_H__ -#define __DALI_INTEGRATION_INPUT_OPTIONS_H__ +#ifndef DALI_INTEGRATION_INPUT_OPTIONS_H +#define DALI_INTEGRATION_INPUT_OPTIONS_H /* - * Copyright (c) 2018 Samsung Electronics Co., Ltd. + * Copyright (c) 2020 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. @@ -22,13 +22,12 @@ // INTERNAL INCLUDES #include +#include namespace Dali { - namespace Integration { - /** * @brief Called by adaptor to set the pan gesture prediction mode from * an environment variable @@ -36,7 +35,7 @@ namespace Integration * @pre Should be called after Core creation. * @param mode The pan gesture prediction mode. */ -DALI_CORE_API void SetPanGesturePredictionMode( int mode ); +DALI_CORE_API void SetPanGesturePredictionMode(int mode); /** * @brief Called by adaptor to set the prediction amount of the pan gesture @@ -52,7 +51,7 @@ DALI_CORE_API void SetPanGesturePredictionAmount(unsigned int amount); * * @param[in] amount The prediction amount in milliseconds */ -DALI_CORE_API void SetPanGestureMaximumPredictionAmount( unsigned int amount ); +DALI_CORE_API void SetPanGestureMaximumPredictionAmount(unsigned int amount); /** * @brief Sets the lower bound of the prediction amount for clamping @@ -60,7 +59,7 @@ DALI_CORE_API void SetPanGestureMaximumPredictionAmount( unsigned int amount ); * * @param[in] amount The prediction amount in milliseconds */ -DALI_CORE_API void SetPanGestureMinimumPredictionAmount( unsigned int amount ); +DALI_CORE_API void SetPanGestureMinimumPredictionAmount(unsigned int amount); /** * @brief Sets the prediction amount to adjust when the pan velocity is changed @@ -71,81 +70,136 @@ DALI_CORE_API void SetPanGestureMinimumPredictionAmount( unsigned int amount ); * * @param[in] amount The prediction amount in milliseconds */ -DALI_CORE_API void SetPanGesturePredictionAmountAdjustment( unsigned int amount ); +DALI_CORE_API void SetPanGesturePredictionAmountAdjustment(unsigned int amount); /** * @brief Called to set how pan gestures smooth input * * @param[in] mode The smoothing mode to use */ -DALI_CORE_API void SetPanGestureSmoothingMode( int mode ); +DALI_CORE_API void SetPanGestureSmoothingMode(int mode); /** * @brief Sets the smoothing amount of the pan gesture * * @param[in] amount The smoothing amount [0.0f,1.0f] - 0.0f would be no smoothing, 1.0f maximum smoothing */ -DALI_CORE_API void SetPanGestureSmoothingAmount( float amount ); +DALI_CORE_API void SetPanGestureSmoothingAmount(float amount); /** * @brief Sets whether to use actual times of the real gesture and frames or not. * * @param[in] value True = use actual times, False = use perfect values */ -DALI_CORE_API void SetPanGestureUseActualTimes( bool value ); +DALI_CORE_API void SetPanGestureUseActualTimes(bool value); /** * @brief Sets the interpolation time range (ms) of past points to use (with weights) when interpolating. * * @param[in] value Time range in ms */ -DALI_CORE_API void SetPanGestureInterpolationTimeRange( int value ); +DALI_CORE_API void SetPanGestureInterpolationTimeRange(int value); /** * @brief Sets whether to use scalar only prediction, which when enabled, ignores acceleration. * * @param[in] value True = use scalar prediction only */ -DALI_CORE_API void SetPanGestureScalarOnlyPredictionEnabled( bool value ); +DALI_CORE_API void SetPanGestureScalarOnlyPredictionEnabled(bool value); /** * @brief Sets whether to use two point prediction. This combines two interpolated points to get more steady acceleration and velocity values. * * @param[in] value True = use two point prediction */ -DALI_CORE_API void SetPanGestureTwoPointPredictionEnabled( bool value ); +DALI_CORE_API void SetPanGestureTwoPointPredictionEnabled(bool value); /** * @brief Sets the time in the past to interpolate the second point when using two point interpolation. * * @param[in] value Time in past in ms */ -DALI_CORE_API void SetPanGestureTwoPointInterpolatePastTime( int value ); +DALI_CORE_API void SetPanGestureTwoPointInterpolatePastTime(int value); /** * @brief Sets the two point velocity bias. This is the ratio of first and second points to use for velocity. * * @param[in] value 0.0f = 100% first point. 1.0f = 100% of second point. */ -DALI_CORE_API void SetPanGestureTwoPointVelocityBias( float value ); +DALI_CORE_API void SetPanGestureTwoPointVelocityBias(float value); /** * @brief Sets the two point acceleration bias. This is the ratio of first and second points to use for acceleration. * * @param[in] value 0.0f = 100% first point. 1.0f = 100% of second point. */ -DALI_CORE_API void SetPanGestureTwoPointAccelerationBias( float value ); +DALI_CORE_API void SetPanGestureTwoPointAccelerationBias(float value); /** * @brief Sets the range of time (ms) of points in the history to perform multitap smoothing with (if enabled). * * @param[in] value Time in past in ms */ -DALI_CORE_API void SetPanGestureMultitapSmoothingRange( int value ); +DALI_CORE_API void SetPanGestureMultitapSmoothingRange(int value); +/** + * @brief Sets the minimum distance required to start a pan gesture + * + * @param[in] value Distance to move + */ +DALI_CORE_API void SetPanGestureMinimumDistance(int value); + +/** + * @brief Sets the minimum number of touch events to start a pan + * + * @param[in] value Number of pan events + */ +DALI_CORE_API void SetPanGestureMinimumPanEvents(int value); + +/** + * @brief Sets the minimum distance required to start a pinch gesture + * + * @param[in] value Distance to move in pixels + */ +DALI_CORE_API void SetPinchGestureMinimumDistance(float value); + +/** + * @brief Sets the minimum touch events required before a pinch can be started + * + * @param[in] value The number of touch events + */ +DALI_CORE_API void SetPinchGestureMinimumTouchEvents(uint32_t value); + +/** + * @brief Sets the minimum touch events required after a pinch started + * + * @param[in] value The number of touch events + */ +DALI_CORE_API void SetPinchGestureMinimumTouchEventsAfterStart(uint32_t value); + +/** + * @brief Sets the minimum touch events required before a rotation can be started + * + * @param[in] value The number of touch events + */ +DALI_CORE_API void SetRotationGestureMinimumTouchEvents(uint32_t value); + +/** + * @brief Sets the minimum touch events required after a rotation started + * + * @param[in] value The number of touch events + */ +DALI_CORE_API void SetRotationGestureMinimumTouchEventsAfterStart(uint32_t value); + +/** + * @brief Sets the minimum holding time required to be recognized as a long press gesture + * + * @param[in] value The time value in milliseconds + */ +DALI_CORE_API void SetLongPressMinimumHoldingTime(unsigned int value); } // namespace Integration } // namespace Dali -#endif // __DALI_INTEGRATION_INPUT_OPTIONS_H__ +#endif // DALI_INTEGRATION_INPUT_OPTIONS_H