I got a little bit of tutorial stuff done on Tuesday night; I'm currently struggling to determine when the main loop is halted as a result of the user E.g. dragging the window or right clicking to bring up the system menu. Well, to be precise - the problem is determining when the loop starts again. I currently pause the frame timer when I get WM_NCLBUTTONDOWN, but there's no WM_NCLBUTTONUP message sent, and similarly for the system menu. I don't really want to find the last message sent before going into the internal modal loop for size/move or system menu and pause then, since that could well break on other versions of Windows.
I'd need to pause then, and unpause in the main loop just after the message has been processed. That requires that the pause happens on the last message processed, since otherwise it'll just unpause as soon as the next message arrives. So I don't think that's a good solution really.
Left mouse clicking works fine; I pause on WM_ENTERSIZEMOVE and unpause in WM_EXITSIZEMOVE, and the test sprite continues going at the correct speed, but the system menu is causing me headaches. I'll hopefully get something sorted out this evening though.
Well, back to work. Hooray for busy schedules.