#if defined(Hiro_VerticalResizeGrip) struct VerticalResizeGrip; struct mVerticalResizeGrip; using sVerticalResizeGrip = shared_pointer; struct mVerticalResizeGrip : mCanvas { using type = mVerticalResizeGrip; mVerticalResizeGrip(); auto doActivate() const -> void; auto doResize(int offset) const -> void; auto onActivate(const function& callback) -> type&; auto onResize(const function& callback) -> type&; //private: struct State { function onActivate; function onResize; int offset = 0; Position origin; Timer timer; } state; }; #endif