Files
envi-code/SourceCode/Code2026/tg_shs/inc/TArch/dbPromptMark.h
T
gjm 164968b62e chore
把非utf8-bom编码的cpp/h文件改为 utf8 bom 编码, msvc识别utf8编码时,如果不是bom格式的,会使用当前cp_oem来解码.
2026-10-04 00:04:20 +08:00

91 lines
3.2 KiB
C++

#ifndef __DBPROMPTMARK_H
#define __DBPROMPTMARK_H
//#include "DbEntity.h"
#define PMF_DRAW_TEXT 0x01
class TARCH_EXP TDbPromptMark: public TDbEntity /*, public XRectAngle*/ {
DECLARE_TENTBASE();
public:
enum ShapeFlag {
kRectCrossing=0,
kCircle=1,
kRect=2,
kTriangle=3,
kCrossing=4,
kItericCrossing=5, //斜叉
kCircleCrossing=6, //园叉
kCircleICrossing=7, //圆斜叉
};
protected:
XString m_sPrompt;
const static Adesk::UInt8 g_nVersion;
Adesk::UInt32 m_nControlFlag; //控制标记,保留备用
ShapeFlag m_shape;
AcDbHardPointerId m_idTextStyle;
XPoint m_ptLocation;
double m_xSize, m_ySize;
double m_nRotation;
//TArch7
Adesk::UInt16 m_colorText;//文字颜色
public:
void SetLocation(XPoint pt);
void SetSizeX(double x);
void SetSizeY(double y);
void SetRotation(double nRot);
void SetPrompt(const TCHAR *pszMsg);
void SetShape(TDbPromptMark::ShapeFlag sp);
void SetTextStyle(AcDbObjectId id);
void SetDrawText(BOOL bTrue);
BOOL GetDrawText() const;
const TCHAR *GetPrompt() const { return (const TCHAR *)m_sPrompt; }
TDbPromptMark::ShapeFlag GetShape() const;
AcDbObjectId GetTextStyle() const;
XPoint GetLocation() const { return m_ptLocation;}
double GetSizeX() const { return m_xSize; }
double GetSizeY() const { return m_ySize; }
double GetRotation() const { return m_nRotation; }
//void GetPolyline(AcDbPolyline &pline) const;
int CompareTo(const TDbPromptMark &src) const;
public:
TDbPromptMark();
TDbPromptMark(const XPoint &pt1, const XPoint &pt2, const TCHAR *pszMsg);
~TDbPromptMark();
virtual void CopyPropertiesFrom(AcDbEntity *pSrcEntity, unsigned gMatchFlag);
ACRX_DECLARE_MEMBERS(TDbPromptMark);
// Overriden function from AcDbEntity
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 subGetGripPoints(AcGePoint3dArray& gripPoints,
AcDbIntArray& osnapModes,
AcDbIntArray& geomIds) const;
virtual Acad::ErrorStatus subGetStretchPoints(AcGePoint3dArray & stretchPoints) const;
virtual Acad::ErrorStatus subMoveGripPointsAt(const AcDbIntArray& indices,
const AcGeVector3d& offset);
virtual Acad::ErrorStatus subMoveStretchPointsAt(const AcDbIntArray& indices,
const AcGeVector3d& offset);
virtual Acad::ErrorStatus subTransformBy(const AcGeMatrix3d& xform);
// drived from TDbEntity
virtual Acad::ErrorStatus ExplodeOrDraw2d(XExplodeDraw &dc) const;
virtual DrawType GetDrawType() const {
return TEntityBase::k2DOnly;
}
virtual void GetTips(DList<TObjInfoUnit> &) const; //取动态属性显示数据
virtual Acad::ErrorStatus GetGripText(int i, CString &cs) const;
virtual const TCHAR * GetDefaultLayer() const;
virtual int ConvertText(TConvertTextPtr ptr, void *pData=NULL);
virtual void SetSubText(long i,CString sText){SetPrompt(sText);}//ok
};
#endif