#ifndef _TRIANGLESTAIRDLG_H_ #define _TRIANGLESTAIRDLG_H_ #if _MSC_VER >1000 #pragma once #endif //----------------------------------------三角楼梯--------------------------------------------- #include "basestairdlg.h" #include "resource.h" #include "dbtrianglestair.h" #include "WGroupCtrl.h" class CTriangleStairDlg:public CBaseStairDlg { public: //变量 DECLARE_DYNAMIC(CTriangleStairDlg) enum {IDD=IDD_TRIANGLESTAIRDLG,}; //休息平台 static int m_iSlab;//平台类型 static BOOL m_bShowSlab;//是否显示休息平太 static CString m_strSlabThick;//平台厚度 static CString m_strSlabWidth;//平台宽度 //扶手 static CString m_strRailHeight;//扶手高度 static CString m_strRailWidth;//扶手宽度 static CString m_strRailDistToSide;//扶手距边 static CString m_strRailOutDis;//扶手伸出距离(偏移) static BOOL m_bAutoRail;//自动生成扶手 static BOOL m_bHasOutRail;//有外侧扶手 static BOOL m_bInsideRail;//内侧栏杆 static BOOL m_bOpenRail;//扶手端头是否开口 static BOOL m_bConnectRail;//扶手是否连接 static BOOL m_bHasInsideHandRail;//有内侧扶手 //楼侧设置 static int m_iSelectFloor;//选择楼层0-首层,1-中层,2-顶层 //踏步参数 static int m_iSectStepNum;//剖切步数 static CString m_strStepWidth;//踏步宽度 //上楼位置 static BOOL m_bUpPostion;//上楼位置 BOOL m_bHasArrow;//标注上楼方向 //楼梯参数 static CString m_strStairWidth;//楼梯总宽 static CString m_strSpaceWidth;//梯间宽 //左右边梁 static BOOL m_bLeftBeam; static BOOL m_bRightBeam; //组合窗 BOOL m_bGroupStatus; WGroupCtrl m_group1; //保护成员 CSpinButtonCtrl m_ctrlRectStepNumSpin;//剖切步数 CComboBox m_ctrlStairHeight;//楼梯高度 CSpinButtonCtrl m_ctrlStepNum1; //2D或3D的显示模式 int m_iViewCtrl; //单跑布数 static int m_iStepNum1; //保留数据 static int m_isaveStepNum; static CString m_strsaveStepHeight; static CString m_strsaveStairHeight; //以下用于备份和判断是否编辑状态的参数 BOOL m_bEdit;//是否处于编辑状态 TDbTriangleStair *m_pBakObj;//备份状态 public: //接口 CTriangleStairDlg(CWnd*pParent=NULL); CTriangleStairDlg(UINT idd,CWnd*pParent=NULL); ~CTriangleStairDlg(); virtual BOOL OnInitDialog(); virtual void DoDataExchange(CDataExchange* pDX); virtual void Obj2Dlg(const AcDbEntity *pStep);//fill the dialog's childcontrols with the attributes of obj virtual void Dlg2Obj(AcDbEntity *pStep);// in opposition to the up virtual AcDbEntity *NewObject(); virtual bool UpdateEdit(UINT ctrlID,bool bReportError=false); virtual void UpdateSel(); protected: //事件函数 void OnChangeStairHeight(); void OnChangeStairWidth(); void OnChangeStepHeight(); void OnChangeStepWidth(); void OnChangeStepNum();//踏步总数 void OnChangeSectStepNum();//剖切步数 void OnChangeRailHeight(); void OnChangeRailWidth(); void OnChangeRailDistToSide(); void OnChangeRailOutDist();//扶手伸出距离 void OnChangeSlabWidth();//休息平台宽度 void OnChangeSpaceWidth();//梯间宽 //梯段按钮的处理 void OnClickStairWidth(); void OnClickSpaceWidth(); //处理失去焦点的事件 void OnKillFocus();//包括踏步高度,总数和宽度 void OnStepNumKillFocus();//踏步数 void OnSelChangeStairHeight(); void OnChangeSlabThick();//平台厚度的改变 void OnKFStairHeight(); void OnStepHeightKillFocus();//踏步高 void OnCheckShowSlab(); void OnKFStairWidth(); void OnKFRailHeight(); void OnKFRailWidth(); void OnKFStepWidth(); void OnKFRailDistToSide(); void OnKFSlabWidth(); void OnKFSpaceWidth(); void OnKFRailOutDist(); void OnKFSectStepNum(); void OnKFSlabThick(); afx_msg void OnClose(); DECLARE_MESSAGE_MAP() }; #endif