MiniCADView.h
上传用户:netltd
上传日期:2013-02-12
资源大小:7234k
文件大小:4k
源码类别:

绘图程序

开发平台:

Visual C++

  1. // MiniCADView.h : interface of the CMiniCADView class
  2. //
  3. /////////////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_MINICADVIEW_H__7F0987A0_D806_11D2_8830_E0646867975D__INCLUDED_)
  5. #define AFX_MINICADVIEW_H__7F0987A0_D806_11D2_8830_E0646867975D__INCLUDED_
  6. #if _MSC_VER > 1000
  7. #pragma once
  8. #endif // _MSC_VER > 1000
  9. #include "MiniCAD.h"
  10. #include "MainFrm.h"
  11. #include "MiniCADDoc.h"
  12. class CMiniCADView : public CScrollView
  13. {
  14. protected: // create from serialization only
  15. CMiniCADView();
  16. DECLARE_DYNCREATE(CMiniCADView)
  17. public:
  18. CMiniCADDoc* GetDocument();
  19. void DrawCursor(CDC* pDC, CPoint OldPoint, CPoint NewPoint, int style); 
  20. protected:
  21. CMiniCADApp* pApp;
  22. CMainFrame*  pMainWnd;
  23. CMiniCADDoc* pDoc;
  24. SIZE size;         //滚动视(客户区)的尺寸
  25. float Proportion;  //图形缩放比例,因各个视图的比例不一样,所以不在CADInfo.h中定义
  26. //Operations
  27. public:
  28. // Overrides
  29. // ClassWizard generated virtual function overrides
  30. //{{AFX_VIRTUAL(CMiniCADView)
  31. public:
  32. virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
  33. virtual void OnInitialUpdate();
  34. virtual void OnPrepareDC(CDC* pDC, CPrintInfo* pInfo = NULL);
  35. virtual BOOL OnScroll(UINT nScrollCode, UINT nPos, BOOL bDoScroll = TRUE);
  36. protected:
  37. virtual BOOL OnPreparePrinting(CPrintInfo* pInfo);
  38. virtual void OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo);
  39. virtual void OnEndPrinting(CDC* pDC, CPrintInfo* pInfo);
  40. virtual void OnDraw(CDC* pDC);
  41. //}}AFX_VIRTUAL
  42. // Implementation
  43. public:
  44. virtual ~CMiniCADView();
  45. #ifdef _DEBUG
  46. virtual void AssertValid() const;
  47. virtual void Dump(CDumpContext& dc) const;
  48. #endif
  49. protected:
  50. // Generated message map functions
  51. protected:
  52. //{{AFX_MSG(CMiniCADView)
  53. afx_msg void OnDrawCircle();
  54. afx_msg void OnDrawLine();
  55. afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
  56. afx_msg void OnRButtonDown(UINT nFlags, CPoint point);
  57. afx_msg void OnMouseMove(UINT nFlags, CPoint point);
  58. afx_msg void OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
  59. afx_msg void OnDestroy();
  60. afx_msg void OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
  61. afx_msg void OnZoomout();
  62. afx_msg void OnZoomin();
  63. afx_msg void OnSelchangeColor();
  64. afx_msg void OnSelchangeLinestyle();
  65. afx_msg void OnDrawRect();
  66. afx_msg void OnSize(UINT nType, int cx, int cy);
  67. afx_msg void OnViewRedraw();
  68. afx_msg void OnDrawSelect();
  69. afx_msg void OnEditUndo();
  70. afx_msg void OnEditRedo();
  71. afx_msg void OnDrawArc();
  72. afx_msg void OnDrawText();
  73. afx_msg void OnUpdateDrawSelect(CCmdUI* pCmdUI);
  74. afx_msg void OnUpdateDrawLine(CCmdUI* pCmdUI);
  75. afx_msg void OnUpdateDrawRect(CCmdUI* pCmdUI);
  76. afx_msg void OnUpdateDrawCircle(CCmdUI* pCmdUI);
  77. afx_msg void OnUpdateDrawArc(CCmdUI* pCmdUI);
  78. afx_msg void OnUpdateDrawText(CCmdUI* pCmdUI);
  79. afx_msg void OnUpdateEditRedo(CCmdUI* pCmdUI);
  80. afx_msg void OnUpdateEditUndo(CCmdUI* pCmdUI);
  81. afx_msg void OnUpdateChangeDelete(CCmdUI* pCmdUI);
  82. afx_msg void OnEraseBkgnd (CDC* pDC);
  83. afx_msg void OnSelchangeFilesize();
  84. afx_msg void OnDrawMultiline();
  85. afx_msg void OnDrawPolygon();
  86. afx_msg void OnDrawEllipse();
  87. afx_msg void OnModifyDelete();
  88. afx_msg void OnModifyCopy();
  89. afx_msg void OnModifyCut();
  90. afx_msg void OnModifyCuttoangle();
  91. afx_msg void OnModifyLengthento();
  92. afx_msg void OnModifyJoin();
  93. afx_msg void OnModifyMirror();
  94. afx_msg void OnModifyVertical();
  95. afx_msg void OnDrawDot();
  96. afx_msg void OnDrawCurve();
  97. afx_msg void OnModifyMove();
  98. afx_msg void OnModifyRotate();
  99. afx_msg void OnDrawDefineline();
  100. afx_msg void OnModifyExcursion();
  101. afx_msg void OnEditCopy();
  102. afx_msg void OnEditCut();
  103. afx_msg void OnEditPaste();
  104. //}}AFX_MSG
  105. DECLARE_MESSAGE_MAP()
  106. };
  107. #ifndef _DEBUG  // debug version in MiniCADView.cpp
  108. inline CMiniCADDoc* CMiniCADView::GetDocument()
  109.    { return (CMiniCADDoc*)m_pDocument; }
  110. #endif
  111. /////////////////////////////////////////////////////////////////////////////
  112. //{{AFX_INSERT_LOCATION}}
  113. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  114. #endif // !defined(AFX_MINICADVIEW_H__7F0987A0_D806_11D2_8830_E0646867975D__INCLUDED_)