[SHELL32_APITEST] Follow-up to #6796 (25e2f5f)
[reactos.git] / 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 #pragma once
12
13 class CImgAreaWindow : public CWindowImpl<CMainWindow>
14 {
15 public:
16 DECLARE_WND_CLASS_EX(_T("ImgAreaWindow"), CS_DBLCLKS, COLOR_BTNFACE)
17
18 BEGIN_MSG_MAP(CImgAreaWindow)
19 MESSAGE_HANDLER(WM_SIZE, OnSize)
20 MESSAGE_HANDLER(WM_PAINT, OnPaint)
21 MESSAGE_HANDLER(WM_SETCURSOR, OnSetCursor)
22 MESSAGE_HANDLER(WM_LBUTTONDOWN, OnLButtonDown)
23 MESSAGE_HANDLER(WM_RBUTTONDOWN, OnRButtonDown)
24 MESSAGE_HANDLER(WM_LBUTTONUP, OnLButtonUp)
25 MESSAGE_HANDLER(WM_RBUTTONUP, OnRButtonUp)
26 MESSAGE_HANDLER(WM_MOUSEMOVE, OnMouseMove)
27 MESSAGE_HANDLER(WM_MOUSELEAVE, OnMouseLeave)
28 MESSAGE_HANDLER(WM_IMAGEMODELDIMENSIONSCHANGED, OnImageModelDimensionsChanged)
29 MESSAGE_HANDLER(WM_IMAGEMODELIMAGECHANGED, OnImageModelImageChanged)
30 MESSAGE_HANDLER(WM_CAPTURECHANGED, OnCaptureChanged)
31 MESSAGE_HANDLER(WM_KEYDOWN, OnKeyDown)
32 END_MSG_MAP()
33
34 BOOL drawing;
35
36 private:
37 LRESULT OnSize(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
38 LRESULT OnPaint(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
39 LRESULT OnSetCursor(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
40 LRESULT OnLButtonDown(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
41 LRESULT OnRButtonDown(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
42 LRESULT OnLButtonUp(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
43 LRESULT OnRButtonUp(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
44 LRESULT OnMouseMove(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
45 LRESULT OnMouseLeave(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
46 LRESULT OnImageModelDimensionsChanged(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
47 LRESULT OnImageModelImageChanged(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
48 LRESULT OnCaptureChanged(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
49 LRESULT OnKeyDown(UINT nMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
50
51 void drawZoomFrame(int mouseX, int mouseY);
52 void cancelDrawing();
53 };