package com.marshalchen.common.uimodule.flipViews.flipview; import android.graphics.Canvas; public interface OverFlipper { /** * * @param flipDistance * the current flip distance * * @param minFlipDistance * the minimum flip distance, usually 0 * * @param maxFlipDistance * the maximum flip distance * * @return the flip distance after calculations * */ float calculate(float flipDistance, float minFlipDistance, float maxFlipDistance); /** * * @param c * the view to apply any drawing onto * * @return a boolean flag indicating if the view needs to be invalidated * */ boolean draw(Canvas c); /** * Triggered from a touch up or cancel event. reset and release state * variables here. */ void overFlipEnded(); /** * * @return the total flip distance the has been over flipped. This is used * by the onOverFlipListener so make sure to return the correct * value. */ float getTotalOverFlip(); }