// EastDrawView.cpp : implementation of the CEastDrawView class
//
#include "stdafx.h"
#include "EastDraw.h"
#include "EastDrawDoc.h"
#include "EastDrawView.h"
#include "ReginSet.h"
#include "EditBox.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CEastDrawView
IMPLEMENT_DYNCREATE(CEastDrawView, CScrollView)
BEGIN_MESSAGE_MAP(CEastDrawView, CScrollView)
//{{AFX_MSG_MAP(CEastDrawView)
ON_WM_LBUTTONDOWN()
ON_WM_LBUTTONUP()
ON_WM_MOUSEMOVE()
ON_COMMAND(ID_BUTTON_DLine, OnBUTTONDLine)
ON_COMMAND(ID_BUTTON32774_Move, OnBUTTON32774Move)
ON_COMMAND(ID_BUTTON32775_CircumRotate, OnBUTTON32775CircumRotate)
ON_COMMAND(ID_BUTTON32777_Curve, OnBUTTON32777Curve)
ON_COMMAND(ID_BUTTON32776_Rectangle, OnBUTTON32776Rectangle)
ON_COMMAND(ID_BUTTON32778_RoundRectangle, OnBUTTON32778RoundRectangle)
ON_COMMAND(ID_BUTTON32779_Ellipse, OnBUTTON32779Ellipse)
ON_COMMAND(ID_BUTTON32780_Round, OnBUTTON32780Round)
ON_COMMAND(ID_BUTTON32791_Polygon, OnBUTTON32791Polygon)
ON_WM_LBUTTONDBLCLK()
ON_WM_SETFOCUS()
ON_COMMAND(ID_MENUITEM32794_SetRegin, OnMENUITEM32794SetRegin)
ON_COMMAND(ID_BUTTON_LiEllipse, OnBUTTONLiEllipse)
ON_COMMAND(ID_BUTTON32800_RoundArc, OnBUTTON32800RoundArc)
ON_COMMAND(ID_BUTTON32805_EllipseArc, OnBUTTON32805EllipseArc)
ON_COMMAND(ID_BUTTON32807_PolyBezier, OnBUTTON32807PolyBezier)
ON_COMMAND(ID_BUTTON32809_Text, OnBUTTON32809Text)
ON_COMMAND(ID_CHAR_BOLD, OnCharBold)
ON_COMMAND(ID_CHAR_ITALIC, OnCharItalic)
ON_COMMAND(ID_CHAR_UNDERLINE, OnCharUnderline)
ON_WM_CONTEXTMENU()
ON_COMMAND(ID_MENUITEM_OK, OnMenuitemOk)
ON_WM_SETCURSOR()
ON_COMMAND(ID_CirCu, OnCirCu)
ON_UPDATE_COMMAND_UI(ID_CirCu, OnUpdateCirCu)
ON_WM_KEYUP()
ON_COMMAND(ID_Delete, OnDelete)
ON_COMMAND(ID_BUTTON32830_Lock, OnBUTTON32830Lock)
ON_UPDATE_COMMAND_UI(ID_BUTTON32830_Lock, OnUpdateBUTTON32830Lock)
ON_UPDATE_COMMAND_UI(ID_BUTTON_DLine, OnUpdateBUTTONDLine)
ON_UPDATE_COMMAND_UI(ID_BUTTON32776_Rectangle, OnUpdateBUTTON32776Rectangle)
ON_UPDATE_COMMAND_UI(ID_BUTTON32778_RoundRectangle, OnUpdateBUTTON32778RoundRectangle)
ON_UPDATE_COMMAND_UI(ID_BUTTON32791_Polygon, OnUpdateBUTTON32791Polygon)
ON_UPDATE_COMMAND_UI(ID_BUTTON32779_Ellipse, OnUpdateBUTTON32779Ellipse)
ON_UPDATE_COMMAND_UI(ID_BUTTON32780_Round, OnUpdateBUTTON32780Round)
ON_UPDATE_COMMAND_UI(ID_BUTTON32777_Curve, OnUpdateBUTTON32777Curve)
ON_UPDATE_COMMAND_UI(ID_BUTTON_LiEllipse, OnUpdateBUTTONLiEllipse)
ON_UPDATE_COMMAND_UI(ID_BUTTON32800_RoundArc, OnUpdateBUTTON32800RoundArc)
ON_UPDATE_COMMAND_UI(ID_BUTTON32805_EllipseArc, OnUpdateBUTTON32805EllipseArc)
ON_UPDATE_COMMAND_UI(ID_BUTTON32807_PolyBezier, OnUpdateBUTTON32807PolyBezier)
ON_UPDATE_COMMAND_UI(ID_BUTTON32809_Text, OnUpdateBUTTON32809Text)
ON_UPDATE_COMMAND_UI(ID_BUTTON32774_Move, OnUpdateBUTTON32774Move)
ON_COMMAND(ID_BUTTON32845_Axis, OnBUTTON32845Axis)
ON_UPDATE_COMMAND_UI(ID_BUTTON32845_Axis, OnUpdateBUTTON32845Axis)
ON_COMMAND(ID_BUTTON32850_ReDraw, OnBUTTON32850ReDraw)
ON_COMMAND(ID_BUTTON32856_DONothing, OnBUTTON32856DONothing)
ON_COMMAND(ID_BUTTON32858_OnDo, OnBUTTON32858OnDo)
ON_COMMAND(ID_BUTTON32859_ReDo, OnBUTTON32859ReDo)
ON_UPDATE_COMMAND_UI(ID_BUTTON32858_OnDo, OnUpdateBUTTON32858OnDo)
ON_UPDATE_COMMAND_UI(ID_BUTTON32859_ReDo, OnUpdateBUTTON32859ReDo)
ON_COMMAND(ID_MouseCap_On, OnMouseCapOn)
ON_UPDATE_COMMAND_UI(ID_MouseCap_On, OnUpdateMouseCapOn)
ON_WM_KEYDOWN()
//}}AFX_MSG_MAP
// Standard printing commands
ON_COMMAND(ID_FILE_PRINT, CScrollView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_DIRECT, CScrollView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_PREVIEW, CScrollView::OnFilePrintPreview)
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CEastDrawView construction/destruction
#include "MainFrm.h"
#include "CCurve.h"
#include "CDLine.h"
#include "CRectangle.h"
#include "CRoundRectangle.h"
#include "CEllipse.h"
#include "CRound.h"
#include "CPolygon.h"
#include"CLiEllipse.h"
#include"CRoundArc.h"
#include"CEllipseArc.h"
#include "CPolyBezier.h"
//#include "TextEdit.h"
#include "CText.h"
CEastDrawView::CEastDrawView()
{
// TODO: add construction code here
m_IsLastMove=false;
m_Rtimes=0;
m_Index=0;
m_pCurrentUnit=new CUnit;
m_HaveAxis=true;
m_Bitmap=NULL;
m_IsLocked=false;
CMainFrame*pMainFrame=STATIC_DOWNCAST(CMainFrame, AfxGetMainWnd());
m_DLineProperty=pMainFrame->m_DLineProperty;
m_IsMouseCap=true;
}
CEastDrawView::~CEastDrawView()
{
this->ReMoveTemp();
}
BOOL CEastDrawView::PreCreateWindow(CREATESTRUCT& cs)
{
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
return CScrollView::PreCreateWindow(cs);
}
/////////////////////////////////////////////////////////////////////////////
// CEastDrawView drawing
void CEastDrawView::OnDraw(CDC* pDC)
{
CEastDrawDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
pDC->SetWindowOrg(m_CenterPoint);
this->DrawAll(pDC);
if(this->m_HaveAxis)
this->DrawAxis(pDC);
}
void CEastDrawView::OnInitialUpdate()
{
CScrollView::OnInitialUpdate();
CEastDrawDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
CSize sizeTotal;
// TODO: calculate the total size of this view
sizeTotal.cx = sizeTotal.cy =2000;
SetScrollSizes(MM_TEXT,pDoc->m_TotalSize);
m_CenterPoint=pDoc->m_CenterPoint;
//SetScrollSizes(MM_HIENGLISH, sizeTotal);
m_bHaveFindFirst=FALSE;
m_bHaveFindSecond=false;
m_LBDownTimes=0;
m_CurrentDrawTool=0;
m_CurrentDrawStatus=0;
ScrollToPosition(CPoint(900,600));
AddTempFile();
AutoSave();
}
/////////////////////////////////////////////////////////////////////////////
// CEastDrawView printing
void CEastDrawView::OnBeginPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
{
// TODO: add extra initialization before printing
}
void CEastDrawView::OnEndPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
{
// TODO: add cleanup after printing
}
/////////////////////////////////////////////////////////////////////////////
// CEastDrawView diagnostics
#ifdef _DEBUG
void CEastDrawView::AssertValid() const
{
CScrollView::AssertValid();
}
void CEastDrawView::Dump(CDumpContext& dc) const
{
CScrollView::Dump(dc);
}
CEastDrawDoc* CEastDrawView::GetDocument() // non-debug version is inline
{
ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CEastDrawDoc)));
return (CEastDrawDoc*)m_pDocument;
}
#endif //_DEBUG
/////////////////////////////////////////////////////////////////////////////
// CEastDrawView message handlers
//******************************************************************************
//******************************************************************************
//**********void CEastDrawView::OnLButtonDown(UINT nFlags, CPoint point)********************************************************************
//******************************************************************************
//******************************************************************************
void CEastDrawView::OnLButtonDown(UINT nFlags, CPoint point)
{
// TODO: Add your message handler code here and/or call default
CEastDrawDoc*pDoc=this->GetDocument();
CPoint Devpoint=point;
CClientDC dc(this);
this->OnPrepareDC(&dc);
dc.SetWindowOrg(m_CenterPoint);
dc.DPtoLP(&point);
dc.SetROP2(R2_NOTXORPEN);
this->ComputeMinandMaxPoint(point);
m_ChangeingPoint=point;
this->SetMousePosText(point,Devpoint);
if(this->m_CurrentDrawStatus==Draw_Status)
{
if(this->m_CurrentDrawTool!=Polygon_Tool&&this->m_CurrentDrawTool!=PolyBezier_Tool)
{
if(this->m_CurrentDrawTool==EllipseArc_Tool)
{
if(m_LBDownTimes==3)
{
this->m_pCurre
没有合适的资源?快使用搜索试试~ 我知道了~
矢量绘图软件EastDraw及其完整源代码.zip
共91个文件
h:29个
cpp:28个
bmp:21个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 2 下载量 121 浏览量
2022-06-19
12:23:54
上传
评论
收藏 317KB ZIP 举报
温馨提示
矢量绘图软件EastDraw及其完整源代码.zip
资源详情
资源评论
资源推荐
收起资源包目录
矢量绘图软件EastDraw及其完整源代码.zip (91个子文件)
矢量绘图软件EastDraw及其完整源代码
EastDraw
CRoundRectangle.cpp 8KB
CDLine.h 603B
CRectangle.cpp 7KB
Release
EastDraw.exe 688KB
CDLine.cpp 8KB
DLineDlg2.cpp 35KB
EastDraw.reg 695B
EastDraw.dsw 541B
CLiEllipse.h 566B
StyleBar.h 2KB
DLineDlg1.cpp 9KB
res
bitmap6.bmp 1KB
bitmap10.bmp 1KB
bitmap4.bmp 1KB
bitmap5.bmp 1KB
Start.bmp 448KB
bmp00004.bmp 1KB
bmp00007.bmp 1KB
cursor_m.cur 518B
EastDrawDoc.ico 1KB
bitmap8.bmp 1KB
toolbar1.bmp 4KB
bitmap9.bmp 1KB
bitmap_d.bmp 1KB
EastDraw.ico 1KB
id_chang.cur 2KB
Toolbar.bmp 4KB
bmp00009.bmp 1KB
bmp00008.bmp 1KB
bitmap2.bmp 1KB
cursor1.cur 4KB
bmp00006.bmp 1KB
style_ba.bmp 718B
id_draw.cur 6KB
bmp00010.bmp 1KB
bitmap3.bmp 1KB
bitmap7.bmp 1KB
bmp00005.bmp 1KB
EastDraw.rc2 400B
EditBox.h 1KB
CPolyBezier.cpp 8KB
DLineDlg1.h 2KB
TextEdit.h 2KB
CRoundArc.h 690B
CEllipse.cpp 15KB
EditBox.cpp 1KB
CEllipseArc.cpp 14KB
ReginSet.h 1KB
CPolyBezier.h 753B
CText.h 899B
CRound.cpp 9KB
EastDrawView.cpp 63KB
ChildFrm.cpp 1KB
CCurve.h 657B
EastDraw.cpp 6KB
EastDraw.dsp 10KB
Splash.cpp 3KB
CCurve.cpp 4KB
CPolygon.cpp 12KB
CRoundRectangle.h 587B
CEllipse.h 1KB
DLineProperty.cpp 4KB
Splash.h 1KB
EastDraw.clw 10KB
CText.cpp 11KB
CRound.h 605B
EastDrawDoc.cpp 15KB
StdAfx.cpp 210B
MainFrm.cpp 7KB
resource.h 9KB
CLiEllipse.cpp 8KB
EastDraw.rc 31KB
EastDrawDoc.h 2KB
CEllipseArc.h 1KB
Mode.h 2KB
Mode.cpp 5KB
CUnit.cpp 5KB
EastDraw.h 1KB
CRoundArc.cpp 8KB
MainFrm.h 2KB
ChildFrm.h 1KB
StdAfx.h 1KB
CUnit.h 4KB
TextEdit.cpp 4KB
CRectangle.h 559B
CPolygon.h 731B
DLineProperty.h 2KB
EastDrawView.h 6KB
ReginSet.cpp 2KB
DLineDlg2.h 3KB
StyleBar.cpp 8KB
共 91 条
- 1
programxh
- 粉丝: 17
- 资源: 1万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 通道处理过程的模拟通常涉及对通道处理机制的理解与实现.txt
- Flume进阶-自定义拦截器jar包
- Dubins曲线算法讲解和在运动规划中的使用.pdf
- 上市公司-股票性质数据-工具变量(民企、国企、央企)2003-2022年.dta
- 上市公司-股票性质数据-工具变量(民企、国企、央企)2003-2022年.xlsx
- Reeds+Shepp曲线算法讲解和实现.pdf
- 毕业设计基于SpringBoot+MyBatisPlus+MySQL+Vue的外卖配送信息系统源代码+数据库
- 词向量(Word Embeddings)是自然语言处理(NLP)领域的一种重要技术.txt
- Surfer,线性函数
- MyBatis 的动态 SQL 是其核心特性之一.txt
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论2