[BTRFS]
[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 */
9
10 class CImgAreaWindow : public CWindowImpl<CMainWindow>
11 {
12 public:
13 DECLARE_WND_CLASS_EX(_T("ImgAreaWindow"), CS_DBLCLKS, COLOR_BTNFACE)
14
15 BEGIN_MSG_MAP(CImgAreaWindow)
16 MESSAGE_HANDLER(WM_SIZE, OnSize)
17 MESSAGE_HANDLER(WM_PAINT, OnPaint)
18 MESSAGE_HANDLER(WM_SETCURSOR, OnSetCursor)
19 MESSAGE_HANDLER(WM_LBUTTONDOWN, OnLButtonDown)
20 MESSAGE_HANDLER(WM_RBUTTONDOWN, OnRButtonDown)
21 MESSAGE_HANDLER(WM_LBUTTONUP, OnLButtonUp)
22 MESSAGE_HANDLER(WM_RBUTTONUP, OnRButtonUp)
23 MESSAGE_HANDLER(WM_MOUSEMOVE, OnMouseMove)
24 MESSAGE_HANDLER(WM_MOUSELEAVE, OnMouseLeave)
25 MESSAGE_HANDLER(WM_IMAGEMODELDIMENSIONSCHANGED, OnImageModelDimensionsChanged)
26 MESSAGE_HANDLER(WM_IMAGEMODELIMAGECHANGED, OnImageModelImageChanged)
27 END_MSG_MAP()
28
29 BOOL drawing;
30
31 private:
32 LRESULT OnSize(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
33 LRESULT OnPaint(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
34 LRESULT OnSetCursor(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
35 LRESULT OnLButtonDown(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
36 LRESULT OnRButtonDown(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
37 LRESULT OnLButtonUp(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
38 LRESULT OnRButtonUp(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
39 LRESULT OnMouseMove(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
40 LRESULT OnMouseLeave(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
41 LRESULT OnImageModelDimensionsChanged(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
42 LRESULT OnImageModelImageChanged(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
43
44 void drawZoomFrame(int mouseX, int mouseY);
45 };