issue #5057, replace license
issue #5057, refactor SEL_TouchEvent to std::function