Files
envi-code/SourceCode/Code2026/Dimension/AecDbMText.h
T
2026-09-28 15:28:50 +08:00

56 lines
2.1 KiB
C++

#pragma once
#include "aecdbtext.h"
class AecXDbMText : public AecXDbText
{
public:
ACRX_DECLARE_MEMBERS(AecXDbMText);
private:
const static Adesk::UInt8 g_nVersion;
protected:
double m_nPageWidth; //段落宽度
double m_nLineSpace; //行间距
public:
AecXDbMText();
~AecXDbMText();
//virtual BOOL IsValid() const;
virtual void CopyPropertiesFrom(AcDbEntity *pSrcEntity, unsigned gMatchFlag);
// 返回发现的位置,同时posStart往前移动(以便继续找下一个使用),
virtual TextPosition FindSubText(const TCHAR *sSubText, TextPosition &posStart, TextRange *pRange = NULL) const;
// 返回下一次查找的开始位置
virtual TextPosition ReplaceSubText(const TextPosition &posRep, const TCHAR *sRepText, TextRange *pRange = NULL);
//virtual Acad::ErrorStatus subGetClassID(CLSID* pClsid) const;
virtual Acad::ErrorStatus dwgInFields(AcDbDwgFiler*);
virtual Acad::ErrorStatus dwgOutFields(AcDbDwgFiler*) const;
virtual Acad::ErrorStatus dxfInFields(AcDbDxfFiler*);
virtual Acad::ErrorStatus dxfOutFields(AcDbDxfFiler*) const;
virtual Acad::ErrorStatus subTransformBy(const AcGeMatrix3d& xform);
virtual Acad::ErrorStatus subGetGripPoints(AcGePoint3dArray& gripPoints,
AcDbIntArray& osnapModes,
AcDbIntArray& geomIds) const;
virtual Acad::ErrorStatus subMoveGripPointsAt(const AcDbIntArray& indices,
const AcGeVector3d& offset);
// drived from TDbEntity
virtual void GetTips(PtrList<ObjInfoUnit> &lstInfo) const; //取动态属性显示数据
virtual Acad::ErrorStatus Draw2d(AcGiDraw &dc) const;
virtual Acad::ErrorStatus GetGripText(int i, CString &cs) const;
virtual SubText* HitTestText(ADSGePoint3d pt)const { return NULL; }//ok
// Helper Method
//BOOL ConvertFrom(const AcDbMText *pText);
// 没有考虑转角
virtual ADSGePoint3d GetExtents() const;
void GetTextLines(PtrList<TextLine> &lstLines) const;
// Properties
double GetPageWidth(BOOL bAsPaperUnit = TRUE) const;
double GetLineSpace(BOOL bAsPaperUnit = TRUE) const;
void SetPageWidth(double nWidth, BOOL bAsPaperUnit = TRUE);
void SetLineSpace(double nWidth, BOOL bAsPaperUnit = TRUE);
};