#include "StdAfx.h" #include "TBaseHoleLableEdJig.h" #include "BaseHoleDlg.h" TBaseHoleLabelEdJig::TBaseHoleLabelEdJig(TDbSymbMultiLeader *pLeader):TLeaderEdJig(pLeader) { } void TBaseHoleLabelEdJig::SetDlgPtr(CBaseHoleDlg* pBaseHoleDlg) { m_pBaseHoleDlg = pBaseHoleDlg; } Adesk::Boolean TBaseHoleLabelEdJig::update() { Adesk::Boolean bRet=Adesk::kTrue; if(m_nOperCode==TLeaderEdJig::kLeader) { XVector3D vtOffset=m_ptResult-GetBasePoint(); vtOffset.Rotate(-Ucs2Wcs(0.0));// zxl 2013.07.23 add m_pDrawEnt->SetLeaderPoint(m_ptResult); if(vtOffset.x<0.0) m_pDrawEnt->SetTextBaseLen(-fabs(m_pDrawEnt->GetTextBaseLen())); else m_pDrawEnt->SetTextBaseLen(fabs(m_pDrawEnt->GetTextBaseLen())); } else if(m_nOperCode==TLeaderEdJig::kVertex) { } else if(m_nOperCode==TLeaderEdJig::kTextLine) { XPoint ptLeader=m_pDrawEnt->GetLeaderPoint(); m_pDrawEnt->SetTextBaseLen(m_ptResult.x - ptLeader.x, FALSE); } if (m_pDrawEnt != NULL && m_pBaseHoleDlg != NULL) { m_pDrawEnt->SetText1(m_pBaseHoleDlg->getSuperscript()); m_pDrawEnt->SetText2(m_pBaseHoleDlg->getSubscript()); } return bRet; }