亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? eastdrawview.cpp

?? 完整的基本圖形繪制系統 .rar
?? CPP
?? 第 1 頁 / 共 5 頁
字號:
 CMainFrame* pMainFrame=(CMainFrame*)AfxGetMainWnd();
	if(pMainFrame->m_wndStyleBar.IsWindowVisible())
    { 
	 pMainFrame->ShowFontBar(true);
     if(this->m_LBDownTimes==1)
	 {
	  this->m_LBDownTimes=2;
	  this->m_pCurrentUnit->OnLButtonDown(&dc,this,0);
	  
	 }
	}
  if(!pMainFrame->m_wndStyleBar.IsWindowVisible())
  {
   pMainFrame->ShowFontBar(true);
   this->m_LBDownTimes=0;
  }
  //m_pTextEdit->ShowWindow(true);
  m_CurrentDrawTool=Text_Tool;
 m_CurrentDrawStatus=Draw_Status;
 this->m_LBDownTimes=0;

}







void CEastDrawView::GetFontInfo(LPTSTR pszFaceName, int &nSize)
{
   /// CHARFORMAT cf = GetCharFormatSelection ();
    //::lstrcpy (pszFaceName, cf.dwMask & CFM_FACE ? cf.szFaceName : _T (""));
   // nSize = cf.dwMask & CFM_SIZE ? cf.yHeight : -1;
}


void CEastDrawView::OnCharBold() 
{
	// TODO: Add your command handler code here
	CMainFrame*pMainFrame=(CMainFrame*)::AfxGetMainWnd();
	pMainFrame->m_wndStyleBar.OnCharBold();
	 
}

void CEastDrawView::OnCharItalic() 
{
	// TODO: Add your command handler code here
	CMainFrame*pMainFrame=(CMainFrame*)::AfxGetMainWnd();
	pMainFrame->m_wndStyleBar.OnCharItalic();
}

void CEastDrawView::OnCharUnderline() 
{
	// TODO: Add your command handler code here
	CMainFrame*pMainFrame=(CMainFrame*)::AfxGetMainWnd();
	pMainFrame->m_wndStyleBar.OnCharUnderline();
}







void CEastDrawView::OnContextMenu(CWnd* pWnd, CPoint point) 
{
      CClientDC dc(this);
	  this->OnPrepareDC(&dc);
	  dc.SetWindowOrg(m_CenterPoint);
	  //dc.DPtoLP(&point);
	// TODO: Add your message handler code here
      if(m_CurrentDrawStatus!=Select_Status)
	  m_pCurrentUnit->OnContextMenu(pWnd,point);
	  
     if(m_CurrentDrawStatus==Select_Status)
	 {
	  CMenu menuTextEdit;
      menuTextEdit.LoadMenu(IDR_MENU_Delete);
      
      menuTextEdit.GetSubMenu(0)->TrackPopupMenu(TPM_LEFTALIGN,point.x,point.y,pWnd);
	 
	 }

}

void CEastDrawView::OnMenuitemOk() 
{
	// TODO: Add your command handler code here

	  CClientDC dc(this);
	  OnPrepareDC(&dc);
	  dc.SetWindowOrg(m_CenterPoint);
	  m_pCurrentUnit->OnMenuitemOk(&dc,this);
}





BOOL CEastDrawView::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message) 
{
	// TODO: Add your message handler code here and/or call default
	if(m_CurrentDrawStatus==Draw_Status||m_CurrentDrawStatus==Change_Status||m_CurrentDrawStatus==Select_Color_Status)
	 SetCursor(AfxGetApp()->LoadCursor(ID_Draw));
    
	if(m_CurrentDrawStatus==Drag_Status||m_CurrentDrawStatus==Select_Status)
     SetCursor(AfxGetApp()->LoadCursor(ID_Change));
	return true;
	//return CScrollView::OnSetCursor(pWnd, nHitTest, message);
}

void CEastDrawView::ShowFontBar(BOOL isShow)
{
	CMainFrame*pMainFrame=(CMainFrame*)::AfxGetMainWnd();
	pMainFrame->ShowFontBar(isShow);
}

void CEastDrawView::OnCirCu() 
{
	// TODO: Add your command handler code here
      CClientDC dc(this);
	  this->OnPrepareDC(&dc);
	  dc.SetWindowOrg(m_CenterPoint);
	  this->m_pCurrentUnit->OnMenuitemCirCu(&dc,this);
}

void CEastDrawView::OnUpdateCirCu(CCmdUI* pCmdUI) 
{
	// TODO: Add your command update UI handler code here

  pCmdUI->SetCheck();
}

void CEastDrawView::SetMousePosText(CPoint Logpoint,CPoint Devpoint)
{
	CMainFrame*pMainFrame=(CMainFrame*)::AfxGetMainWnd();
	pMainFrame->SetMousePosText(Logpoint,Devpoint);
}

void CEastDrawView::DrawAxis(CDC*pDC)
{
  
	CPen pen;
    pen.CreatePen(PS_SOLID,1,RGB(255,0,0));
	CPen*OldPen=pDC->SelectObject(&pen);
	int oldRop=pDC->SetROP2(R2_NOTXORPEN);
	pDC->MoveTo(m_CenterPoint.x+2,0);
	pDC->LineTo(GetTotalSize().cx+m_CenterPoint.x-2,0);
	
	pDC->MoveTo(0,m_CenterPoint.y+2);
	pDC->LineTo(0,GetTotalSize().cy+m_CenterPoint.y-2);
	
	pDC->SelectObject(OldPen);
	pDC->SetROP2(oldRop);

}






BOOL CEastDrawView::SaveDIB(CBitmap*pbitmap, CFile&file)
{
    CClientDC dc(this);
	OnPrepareDC(&dc);
	dc.SetWindowOrg(m_CenterPoint);
	CDC*pViewDC=&dc;
    CEastDrawDoc* pDoc = GetDocument();
	ASSERT_VALID(pDoc);

	CBitmap*Oldmap;
    CBitmap Bitmap;
	CDC memDC;
    Bitmap.CreateCompatibleBitmap(pViewDC,this->GetTotalSize().cx,this->GetTotalSize().cy);
    memDC.CreateCompatibleDC(pViewDC);
    memDC.SetMapMode(pViewDC->GetMapMode());
	Oldmap=memDC.SelectObject(&Bitmap);
	
	memDC.SetWindowOrg(m_CenterPoint);
	memDC.PatBlt(m_CenterPoint.x,m_CenterPoint.y,GetTotalSize().cx,GetTotalSize().cy,WHITENESS);
	
	this->DrawAll(&memDC);
    if(this->m_HaveAxis)
		this->DrawAxis(&memDC);
	::GdiFlush();
	memDC.SelectObject(Oldmap);
	memDC.DeleteDC();
	
	BITMAPFILEHEADER bmfHdr; 
	
    bmfHdr.bfType=0x4d42;
	int sizeHdr=sizeof(BITMAPINFOHEADER);
   
    LPBITMAPINFOHEADER lpBI=( LPBITMAPINFOHEADER)::GlobalAlloc(LMEM_FIXED,sizeHdr);
 	if(!lpBI)
	{
	  AfxMessageBox("內存申請失敗,請稍后再試");
	
	}
	BYTE *pDib;
	BYTE *pDib2;
    pDib=(BYTE*)::GlobalAlloc(LMEM_FIXED,GetTotalSize().cx*GetTotalSize().cy*4);
    if(!pDib)
	{
	  AfxMessageBox("內存申請失敗,請稍后再試");
	
	}
	lpBI->biSize=(LONG)sizeof(BITMAPINFOHEADER);
	lpBI->biWidth=(LONG)this->GetTotalSize().cx;
	lpBI->biHeight=(LONG)this->GetTotalSize().cy;
	lpBI->biPlanes=1;
	lpBI->biBitCount=32;
	lpBI->biCompression=BI_RGB;
	lpBI->biSizeImage=0;
	lpBI->biXPelsPerMeter=0;
	lpBI->biYPelsPerMeter=0;
	lpBI->biClrUsed=0;
	lpBI->biClrImportant=0;

   
    Bitmap.GetBitmapBits(GetTotalSize().cx*GetTotalSize().cy*4,pDib);

	pDib2=(BYTE*)::GlobalAlloc(LMEM_FIXED,GetTotalSize().cx*GetTotalSize().cy*4);
	  if(!pDib2)
	{
	  AfxMessageBox("內存申請失敗,請稍后再試");
	
	}
	
	for(int j=0;j<GetTotalSize().cy;j++)
		 for(int i=0;i<GetTotalSize().cx*4;i++)
	 {
	  pDib2[i+j*GetTotalSize().cx*4]=pDib[GetTotalSize().cx*(GetTotalSize().cy-1-j)*4+i];	
	}
		 ::GlobalFree(pDib);
	

    bmfHdr.bfSize=(DWORD) (sizeof(BITMAPFILEHEADER) + 
                 sizeHdr +GetTotalSize().cx*GetTotalSize().cy*4); 
	bmfHdr.bfReserved1=bmfHdr.bfReserved2=0;
	bmfHdr.bfOffBits=sizeof(BITMAPFILEHEADER)+sizeHdr;
	
  try
  {
	 
     file.Write((LPVOID)&bmfHdr,sizeof(BITMAPFILEHEADER));
	 file.Write((LPVOID)lpBI,sizeHdr);
	 file.WriteHuge((LPVOID)pDib2,GetTotalSize().cx*GetTotalSize().cy*4);
  }

  catch(CException*Fe)
  {
    Fe->ReportError();
	Fe->Delete();
   return false;
  }
  
 
  ::GlobalFree(lpBI);
  ::GlobalFree(pDib2);
   return true;  
  

}





void CEastDrawView::DeleteSelect()
{   
	this->ExchangeSave();
	CClientDC dc(this);
	this->OnPrepareDC(&dc);
	dc.SetWindowOrg(m_CenterPoint);
	CDC*pDC=&dc;
	CEastDrawDoc* pDoc = GetDocument();
	ASSERT_VALID(pDoc);
	int oldrop=pDC->SetROP2(R2_NOTXORPEN);   
	for(int i=0;i<pDoc->m_PolygonArray.GetSize();i++)
	{
	  CPolygon*pPolygon=(CPolygon*)pDoc->m_PolygonArray.GetAt(i);
	  if(pPolygon->m_HaveFindFirst)
	  {
		pPolygon->ShowSelectPoint(pDC);
	    pPolygon->DrawStatic(pDC);
		pDoc->m_PolygonArray.RemoveAt(i);
		delete 	pPolygon;
		i--;

	  }
                
	}
    for(i=0;i<pDoc->m_TextArray.GetSize();i++)
	{
	  CText*pText=(CText*)pDoc->m_TextArray.GetAt(i);
	  
	    if(pText->m_HaveFindFirst)
		{	
			 pText->ShowSelectPoint(pDC);
	         //pText->DrawStatic(pDC);
			 CPoint point=pText->m_PositionPoint;
			 pDC->LPtoDP(&point);

			 this->InvalidateRect(CRect(point,CPoint(point.x+pText->m_Width,point.y+pText->m_Hight)));
			 pDoc->m_TextArray.RemoveAt(i);
			 delete pText;
             i--;
		}
	}

	for(i=0;i<pDoc->m_PolyBezierArray.GetSize();i++)
	{
	 CPolyBezier*pPolyBezier=(CPolyBezier*)pDoc->m_PolyBezierArray.GetAt(i);
	 
	  if(pPolyBezier->m_HaveFindFirst)
	  {
		  pPolyBezier->ShowSelectPoint(pDC);
	      pPolyBezier->DrawStatic(pDC);
		  pDoc->m_PolyBezierArray.RemoveAt(i);
		  delete pPolyBezier;
		  i--;
	  }
	}
	for(i=0;i<pDoc->m_DLineArray.GetSize();i++)
   {
	CDLine*pDLine=(CDLine*)pDoc->m_DLineArray.GetAt(i);

    if(pDLine->m_HaveFindFirst)
	{   pDLine->ShowSelectPoint(pDC);
	    pDLine->DrawStatic(pDC);
	     pDoc->m_DLineArray.RemoveAt(i);
		 delete pDLine;
	     i--;
	}
	
	}
	for(i=0;i<pDoc->m_CurveArray.GetSize();i++)
	{
	 CCurve*pCurve=(CCurve*)pDoc->m_CurveArray.GetAt(i);
	 
	 if(pCurve->m_HaveFindFirst)
	 {
		 pCurve->ShowSelectPoint(pDC);
	     pCurve->DrawStatic(pDC);
		 pDoc->m_CurveArray.RemoveAt(i);
		 delete pCurve;
	     i--;
	 }
	 }

	for(i=0;i<pDoc->m_RectangleArray.GetSize();i++)
	{
	CRectangle*pRectangle=(CRectangle*)pDoc->m_RectangleArray.GetAt(i);
	
	if(pRectangle->m_HaveFindFirst)
	{
		pRectangle->ShowSelectPoint(pDC);
        pRectangle->DrawStatic(pDC);
		pDoc->m_RectangleArray.RemoveAt(i);
		delete pRectangle;
		i--;
	}
	}
    for(i=0;i<pDoc->m_RoundRectangleArray.GetSize();i++)
	{
	CRoundRectangle*pRoundRectangle=(CRoundRectangle*)pDoc->m_RoundRectangleArray.GetAt(i);
	
	if(pRoundRectangle->m_HaveFindFirst)
	{	
		pRoundRectangle->ShowSelectPoint(pDC);
	   pRoundRectangle->DrawStatic(pDC);
	    pDoc->m_RoundRectangleArray.RemoveAt(i);
		delete pRoundRectangle;
		i--;
	}
	}
    for(i=0;i<pDoc->m_EllipseArray.GetSize();i++)
	{
	CEllipse*pEllipse=(CEllipse*)pDoc->m_EllipseArray.GetAt(i);
	
	if(pEllipse->m_HaveFindFirst)
	{   pEllipse->ShowSelectPoint(pDC);
	    pEllipse->DrawStatic(pDC);
	    pDoc->m_EllipseArray.RemoveAt(i);
		delete pEllipse;
		i--;
	
	}
	}
    for(i=0;i<pDoc->m_RoundArray.GetSize();i++)
	{
	CRound*pRound=(CRound*)pDoc->m_RoundArray.GetAt(i);
	
	if(pRound->m_HaveFindFirst)
	{
		pRound->ShowSelectPoint(pDC);
	    pRound->DrawStatic(pDC);
	    pDoc->m_RoundArray.RemoveAt(i);
		delete pRound;
		i--;
	
	}
	}
  for(i=0;i<pDoc->m_LiEllipseArray.GetSize();i++)
	{
	CEllipse*pLiEllipse=(CEllipse*)pDoc->m_LiEllipseArray.GetAt(i);

	if(pLiEllipse->m_HaveFindFirst)
	{
		pLiEllipse->ShowSelectPoint(pDC);
	    pLiEllipse->DrawStatic(pDC);
	    pDoc->m_LiEllipseArray.RemoveAt(i);
		delete pLiEllipse;
		i--;
	
	}
	}
  for(i=0;i<pDoc->m_RoundArcArray.GetSize();i++)
  {
    CRoundArc*pRoundArc=(CRoundArc*)pDoc->m_RoundArcArray.GetAt(i);
	
	if(pRoundArc->m_HaveFindFirst)
	{
		pRoundArc->ShowSelectPoint(pDC);
	    pRoundArc->DrawStatic(pDC);
	    pDoc->m_RoundArcArray.RemoveAt(i);
		delete pRoundArc;
		i--;
	}
	}
    
  for(i=0;i<pDoc->m_EllipseArcArray.GetSize();i++)
  {
   CEllipseArc*pEllipseArc=(CEllipseArc*)pDoc->m_EllipseArcArray.GetAt(i);
   
   if(pEllipseArc->m_HaveFindFirst)
   {   pEllipseArc->ShowSelectPoint(pDC);
       pEllipseArc->DrawStatic(pDC);
       pDoc->m_EllipseArcArray.RemoveAt(i);
	   delete pEllipseArc;
	   i--;
   }
   }
  pDC->SetROP2(oldrop);
}

void CEastDrawView::OnKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags) 
{
	// TODO: Add your message handler code here and/or call default
	if(nChar==VK_DELETE)
		this->DeleteSelect();
	CScrollView::OnKeyUp(nChar, nRepCnt, nFlags);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
最新成人av在线| 高清国产一区二区三区| 国产欧美久久久精品影院| 欧美嫩在线观看| 成人av在线一区二区| 国产91色综合久久免费分享| 激情文学综合插| 美女精品自拍一二三四| 久草精品在线观看| 国内国产精品久久| 国产东北露脸精品视频| 黄页网站大全一区二区| 国产精品原创巨作av| 国产一区二区精品在线观看| 国产一区在线精品| 国产成人av资源| 99久久精品久久久久久清纯| eeuss鲁片一区二区三区在线观看| www.欧美日韩国产在线| 9l国产精品久久久久麻豆| 美女尤物国产一区| 性感美女久久精品| 麻豆国产一区二区| 国产成人亚洲综合a∨婷婷图片| 国产一区999| 99re这里都是精品| 欧美日韩国产一级片| 精品久久久久久综合日本欧美| 久久精品一区二区三区不卡| 国产日韩av一区| 亚洲欧美激情一区二区| 综合电影一区二区三区| 亚洲高清免费观看高清完整版在线观看| 国产精品欧美久久久久一区二区| 亚洲精品免费看| 久久99精品国产麻豆婷婷洗澡| 成人中文字幕合集| av在线播放一区二区三区| 欧美人xxxx| 国产午夜精品福利| 性做久久久久久免费观看| 久久99在线观看| 色噜噜夜夜夜综合网| 91精品一区二区三区在线观看| 中文字幕欧美区| 亚洲成人av福利| 99国产欧美另类久久久精品| 91精品在线免费| 亚洲色图在线视频| 国产真实乱子伦精品视频| 色婷婷精品久久二区二区蜜臀av| 日韩视频在线一区二区| 亚洲主播在线观看| 成人精品高清在线| 亚洲精品一区在线观看| 婷婷开心激情综合| 成年人国产精品| 久久久久88色偷偷免费| 男女视频一区二区| 欧美私人免费视频| 中文字幕va一区二区三区| 亚洲中国最大av网站| 成人免费av资源| 亚洲精品一区二区在线观看| 婷婷久久综合九色综合绿巨人| 99精品久久久久久| 日本一区二区三区免费乱视频| 日韩精品91亚洲二区在线观看| 91免费观看视频| 欧美国产欧美亚州国产日韩mv天天看完整| 亚洲激情图片小说视频| 成人av网址在线| 亚洲国产精品精华液2区45| 久久国产日韩欧美精品| 日韩一区二区三区在线| 日韩在线卡一卡二| 免费日本视频一区| 色94色欧美sute亚洲线路一久| 久久久久久久av麻豆果冻| 麻豆成人91精品二区三区| 3751色影院一区二区三区| 亚洲一区免费观看| 91黄色激情网站| 亚洲男人天堂av网| 在线一区二区三区四区五区| 亚洲精品视频自拍| 欧美性猛交xxxx黑人交| 亚洲va国产va欧美va观看| 色综合天天综合色综合av | 最新日韩在线视频| 成人综合在线观看| 中文字幕欧美区| 99天天综合性| 亚洲精品国产精品乱码不99| 91久久精品一区二区| 亚洲与欧洲av电影| 欧美日韩精品欧美日韩精品| 午夜精品福利在线| 欧美精品v国产精品v日韩精品 | 香蕉久久一区二区不卡无毒影院| 成人av在线一区二区三区| 国产精品网站导航| 高清不卡一区二区在线| 综合久久一区二区三区| 一本久久综合亚洲鲁鲁五月天| 亚洲高清在线精品| 久久婷婷色综合| 国产福利电影一区二区三区| 国产精品沙发午睡系列990531| eeuss国产一区二区三区| 亚洲免费观看高清完整版在线观看熊 | 91精品在线观看入口| 国产精品1区2区3区| 自拍视频在线观看一区二区| 在线观看日产精品| 国产美女一区二区| 亚洲精品乱码久久久久久| 777久久久精品| 国模一区二区三区白浆| 亚洲欧洲三级电影| 亚洲精品一区二区三区福利| 99精品欧美一区二区三区综合在线| 亚洲电影第三页| 91精品啪在线观看国产60岁| 成人高清伦理免费影院在线观看| 亚洲国产裸拍裸体视频在线观看乱了 | 99久久精品国产观看| 天使萌一区二区三区免费观看| 久久久久国产成人精品亚洲午夜| 色哟哟一区二区在线观看 | 国产·精品毛片| 婷婷开心激情综合| 亚洲视频1区2区| 国产区在线观看成人精品| 欧美色国产精品| 99视频在线精品| 久久精品国产亚洲高清剧情介绍| 亚洲日本乱码在线观看| 久久久综合九色合综国产精品| 欧美午夜片在线看| 91玉足脚交白嫩脚丫在线播放| 国产一区二区三区久久久| 奇米影视一区二区三区| 亚洲成人激情综合网| 亚洲黄色在线视频| 国产精品初高中害羞小美女文| 久久久久久99精品| 欧美xxxx老人做受| 日韩欧美国产wwwww| 欧美视频在线播放| 91美女片黄在线观看| 国产精品99久久久久久久女警 | 91啪亚洲精品| av电影天堂一区二区在线 | 亚洲图片欧美视频| 一区二区在线看| 一区二区理论电影在线观看| 亚洲乱码国产乱码精品精的特点| 亚洲视频精选在线| 亚洲精品欧美激情| 亚洲一二三四区| 亚洲国产wwwccc36天堂| 五月婷婷另类国产| 日韩精品电影在线| 麻豆精品新av中文字幕| 国产一区二区三区四区五区美女| 韩国av一区二区三区在线观看| 国产乱码精品一区二区三区忘忧草| 国产一区 二区| k8久久久一区二区三区| 91猫先生在线| 欧美男女性生活在线直播观看| 欧美日韩在线电影| 欧美精品久久99| 精品免费日韩av| 亚洲国产精品激情在线观看| 亚洲黄色av一区| 午夜欧美在线一二页| 国内成+人亚洲+欧美+综合在线| 成人综合在线观看| 91麻豆swag| 欧美日本一道本| 日韩欧美在线影院| 亚洲欧洲av另类| 秋霞电影一区二区| 国产盗摄视频一区二区三区| 99r国产精品| 制服丝袜亚洲色图| 久久久九九九九| 亚洲丝袜自拍清纯另类| 卡一卡二国产精品| 不卡av在线网| 7777精品久久久大香线蕉| 国产拍欧美日韩视频二区| 亚洲一卡二卡三卡四卡无卡久久| 韩国女主播一区| 欧美日韩在线三级| 国产精品高清亚洲| 美女视频一区在线观看| 91精品福利视频|