#if !defined(_SCISSORSSTAIRDLG_H_) #define _SCISSORSSTAIRDLG_H_ #if _MSC_VER >1000 #pragma once #endif //-----------------------------------------------------剪刀楼梯------------------------------------------- #include "basestairdlg.h" #include "resource.h" #include "dbscissorsstair.h" #include "WGroupCtrl.h" class CScissorsStairDlg:public CBaseStairDlg { public: //变量 DECLARE_DYNAMIC(CScissorsStairDlg) enum {IDD=IDD_SCISSORSSTAIRDLG,}; //休息平台 static int m_iSlab;//平台类型 static CString m_strSlabWidth;//平台宽度 //扶手 static CString m_strRailHeight;//扶手高度 static CString m_strRailWidth;//扶手宽度 static CString m_strRailDistToSide;//扶手距边 static CString m_strRailOutDis;//扶手伸出距离(偏移) static CString m_strRailOutDisMid;//转角伸出距离 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_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 stepNum1; CSpinButtonCtrl stepNum2; CSpinButtonCtrl m_ctrlRectStepNumSpin;//剖切步数 CComboBox m_ctrlStairHeight;//楼梯高度 //2D或3D的显示模式 int m_iViewCtrl; //梯井宽 CString m_strStairWell;//梯井宽 //保留数据 static int m_isaveStepNum; static CString m_strsaveStepHeight; static CString m_strsaveStairHeight; //以下用于备份和判断是否编辑状态的参数 BOOL m_bEdit;//是否处于编辑状态 TDbScissorsStair *m_pBakObj;//备份状态 public: //接口 CScissorsStairDlg(CWnd*pParent=NULL); CScissorsStairDlg(UINT idd,CWnd*pParent=NULL); ~CScissorsStairDlg(); 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 OnChangeStepNum1(); void OnChangeStepNum2(); void OnChangeSectStepNum();//剖切步数 void OnChangeRailHeight(); void OnChangeRailWidth(); void OnChangeRailDistToSide(); void OnChangeRailOutDist();//扶手伸出距离 void OnChangeRailOutDistMid();//转角伸出距离 void OnChangeSlabWidth();//休息平台宽度 void OnChangeSpaceWidth();//梯间宽 //梯段按钮的处理 void OnClickStairWidth(); void OnClickSpaceWidth(); void OnSelChangeStairHeight(); //处理失去焦点的事件; void OnKFStairHeight(); void OnStepHeightKillFocus();//踏步高 void OnKFStairWidth(); void OnKFRailHeight(); void OnKFRailWidth(); void OnKFStepWidth(); void OnKFStepNum1(); void OnKFStepNum2(); void OnKFRailDistToSide(); void OnKFSlabWidth(); void OnKFStepNum(); void OnKFSpaceWidth(); void OnKFRailOutDist(); void OnKFRailOutDistMid(); void OnKFSectStepNum(); afx_msg void OnClose(); DECLARE_MESSAGE_MAP() }; #endif