*/bool TouchButton::checkButton(const int aTouchPositionX, const int aTouchPositionY, const bool doCallback) { if ((mFlags & FLAG_IS_ACTIVE) && mOnTouchHandler != NULL && checkButtonInArea(aTouchPositionX, aTouchPositionY)) { /* * Touch position is in button - call callback function */ if (doCallback) { mOnTouchHandler(this, mValue); } return true; } return false; }
/** * Check if touch event is in button area * if yes - call callback function and return true * if no - return false */ bool TouchButton::checkButton(uint16_t aTouchPositionX, uint16_t aTouchPositionY) { if ((mFlags & FLAG_IS_ACTIVE) && mOnTouchHandler != NULL && checkButtonInArea(aTouchPositionX, aTouchPositionY)) { /* * Touch position is in button - call callback function */ if (mFlags & BUTTON_FLAG_DO_BEEP_ON_TOUCH) { FeedbackToneOK(); } #ifdef REMOTE_DISPLAY_SUPPORTED if ((mFlags & FLAG_USE_BDBUTTON_FOR_CALLBACK) && (&TouchButtonAutorepeat::autorepeatTouchHandler != (void (*)(TouchButtonAutorepeat *, int16_t)) mOnTouchHandler)) { mOnTouchHandler((TouchButton *) this->mBDButtonPtr, mValue); } else { mOnTouchHandler(this, mValue); } #else mOnTouchHandler(this, mValue); #endif return true; } return false; }