[MSPAINT]
[reactos.git] / reactos / base / applications / mspaint / imgarea.h
1 /*
2 * PROJECT: PAINT for ReactOS
3 * LICENSE: LGPL
4 * FILE: base/applications/mspaint/imgarea.h
5 * PURPOSE: Window procedure of the main window and all children apart from
6 * hPalWin, hToolSettings and hSelection
7 * PROGRAMMERS: Benedikt Freisen
8 * Katayama Hirofumi MZ
9 */
10
11 class CImgAreaWindow : public CWindowImpl<CMainWindow>
12 {
13 public:
14 DECLARE_WND_CLASS_EX(_T("ImgAreaWindow"), CS_DBLCLKS, COLOR_BTNFACE)
15
16 BEGIN_MSG_MAP(CImgAreaWindow)
17 MESSAGE_HANDLER(WM_SIZE, OnSize)
18 MESSAGE_HANDLER(WM_PAINT, OnPaint)
19 MESSAGE_HANDLER(WM_SETCURSOR, OnSetCursor)
20 MESSAGE_HANDLER(WM_LBUTTONDOWN, OnLButtonDown)
21 MESSAGE_HANDLER(WM_RBUTTONDOWN, OnRButtonDown)
22 MESSAGE_HANDLER(WM_LBUTTONUP, OnLButtonUp)
23 MESSAGE_HANDLER(WM_RBUTTONUP, OnRButtonUp)
24 MESSAGE_HANDLER(WM_MOUSEMOVE, OnMouseMove)
25 MESSAGE_HANDLER(WM_MOUSELEAVE, OnMouseLeave)
26 MESSAGE_HANDLER(WM_IMAGEMODELDIMENSIONSCHANGED, OnImageModelDimensionsChanged)
27 MESSAGE_HANDLER(WM_IMAGEMODELIMAGECHANGED, OnImageModelImageChanged)
28 MESSAGE_HANDLER(WM_CAPTURECHANGED, OnCaptureChanged)
29 MESSAGE_HANDLER(WM_KEYDOWN, OnKeyDown)
30 END_MSG_MAP()
31
32 BOOL drawing;
33
34 private:
35 LRESULT OnSize(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
36 LRESULT OnPaint(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
37 LRESULT OnSetCursor(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
38 LRESULT OnLButtonDown(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
39 LRESULT OnRButtonDown(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
40 LRESULT OnLButtonUp(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
41 LRESULT OnRButtonUp(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
42 LRESULT OnMouseMove(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
43 LRESULT OnMouseLeave(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
44 LRESULT OnImageModelDimensionsChanged(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
45 LRESULT OnImageModelImageChanged(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
46 LRESULT OnCaptureChanged(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
47 LRESULT OnKeyDown(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
48
49 void drawZoomFrame(int mouseX, int mouseY);
50 void cancelDrawing();
51 };