#if !defined(AFX_INDEXDIMDLG_H__E7579A44_48D5_4078_AC00_0945ED1AD785__INCLUDED_) #define AFX_INDEXDIMDLG_H__E7579A44_48D5_4078_AC00_0945ED1AD785__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 // IndexDimDlg.h : header file // ///////////////////////////////////////////////////////////////////////////// // CIndexDimDlg dialog #include "Resource.h" #include "BaseTextDlg.h" class CIndexDimDlg : public CBaseTextDlg { // Construction public: DECLARE_DYNAMIC(CIndexDimDlg) CIndexDimDlg(BOOL bEdit, CWnd* pParent = NULL); // standard constructor CIndexDimDlg(BOOL bEdit, UINT Id, CWnd* pParent = NULL); virtual void Dlg2Obj(TDbSymbIndexPointer *pText); virtual void Obj2Dlg(TDbSymbIndexPointer *pText); // Dialog Data //{{AFX_DATA(CIndexDimDlg) enum { IDD = IDD_INDEXDIM_TEXT }; CComboBox m_comboInputText; CComboBox m_comboInputText1; CString m_sFixAngle; BOOL m_bFixAngle; //}}AFX_DATA static CString m_strInputUp; static CString m_strInputDown; static CString m_strIndex; static CString m_strDrawing; XStringList m_lstHistory, m_lstHistory1; static int m_iIndexType; BOOL m_bEditObj; static BOOL m_bContinue; // Add by lcf on 2005-06-29 static BOOL m_bAddIndex; // sg add 090122,是否添加索引范围 static int m_nTextAlign; // sg add 090402,增加文字相对于基线的对齐方式 static BOOL m_bDimOnExtent; // lgh add 101216, 是否在延长线上标注文字 static BOOL m_bMoreCut; // lgh add 101216,是否绘制多段剖切线 static BOOL m_bAddTurn; // lgh add 101216, 是否添加一个转折点 static CString m_strDimStyle; // lgh add 101216, 标注文字样式。 CComboBox m_cmbDimStyle; // lgh add 101215, 标注文字样式 void AddToRecent(); void UpdateVisible(BOOL bVisible); void SetSourceExtentVisible(BOOL bVisible); // sg add 090415,设置“添加索引范围”是否可见 // lgh add 101220,获取文字的属性,用于计算延长线的长度。 BOOL GetExtendsProp(CString &strUp, CString &strDown, double &dHei, AcDbObjectId &textStyle); // 剖切索引绘制时的界面显示 void SetSectRunView(BOOL bVisible); // 分别获取上不标注和下部标注的长度(绝对长度) double GetUpDimLen(); double GetDownDimLen(); // Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CIndexDimDlg) protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support //}}AFX_VIRTUAL // Implementation protected: void LoadHisText(); virtual CWnd* GetCurWnd(); virtual void UpdateInputText(); void LoadDimTextStyle(); // Generated message map functions //{{AFX_MSG(CIndexDimDlg) virtual BOOL OnInitDialog(); virtual void OnOK(); afx_msg void OnCheckAngle(); void ShowFixAngle(); // [11/12/2007 nsh] //}}AFX_MSG DECLARE_MESSAGE_MAP() }; class CEditIndexDimDlg : public CIndexDimDlg { // Construction public: CEditIndexDimDlg(CWnd* pParent = NULL); // standard constructor // Dialog Data //{{AFX_DATA(CEditIndexDimDlg) enum { IDD = IDD_EDIT_INDEXDIM }; // NOTE: the ClassWizard will add data members here //}}AFX_DATA TDbSymbIndexPointer *m_pTextAttached; // 设置关联的TDbSymbIndexPointer void AttachObject(TDbSymbIndexPointer *pText); // 调整延长线属性 void AdjustExtentProp(); // Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CEditIndexDimDlg) protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support //}}AFX_VIRTUAL // Implementation protected: // Generated message map functions //{{AFX_MSG(CEditIndexDimDlg) // NOTE: the ClassWizard will add member functions here //}}AFX_MSG virtual BOOL OnInitDialog(); afx_msg void OnAddCut(); DECLARE_MESSAGE_MAP() }; double CalcTextLen(const CString &sText, const AcDbObjectId &styleId, double dHei, int iWider); double CalcMTextLen(const CString &sText, const AcDbObjectId &styleId, double dHei, double dWid, int iWider); //{{AFX_INSERT_LOCATION}} // Microsoft Visual C++ will insert additional declarations immediately before the previous line. #endif // !defined(AFX_INDEXDIMDLG_H__E7579A44_48D5_4078_AC00_0945ED1AD785__INCLUDED_)