eBookReaderSwitch/include/touch_helper.h

37 lines
896 B
C

#ifndef NX_SHELL_TOUCH_HELPER_H
#define NX_SHELL_TOUCH_HELPER_H
#include <switch.h>
#include <time.h>
#define tapped_inside(touchInfo, x1, y1, x2, y2) (touchInfo.firstTouch.px >= x1 && touchInfo.firstTouch.px <= x2 && touchInfo.firstTouch.py >= y1 && touchInfo.firstTouch.py <= y2)
#define tapped_outside(touchInfo, x1, y1, x2, y2) (touchInfo.firstTouch.px < x1 || touchInfo.firstTouch.px > x2 || touchInfo.firstTouch.py < y1 || touchInfo.firstTouch.py > y2)
typedef enum TouchState
{
TouchNone,
TouchStart,
TouchMoving,
TouchEnded
} TouchState;
typedef enum TapType
{
TapNone,
TapShort,
TapLong
} TapType;
typedef struct TouchInfo
{
TouchState state;
touchPosition firstTouch;
touchPosition prevTouch;
TapType tapType;
u64 touchStart;
} TouchInfo;
void Touch_Init(TouchInfo * touchInfo);
void Touch_Process(TouchInfo * touchInfo);
#endif