1 /* 2 * PROJECT: PAINT for ReactOS 3 * LICENSE: LGPL 4 * FILE: base/applications/mspaint/toolsmodel.h 5 * PURPOSE: Keep track of tool parameters, notify listeners 6 * PROGRAMMERS: Benedikt Freisen 7 */ 8 9 #pragma once 10 11 /* CLASSES **********************************************************/ 12 13 class ToolsModel 14 { 15 private: 16 int m_lineWidth; 17 int m_shapeStyle; 18 int m_brushStyle; 19 int m_activeTool; 20 int m_airBrushWidth; 21 int m_rubberRadius; 22 BOOL m_transpBg; 23 int m_zoom; 24 25 void NotifyToolChanged(); 26 void NotifyToolSettingsChanged(); 27 void NotifyZoomChanged(); 28 29 public: 30 ToolsModel(); 31 int GetLineWidth(); 32 void SetLineWidth(int nLineWidth); 33 int GetShapeStyle(); 34 void SetShapeStyle(int nShapeStyle); 35 int GetBrushStyle(); 36 void SetBrushStyle(int nBrushStyle); 37 int GetActiveTool(); 38 void SetActiveTool(int nActiveTool); 39 int GetAirBrushWidth(); 40 void SetAirBrushWidth(int nAirBrushWidth); 41 int GetRubberRadius(); 42 void SetRubberRadius(int nRubberRadius); 43 BOOL IsBackgroundTransparent(); 44 void SetBackgroundTransparent(BOOL bTransparent); 45 int GetZoom(); 46 void SetZoom(int nZoom); 47 }; 48