LRESULT TaskButton::HandleMessage(HWND window, UINT msg, WPARAM wParam, LPARAM lParam, NPARAM) { switch (msg) { case WM_MOUSEMOVE: ActivateState(State::Hover); return 0; case WM_MOUSELEAVE: ClearState(State::Hover); return 0; case WM_TIMER: if (wParam == mFlashInterval) { mPane->ToggleState(State::Flashing); } return 0; case WM_LBUTTONUP: SelectTask(); return 0; case WM_RBUTTONUP: ShowContextMenu(); return 0; case WM_MBUTTONUP: OpenTaskProcess(); return 0; } return mEventHandler->HandleMessage(window, msg, wParam, lParam, this); };
void *ImageThreadFunction(void *input) { program_info *programInfo = (program_info *)input; SelectTask(programInfo); return 0; }