ReactOS 0.4.16-dev-336-gb667d82
precomp.h File Reference
#include <windef.h>
#include <winbase.h>
#include <winuser.h>
#include <wingdi.h>
#include <tchar.h>
#include <atlbase.h>
#include <atlcom.h>
#include <atlpath.h>
#include <atlstr.h>
#include <atlwin.h>
#include <atltypes.h>
#include <windowsx.h>
#include <commdlg.h>
#include <commctrl.h>
#include <stdlib.h>
#include <math.h>
#include <shellapi.h>
#include <htmlhelp.h>
#include <strsafe.h>
#include <ui/CWaitCursor.h>
#include <debug.h>
#include "resource.h"
#include "drawing.h"
#include "dib.h"
#include "fullscreen.h"
#include "history.h"
#include "miniature.h"
#include "palette.h"
#include "palettemodel.h"
#include "registry.h"
#include "selectionmodel.h"
#include "sizebox.h"
#include "canvas.h"
#include "textedit.h"
#include "toolbox.h"
#include "toolsettings.h"
#include "toolsmodel.h"
#include "main.h"
#include "dialogs.h"
#include "atlimagedx.h"
Include dependency graph for precomp.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define _USE_MATH_DEFINES   /* for M_PI */
 
#define GRIP_SIZE   3
 
#define MIN_ZOOM   125
 
#define MAX_ZOOM   8000
 
#define MAX_LONG_PATH   512
 
#define WM_TOOLSMODELTOOLCHANGED   (WM_APP + 0)
 
#define WM_TOOLSMODELSETTINGSCHANGED   (WM_APP + 1)
 
#define WM_TOOLSMODELZOOMCHANGED   (WM_APP + 2)
 
#define WM_PALETTEMODELCOLORCHANGED   (WM_APP + 3)
 
#define DEG2RAD(degree)   (((degree) * M_PI) / 180)
 
#define RAD2DEG(radian)   ((LONG)(((radian) * 180) / M_PI))
 
#define CHECKED_IF(bChecked)    ((bChecked) ? (MF_CHECKED | MF_BYCOMMAND) : (MF_UNCHECKED | MF_BYCOMMAND))
 
#define ENABLED_IF(bEnabled)    ((bEnabled) ? (MF_ENABLED | MF_BYCOMMAND) : (MF_GRAYED | MF_BYCOMMAND))
 

Enumerations

enum  HITTEST {
  HIT_NONE = 0 , HIT_UPPER_LEFT , HIT_UPPER_CENTER , HIT_UPPER_RIGHT ,
  HIT_MIDDLE_LEFT , HIT_MIDDLE_RIGHT , HIT_LOWER_LEFT , HIT_LOWER_CENTER ,
  HIT_LOWER_RIGHT , HIT_BORDER , HIT_INNER
}
 

Functions

void ShowOutOfMemory (void)
 
BOOL nearlyEqualPoints (INT x0, INT y0, INT x1, INT y1)
 
BOOL OpenMailer (HWND hWnd, LPCWSTR pszPathName)
 
void getBoundaryOfPtStack (RECT &rcBoundary, INT cPoints, const POINT *pPoints)
 
template<typename T >
void Swap (T &a, T &b)
 

Variables

HINSTANCE g_hinstExe
 
WCHAR g_szFileName [MAX_LONG_PATH]
 
BOOL g_isAFile
 
BOOL g_imageSaved
 
BOOL g_showGrid
 
BOOL g_askBeforeEnlarging
 
CMainWindow mainWindow
 
CMirrorRotateDialog mirrorRotateDialog
 
CAttributesDialog attributesDialog
 
CStretchSkewDialog stretchSkewDialog
 
CFontsDialog fontsDialog
 
RegistrySettings registrySettings
 
ImageModel imageModel
 
ToolsModel toolsModel
 
SelectionModel selectionModel
 
PaletteModel paletteModel
 
HWND g_hStatusBar
 
float g_xDpi
 
float g_yDpi
 
INT g_fileSize
 
SYSTEMTIME g_fileTime
 
CFullscreenWindow fullscreenWindow
 
CMiniatureWindow miniature
 
CToolBox toolBoxContainer
 
CToolSettingsWindow toolSettingsWindow
 
CPaletteWindow paletteWindow
 
CCanvasWindow canvasWindow
 
CTextEditWindow textEditWindow
 

Macro Definition Documentation

◆ _USE_MATH_DEFINES

#define _USE_MATH_DEFINES   /* for M_PI */

Definition at line 32 of file precomp.h.

◆ CHECKED_IF

#define CHECKED_IF (   bChecked)     ((bChecked) ? (MF_CHECKED | MF_BYCOMMAND) : (MF_UNCHECKED | MF_BYCOMMAND))

Definition at line 80 of file precomp.h.

◆ DEG2RAD

#define DEG2RAD (   degree)    (((degree) * M_PI) / 180)

Definition at line 76 of file precomp.h.

◆ ENABLED_IF

#define ENABLED_IF (   bEnabled)     ((bEnabled) ? (MF_ENABLED | MF_BYCOMMAND) : (MF_GRAYED | MF_BYCOMMAND))

Definition at line 84 of file precomp.h.

◆ GRIP_SIZE

#define GRIP_SIZE   3

Definition at line 43 of file precomp.h.

◆ MAX_LONG_PATH

#define MAX_LONG_PATH   512

Definition at line 47 of file precomp.h.

◆ MAX_ZOOM

#define MAX_ZOOM   8000

Definition at line 45 of file precomp.h.

◆ MIN_ZOOM

#define MIN_ZOOM   125

Definition at line 44 of file precomp.h.

◆ RAD2DEG

#define RAD2DEG (   radian)    ((LONG)(((radian) * 180) / M_PI))

Definition at line 77 of file precomp.h.

◆ WM_PALETTEMODELCOLORCHANGED

#define WM_PALETTEMODELCOLORCHANGED   (WM_APP + 3)

Definition at line 52 of file precomp.h.

◆ WM_TOOLSMODELSETTINGSCHANGED

#define WM_TOOLSMODELSETTINGSCHANGED   (WM_APP + 1)

Definition at line 50 of file precomp.h.

◆ WM_TOOLSMODELTOOLCHANGED

#define WM_TOOLSMODELTOOLCHANGED   (WM_APP + 0)

Definition at line 49 of file precomp.h.

◆ WM_TOOLSMODELZOOMCHANGED

#define WM_TOOLSMODELZOOMCHANGED   (WM_APP + 2)

Definition at line 51 of file precomp.h.

Enumeration Type Documentation

◆ HITTEST

Enumerator
HIT_NONE 
HIT_UPPER_LEFT 
HIT_UPPER_CENTER 
HIT_UPPER_RIGHT 
HIT_MIDDLE_LEFT 
HIT_MIDDLE_RIGHT 
HIT_LOWER_LEFT 
HIT_LOWER_CENTER 
HIT_LOWER_RIGHT 
HIT_BORDER 
HIT_INNER 

Definition at line 54 of file precomp.h.

55{
56 HIT_NONE = 0, // Nothing hit or outside
67};
@ HIT_NONE
Definition: precomp.h:56
@ HIT_BORDER
Definition: precomp.h:65
@ HIT_LOWER_RIGHT
Definition: precomp.h:64
@ HIT_LOWER_CENTER
Definition: precomp.h:63
@ HIT_UPPER_LEFT
Definition: precomp.h:57
@ HIT_INNER
Definition: precomp.h:66
@ HIT_LOWER_LEFT
Definition: precomp.h:62
@ HIT_UPPER_CENTER
Definition: precomp.h:58
@ HIT_UPPER_RIGHT
Definition: precomp.h:59
@ HIT_MIDDLE_RIGHT
Definition: precomp.h:61
@ HIT_MIDDLE_LEFT
Definition: precomp.h:60

Function Documentation

◆ getBoundaryOfPtStack()

void getBoundaryOfPtStack ( RECT rcBoundary,
INT  cPoints,
const POINT pPoints 
)

◆ nearlyEqualPoints()

BOOL nearlyEqualPoints ( INT  x0,
INT  y0,
INT  x1,
INT  y1 
)

Definition at line 49 of file mouse.cpp.

50{
53 return (abs(x1 - x0) <= cxThreshold) && (abs(y1 - y0) <= cyThreshold);
54}
ToolsModel toolsModel
Definition: toolsmodel.cpp:10
int GetLineWidth() const
Definition: toolsmodel.cpp:46
#define abs(i)
Definition: fconv.c:206
GLint y0
Definition: linetemp.h:96
GLint x0
Definition: linetemp.h:95
static int UnZoomed(int xy)
Definition: toolsmodel.h:155
int32_t INT
Definition: typedefs.h:58
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG _In_ LONG y1
Definition: winddi.h:3709
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG x1
Definition: winddi.h:3708
#define SM_CXDRAG
Definition: winuser.h:1031
#define SM_CYDRAG
Definition: winuser.h:1032
int WINAPI GetSystemMetrics(_In_ int)

Referenced by ShapeTool::OnButtonUp().

◆ OpenMailer()

BOOL OpenMailer ( HWND  hWnd,
LPCWSTR  pszPathName 
)

Definition at line 99 of file main.cpp.

100{
101 // Delete the temporary file if any
102 if (g_szMailTempFile[0])
103 {
106 }
107
108 CStringW strFileTitle;
109 if (PathFileExistsW(pszPathName) && imageModel.IsImageSaved())
110 {
111 strFileTitle = PathFindFileNameW(pszPathName);
112 }
113 else // Not existing or not saved
114 {
115 // Get the name of a temporary file
116 WCHAR szTempDir[MAX_PATH];
117 ::GetTempPathW(_countof(szTempDir), szTempDir);
118 if (!::GetTempFileNameW(szTempDir, L"afx", 0, g_szMailTempFile))
119 return FALSE; // Failure
120
122 {
123 // Set file title
124 strFileTitle = PathFindFileNameW(g_szFileName);
125
126 // Copy to the temporary file
128 {
130 return FALSE; // Failure
131 }
132 }
133 else
134 {
135 // Set file title
136 strFileTitle.LoadString(IDS_DEFAULTFILENAME);
137 strFileTitle += L".png";
138
139 // Save it to the temporary file
140 HBITMAP hbmLocked = imageModel.LockBitmap();
141 BOOL ret = SaveDIBToFile(hbmLocked, g_szMailTempFile, FALSE, Gdiplus::ImageFormatPNG);
142 imageModel.UnlockBitmap(hbmLocked);
143 if (!ret)
144 {
146 return FALSE; // Failure
147 }
148 }
149
150 // Use the temporary file
151 pszPathName = g_szMailTempFile;
152 }
153
154 // Load "mapi32.dll"
155 HINSTANCE hMAPI = LoadLibraryW(L"mapi32.dll");
156 if (!hMAPI)
157 return FALSE; // Failure
158
159 // Attachment
160 MapiFileDescW attachmentW = { 0 };
161 attachmentW.nPosition = (ULONG)-1;
162 attachmentW.lpszPathName = (LPWSTR)pszPathName;
163 attachmentW.lpszFileName = (LPWSTR)(LPCWSTR)strFileTitle;
164
165 // Message with attachment
166 MapiMessageW messageW = { 0 };
167 messageW.lpszSubject = NULL;
168 messageW.nFileCount = 1;
169 messageW.lpFiles = &attachmentW;
170
171 // First, try to open the mailer by the function of Unicode version
172 FN_MAPISendMailW pMAPISendMailW = (FN_MAPISendMailW)::GetProcAddress(hMAPI, "MAPISendMailW");
173 if (pMAPISendMailW)
174 {
175 pMAPISendMailW(0, (ULONG_PTR)hWnd, &messageW, MAPI_DIALOG | MAPI_LOGON_UI, 0);
176 ::FreeLibrary(hMAPI);
177 return TRUE; // MAPISendMailW will show an error message on failure
178 }
179
180 // Convert to ANSI strings
181 CStringA szPathNameA(pszPathName), szFileTitleA(strFileTitle);
182
183 MapiFileDesc attachment = { 0 };
185 attachment.lpszPathName = (LPSTR)(LPCSTR)szPathNameA;
186 attachment.lpszFileName = (LPSTR)(LPCSTR)szFileTitleA;
187
188 MapiMessage message = { 0 };
189 message.lpszSubject = NULL;
190 message.nFileCount = 1;
191 message.lpFiles = &attachment;
192
193 // Try again but in ANSI version
194 FN_MAPISendMail pMAPISendMail = (FN_MAPISendMail)::GetProcAddress(hMAPI, "MAPISendMail");
195 if (pMAPISendMail)
196 {
197 pMAPISendMail(0, (ULONG_PTR)hWnd, &message, MAPI_DIALOG | MAPI_LOGON_UI, 0);
198 ::FreeLibrary(hMAPI);
199 return TRUE; // MAPISendMail will show an error message on failure
200 }
201
202 ::FreeLibrary(hMAPI);
203 return FALSE; // Failure
204}
HWND hWnd
Definition: settings.c:17
ULONG(WINAPI * FN_MAPISendMail)(LHANDLE, ULONG_PTR, lpMapiMessage, FLAGS, ULONG)
Definition: main.cpp:96
WCHAR g_szMailTempFile[MAX_LONG_PATH]
Definition: main.cpp:19
WCHAR g_szFileName[MAX_LONG_PATH]
Definition: main.cpp:18
ULONG(WINAPI * FN_MAPISendMailW)(LHANDLE, ULONG_PTR, lpMapiMessageW, FLAGS, ULONG)
Definition: main.cpp:97
#define IDS_DEFAULTFILENAME
Definition: resource.h:192
BOOL LoadString(_In_ UINT nID)
Definition: cstringt.h:639
HBITMAP LockBitmap()
Definition: history.cpp:345
BOOL IsImageSaved() const
Definition: history.cpp:224
void UnlockBitmap(HBITMAP hbmLocked)
Definition: history.cpp:354
BOOL SaveDIBToFile(HBITMAP hBitmap, LPCWSTR FileName, BOOL fIsMainFile, REFGUID guidFileType)
Definition: dib.cpp:151
#define NULL
Definition: types.h:112
#define TRUE
Definition: types.h:120
#define FALSE
Definition: types.h:117
#define GetProcAddress(x, y)
Definition: compat.h:753
#define FreeLibrary(x)
Definition: compat.h:748
#define MAX_PATH
Definition: compat.h:34
#define LoadLibraryW(x)
Definition: compat.h:747
static const WCHAR messageW[]
Definition: error.c:33
BOOL WINAPI CopyFileW(IN LPCWSTR lpExistingFileName, IN LPCWSTR lpNewFileName, IN BOOL bFailIfExists)
Definition: copy.c:439
BOOL WINAPI DeleteFileW(IN LPCWSTR lpFileName)
Definition: delete.c:39
DWORD WINAPI GetTempPathW(IN DWORD count, OUT LPWSTR path)
Definition: path.c:2080
LPWSTR WINAPI PathFindFileNameW(LPCWSTR lpszPath)
Definition: path.c:394
BOOL WINAPI PathFileExistsW(LPCWSTR lpszPath)
Definition: path.c:1777
UINT WINAPI GetTempFileNameW(IN LPCWSTR lpPathName, IN LPCWSTR lpPrefixString, IN UINT uUnique, OUT LPWSTR lpTempFileName)
Definition: filename.c:84
unsigned int BOOL
Definition: ntddk_ex.h:94
GLenum attachment
Definition: glext.h:6295
ImageModel imageModel
Definition: history.cpp:11
#define MAPI_DIALOG
Definition: mapi.h:177
#define MAPI_LOGON_UI
Definition: mapi.h:159
static HBITMAP
Definition: button.c:44
#define UNICODE_NULL
#define L(x)
Definition: ntvdm.h:50
#define _countof(array)
Definition: sndvol32.h:70
ULONG nPosition
Definition: mapi.h:54
PWSTR lpszPathName
Definition: mapi.h:55
PWSTR lpszFileName
Definition: mapi.h:56
ULONG nPosition
Definition: mapi.h:44
Definition: tftpd.h:60
uint32_t ULONG_PTR
Definition: typedefs.h:65
uint32_t ULONG
Definition: typedefs.h:59
int ret
const char * LPCSTR
Definition: xmlstorage.h:183
char * LPSTR
Definition: xmlstorage.h:182
__wchar_t WCHAR
Definition: xmlstorage.h:180
WCHAR * LPWSTR
Definition: xmlstorage.h:184
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185

Referenced by CMainWindow::OnCommand().

◆ ShowOutOfMemory()

void ShowOutOfMemory ( void  )

Definition at line 34 of file main.cpp.

35{
36 WCHAR szText[256];
38 NULL,
40 0,
41 szText, _countof(szText),
42 NULL);
44}
CMainWindow mainWindow
Definition: main.cpp:25
int MessageBox(LPCTSTR lpszText, LPCTSTR lpszCaption=NULL, UINT nType=MB_OK)
Definition: atlwin.h:1002
#define ERROR_OUTOFMEMORY
Definition: deptool.c:13
DWORD WINAPI FormatMessageW(DWORD dwFlags, LPCVOID lpSource, DWORD dwMessageId, DWORD dwLanguageId, LPWSTR lpBuffer, DWORD nSize, __ms_va_list *args)
Definition: format_msg.c:583
#define FORMAT_MESSAGE_IGNORE_INSERTS
Definition: winbase.h:446
#define FORMAT_MESSAGE_FROM_SYSTEM
Definition: winbase.h:449
#define MB_ICONERROR
Definition: winuser.h:790

Referenced by ImageModel::Crop(), InitializeImage(), CMainWindow::OnCommand(), and ImageModel::PushImageForUndo().

◆ Swap()

template<typename T >
void Swap ( T a,
T b 
)
inline

Definition at line 88 of file precomp.h.

89{
90 T tmp = a;
91 a = b;
92 b = tmp;
93}
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204
#define a
Definition: ke_i.h:78
#define b
Definition: ke_i.h:79
#define T
Definition: mbstring.h:31

Variable Documentation

◆ attributesDialog

CAttributesDialog attributesDialog
extern

Definition at line 14 of file dialogs.cpp.

Referenced by CMainWindow::OnCommand().

◆ canvasWindow

◆ fontsDialog

◆ fullscreenWindow

CFullscreenWindow fullscreenWindow
extern

Definition at line 10 of file fullscreen.cpp.

Referenced by CMainWindow::OnCommand().

◆ g_askBeforeEnlarging

BOOL g_askBeforeEnlarging
extern

Definition at line 16 of file main.cpp.

Referenced by CMainWindow::InsertSelectionFromHBITMAP().

◆ g_fileSize

INT g_fileSize
extern

Definition at line 10 of file dib.cpp.

Referenced by CAttributesDialog::OnInitDialog(), and SetFileInfo().

◆ g_fileTime

SYSTEMTIME g_fileTime
extern

Definition at line 13 of file dib.cpp.

Referenced by CAttributesDialog::OnInitDialog(), and SetFileInfo().

◆ g_hinstExe

◆ g_hStatusBar

◆ g_imageSaved

◆ g_isAFile

BOOL g_isAFile
extern

Definition at line 20 of file main.cpp.

Referenced by CAttributesDialog::OnInitDialog(), CMainWindow::saveImage(), and SetFileInfo().

◆ g_showGrid

BOOL g_showGrid
extern

◆ g_szFileName

◆ g_xDpi

◆ g_yDpi

◆ imageModel

ImageModel imageModel
extern

Definition at line 11 of file history.cpp.

Referenced by ToolBase::beginEvent(), CMainWindow::CanRedo(), CMainWindow::CanUndo(), CMainWindow::ConfirmSave(), ImageModel::Crop(), SelectionModel::DeleteSelection(), CCanvasWindow::DoDraw(), DoLoadImageFile(), ToolsModel::DrawWithMouseTool(), ColorTool::fetchColor(), CCanvasWindow::GetImageRect(), SelectionModel::GetSelectionContents(), SelectionModel::HideSelection(), CMainWindow::InsertSelectionFromHBITMAP(), SelectionModel::Landing(), SelectionModel::NotifyContentChanged(), TwoPointDrawTool::OnButtonDown(), SmoothDrawTool::OnButtonDown(), SelectionBaseTool::OnButtonDown(), FillTool::OnButtonDown(), BezierTool::OnButtonDown(), ShapeTool::OnButtonDown(), TwoPointDrawTool::OnButtonUp(), SmoothDrawTool::OnButtonUp(), SelectionBaseTool::OnButtonUp(), TextTool::OnButtonUp(), BezierTool::OnButtonUp(), ShapeTool::OnButtonUp(), CCanvasWindow::OnButtonUp(), CMainWindow::OnCommand(), CAttributesDialog::OnDefault(), ToolBase::OnEndDraw(), TextTool::OnEndDraw(), BezierTool::OnEndDraw(), ShapeTool::OnEndDraw(), CAttributesDialog::OnInitDialog(), TwoPointDrawTool::OnMouseMove(), SmoothDrawTool::OnMouseMove(), SelectionBaseTool::OnMouseMove(), BezierTool::OnMouseMove(), ShapeTool::OnMouseMove(), CCanvasWindow::OnMouseMove(), CFullscreenWindow::OnPaint(), CMiniatureWindow::OnPaint(), CCanvasWindow::OnPaletteModelColorChanged(), OpenMailer(), CMainWindow::saveImage(), ToolsModel::selectAll(), ToolsModel::SetBackgroundTransparent(), SetBitmapAndInfo(), ToolsModel::SetBrushWidth(), ToolsModel::SetLineWidth(), ToolsModel::SetPenWidth(), RegistrySettings::SetWallpaper(), RegistrySettings::Store(), SelectionModel::StretchSelection(), SelectionModel::TakeOff(), TextTool::UpdatePoint(), and CCanvasWindow::updateScrollRange().

◆ mainWindow

◆ miniature

◆ mirrorRotateDialog

CMirrorRotateDialog mirrorRotateDialog
extern

Definition at line 13 of file dialogs.cpp.

Referenced by CMainWindow::OnCommand().

◆ paletteModel

◆ paletteWindow

◆ registrySettings

◆ selectionModel

◆ stretchSkewDialog

CStretchSkewDialog stretchSkewDialog
extern

Definition at line 15 of file dialogs.cpp.

Referenced by CMainWindow::OnCommand().

◆ textEditWindow

◆ toolBoxContainer

◆ toolSettingsWindow

◆ toolsModel

ToolsModel toolsModel
extern

Definition at line 10 of file toolsmodel.cpp.

Referenced by CMainWindow::CanPaste(), CMainWindow::CanRedo(), CMainWindow::CanUndo(), CCanvasWindow::DoDraw(), CTextEditWindow::DoFillBack(), TextTool::draw(), CToolSettingsWindow::drawAirBrush(), SelectionModel::DrawBackground(), CToolSettingsWindow::drawBox(), CToolSettingsWindow::drawBrush(), CToolSettingsWindow::drawLine(), CToolSettingsWindow::drawRubber(), CToolSettingsWindow::drawTrans(), CCanvasWindow::getNewZoomRect(), CMainWindow::InsertSelectionFromHBITMAP(), SelectionBaseTool::isRectSelect(), SelectionModel::Landing(), nearlyEqualPoints(), CCanvasWindow::OnButtonDblClk(), SelectionBaseTool::OnButtonDown(), ZoomTool::OnButtonDown(), CCanvasWindow::OnButtonDown(), TwoPointDrawTool::OnButtonUp(), SmoothDrawTool::OnButtonUp(), SelectionBaseTool::OnButtonUp(), ColorTool::OnButtonUp(), ZoomTool::OnButtonUp(), CCanvasWindow::OnButtonUp(), CFontsDialog::OnCommand(), CMainWindow::OnCommand(), CToolBox::OnCommand(), RubberTool::OnDraw(), PenTool::OnDraw(), BrushTool::OnDraw(), AirBrushTool::OnDraw(), ZoomTool::OnDrawOverlayOnCanvas(), BezierTool::OnDrawOverlayOnImage(), ShapeTool::OnDrawOverlayOnImage(), SelectionBaseTool::OnDrawOverlayOnImage(), LineTool::OnDrawOverlayOnImage(), RectTool::OnDrawOverlayOnImage(), EllipseTool::OnDrawOverlayOnImage(), RRectTool::OnDrawOverlayOnImage(), CCanvasWindow::OnEndDraw(), ShapeTool::OnEndDraw(), CTextEditWindow::OnEraseBkGnd(), CFontsDialog::OnFontName(), CFontsDialog::OnFontSize(), CMainWindow::OnInitMenuPopup(), CTextEditWindow::OnKeyDown(), CToolSettingsWindow::OnLButtonDown(), SelectionBaseTool::OnMouseMove(), CCanvasWindow::OnMouseMove(), CMainWindow::OnMouseWheel(), CToolSettingsWindow::OnPaint(), CCanvasWindow::OnSetCursor(), TwoPointDrawTool::OnSpecialTweak(), RubberTool::OnSpecialTweak(), PenTool::OnSpecialTweak(), BrushTool::OnSpecialTweak(), AirBrushTool::OnSpecialTweak(), BezierTool::OnSpecialTweak(), ShapeTool::OnSpecialTweak(), CToolBox::OnToolsModelToolChanged(), CToolSettingsWindow::OnToolsModelZoomChanged(), CToolSettingsWindow::OnVScroll(), SelectionModel::TakeOff(), and CCanvasWindow::zoomTo().