If I am not mistaken, there are 2 ways to get mouse input:
1. Use the keyboard messages (WM_KEYDOWN, WM_KEYUP, etc.) with the virtual key codes corresponding to the mouse buttons.
2. Use mouse messages (WM_LBUTTONDOWN, WM_LBUTTONUP, etc.).
The question is: If I process mouse messages, do I need to send the keyboard messages for mouse VKs to DefWindowProc()? And if I use keyboard messages, do I need to send the mouse messages to DefWindowProc() ?
For the mouse, you use WM_LBUTTONDOW/UP yes; but you can also use WM_MOUSEMOVE, which stores the co-ordinates of the mouse in LPARAM and WPARAM (I'm not sure on this; a topic I made a little while ago would help you as I got alot of help with mouse input using the Windows API, unfortunately it is no longer available. Shame, it was only a month or two old).
You can include them in your switch statement; I still have the code from that topic;
Yeah but isn't that to input to other programs? Or am I thinking of something else..? Sort of like sending mouse movements and things.
If you use WM_(L/R)BUTTONDOWN you should include SetCapture() in your function, and ReleaseCapture() in the LBUTTONUP function; that way you won't let other threads/processes catch your input instead.