Draw.h
上传用户:popouu88
上传日期:2013-02-11
资源大小:2894k
文件大小:2k
源码类别:

IP电话/视频会议

开发平台:

Visual C++

  1. // Draw.h: interface for the CDraw class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_DRAW_H__B0CC5D4F_3CC2_4992_8998_3B0306401089__INCLUDED_)
  5. #define AFX_DRAW_H__B0CC5D4F_3CC2_4992_8998_3B0306401089__INCLUDED_
  6. #if _MSC_VER > 1000
  7. #pragma once
  8. #endif // _MSC_VER > 1000
  9. #include "MemDC.h"
  10. #include "..DrawView.h"
  11. class CDraw  
  12. {
  13. public:
  14. enum
  15. {
  16. SELECT = 1 ,LINE , RECT , CIRCLE , ROUNDRECT , PEN , PEN1 , TEXT , WBWND , WBWND1
  17. };
  18.          CDraw( CDrawView * view );
  19. virtual ~CDraw( );
  20. //图元的id
  21. CString  userName;
  22. int      drawId;
  23. //获得类型
  24. int      GetType( void ){ return this ? this->type : 0 ; }
  25.     //设定画笔颜色
  26. virtual  void SetColor( COLORREF color = RGB( 0 , 0 , 0 ) );
  27.     //取得画笔颜色
  28. virtual  COLORREF GetColor( void );
  29.     //设定画笔宽度
  30. virtual  void SetWidth( int width = 1 );
  31.     //取得画笔宽度
  32. virtual  int  GetWidth( void );
  33.     //设定画刷是否为空,缺省情况为空
  34. virtual  void SetEmpty( bool m_bEmpty = true );
  35.     //判断画刷是否为空 
  36. virtual  bool IsEmpty( void );
  37. //获得区域
  38.     virtual  CRgn & GetRgn( void ){ return this->rgn; }
  39. virtual  void LButtonDown( UINT nFlags , CPoint point );
  40. virtual  void LButtonUp( UINT nFlags , CPoint point );
  41. virtual  void MouseMove( UINT nFlags , CPoint point );
  42. virtual  CDC * Draw( CDC * pDC = NULL );
  43. protected:
  44.     //位图
  45. CDrawView  * view;
  46. //画布的总大小
  47. CSize dcSize;
  48.     //类型
  49. int     type;
  50.     //每个图元都是一个区域
  51. CRgn    rgn;
  52. //鼠标起点
  53. CPoint  start;
  54.     //鼠标终点
  55. CPoint  end;
  56.     //画笔
  57. CPen     pen;
  58.     //画刷
  59. CBrush   brush;
  60. };
  61. #endif // !defined(AFX_DRAW_H__B0CC5D4F_3CC2_4992_8998_3B0306401089__INCLUDED_)