#ifndef _dmext_h
#define _dmext_h

#include "dm.h"

// Lg 2004-3-8 
/*_declspec(dllimport) CTxtStyleList g_TxtStyle;
_declspec(dllimport) CTxtStyle g_CurTxtPara;	//当前文字标注参数

//_declspec(dllimport) DIMSTYLE DimStyle;// Lg 01-7-20
_declspec(dllimport) CDimStyle DimStyle;// Lg 2004-3-8 风格调整为类实现
_declspec(dllimport) CDimStyleList g_DimStyle;
*/

//标注编辑时拾取的节点
//_declspec(dllimport) CBase* EditPickNode;// Lg 2004-3-11 move to baseext.h
_declspec(dllimport) CTypedPtrList<CPtrList,CAttribute *>	*DmAttributeTop;
_declspec(dllimport) CSystemInfo    sysInfo;

_declspec(dllimport) void sysInfoSerialize(CArchive &ar);
_declspec(dllimport) void attListSerialize(CTypedPtrList<CPtrList,CAttribute*> &attList,CArchive &ar);
_declspec(dllimport) void attListFree(CTypedPtrList<CPtrList,CAttribute*> &attList);

//根据任意给定两角点和视口区域计算逻辑窗口大小
_declspec(dllimport) void dmCalLogicWin(double xmin,double ymin,double xmax,double ymax,
     int cx,int cy,BOX *result);

//设置用户显示窗口和视口
//x, y 为视口的角点坐标, 通常取为 0,0
//width  为视口宽度
//height 为视口高度
_declspec(dllimport) BOX  dmSetUsrWin(double winLeft,double winRight,double winBottom,double winTop,
     int x=0,int y=0,int width=0,int height=0);

//恢复系统窗口
_declspec(dllimport) void dmRestoreUiWin();

//逻辑坐标转化为用户坐标
_declspec(dllimport) XYZ dmPhyToWin(int x,int y);

//用户坐标转化为逻辑坐标
_declspec(dllimport) POINT dmWinToPhy(double x,double y,double z);

//根据屏幕拾取阀值(screenPickValve)来计算物理拾取阀值(PickValve)
_declspec(dllimport) void dmCalPickValve();

//打开异或方式
_declspec(dllimport) void SysEnableXOR();

//关闭异或方式
_declspec(dllimport) void SysDisableXOR();

_declspec(dllimport) BOOL SetupDlgPrevPixelFormat(HDC  hdc);

//初始化用户窗口预显图形
//pWnd	指向此 CPaintDC 对象所属的 CWnd 对象, 通常用 this
//如果用 CDC 则 hWnd 传 NULL
_declspec(dllimport) BOOL SysInitDlgPrev(HWND hWnd);

//结束用户窗口预显图形
//如果用 CDC 则 hWnd 传 NULL
_declspec(dllimport) void SysDestroyDlgPrev(HWND hWnd,BOOL IsEndDlg=TRUE);

//设置用户预显窗口和视口
//m_prevRect,  用户预显窗口的客户区大小
//dc	设备文本
//pWnd	指向此 CPaintDC 对象所属的 CWnd 对象, 通常用 this
//如果用 CDC 则 pWnd 传 NULL
_declspec(dllimport) BOX  SysSetDlgPrevWin(double winLeft,double winRight,double winBottom,double winTop,
      CRect &m_prevRect,CPaintDC *dc,CWnd *pWnd);

_declspec(dllimport) void SysRestoreCurDlgView();

_declspec(dllimport) void SysRestoreCurEbView();

//系统重画
_declspec(dllimport) void SysRedraw();


//得到选择集的包容矩形
_declspec(dllimport) int SysGetSelectBox(CTypedPtrList<CPtrList,CBase*> &select,BOX *box);

//网络版文件加密码
_declspec(dllimport) CString g_strNetCrypPas;  //.....Zwz...2003-9-27



#endif



//End basext.h Define
