#if !defined(_DOUBLEMULSTAIRDLG_H_) #define _DOUBLEMULSTAIRDLG_H_ #if _MSC_VER >1000 #pragma once #endif //---------------------------------------------------双分三跑楼梯----------------------------------- #include "basestairdlg.h" #include "resource.h" #include "wgroupctrl.h" #include "dbdoublemulstair.h" class CDoubleMulStairDlg :public CBaseStairDlg { public: DECLARE_DYNAMIC(CDoubleMulStairDlg) enum {IDD=IDD_DOUBLEMULSTAIR}; //休息平台 int m_iSlab;//平台类型 static CString m_strSlabWidth;//边平台宽度 static CString m_strSlabWidthM;//中平台宽度 static CString m_strSlabLength;//边平台长度 static CString m_strSlabLengthM;//中平台长度 //扶手 static CString m_strRailHeight;//扶手高度 static CString m_strRailWidth;//扶手宽度 static CString m_strRailDistToSide;//扶手距边 static CString m_strRailOutDis;//扶手伸出距离(偏移) static CString m_strSideRailDist;//边扶手伸出 static BOOL m_bAutoRail;//自动生成外侧栏杆 static BOOL m_bHasOutRail;//有外侧扶手 static BOOL m_bInsideRail;//内侧栏杆 static BOOL m_bHasInsideHandRail;//有内侧扶手 //踏步取齐 static int m_iStepAlign;//取齐方式 //楼侧设置 static int m_iSelectFloor;//选择楼层0-首层,1-中层,2-顶层 //踏步参数 static int m_iStepNum1;//一跑 static int m_iStepNum2;//二跑 static int m_iStepNum3;//三跑 static int m_iSectStepNum;//剖切 static CString m_strStepWidth;//踏步宽度 //上楼位置 static BOOL m_bUpPostion;//上楼位置 static BOOL m_bHasArrow;//标注 //楼梯参数 static CString m_strSpaceWidth;//梯间总宽 static CString m_strSideStairWidth;//边梯宽度 static CString m_strMidStairWidth;//中梯宽度 static CString m_strStairWidth2;//第二梯段宽 //左右边梁 static BOOL m_bLeftBeam; static BOOL m_bRightBeam; //组合窗 BOOL m_bGroupStatus; WGroupCtrl m_group1; //保护成员 CSpinButtonCtrl stepNum1; CSpinButtonCtrl stepNum2; CSpinButtonCtrl stepNum3; CSpinButtonCtrl m_ctrlSectStepNum; CComboBox m_ctrlStairHeight;//楼梯高度 //2D或3D的显示模式 int m_iViewCtrl; //保留结果 static int m_isaveStepNum; static CString m_strsaveStepHeight; static CString m_strsaveStairHeight; //以下用于备份和判断是否编辑状态的参数 BOOL m_bEdit;//是否处于编辑状态 TDbDoubleMulStair *m_pBakObj;//备份状态 public: CDoubleMulStairDlg(CWnd*pParent=NULL); CDoubleMulStairDlg(UINT idd,CWnd*pParent=NULL); ~CDoubleMulStairDlg(); 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 OnChangeSpaceWidth(); void OnChangeStepHeight(); void OnChangeStepWidth(); void OnChangeStepNum();//踏步总数 void OnChangeStepNum1(); void OnChangeStepNum2(); void OnChangeStepNum3();//三跑 void OnChangeRailHeight(); void OnChangeRailWidth(); void OnChangeRailDistToSide(); void OnChangeRailOutDist();//中扶手伸出距离 void OnChangeSideRailDist();//边扶手伸出距离 void OnChangeSideStairWidth(); void OnChangeMidStairWidth(); void OnChangeSlabWidth();//休息平台宽度 void OnChangeSectStepNum();//剖切步数 // 休息平台的处理 void OnChangeSlabLength();//边休息平台长 void OnChangeSlabWidthM();//中休息平台宽 void OnChangeSlabLengthM();//中休息平台长 void OnENKillFocus();//失去交点 void OnChangeStairWidth2();//第二梯段宽 //梯段按钮的处理 void OnClickStairWidth(); void OnClickSideStairWidth(); void OnClickMidStairWidth(); void OnClickStairWidth2();//第二梯段宽 // void OnSelChangeStairHeight();//楼梯高度 void OnKFStairHeight(); void OnStepHeightKillFocus();//踏步高 void OnKFStepNum(); void OnKFSpaceWidth(); void OnKFRailHeight(); void OnKFRailWidth(); void OnKFSideStairWidth(); void OnKFMidStairWidth(); void OnKFStepWidth(); void OnKFStepNum1(); void OnKFStepNum2(); void OnKFStepNum3();//三跑 void OnKFRailDistToSide(); void OnKFSlabWidth(); void OnKFSectStepNum();//剖切 void OnKFRailOutDist();//扶手伸出 void OnKFSideRailDist();//边扶手伸出 void OnKFSlabLength(); void OnKFSlabWidthM(); void OnKFSlabLengthM(); void OnKFStairWidth2();//二跑梯段宽 afx_msg void OnClose(); DECLARE_MESSAGE_MAP() }; #endif