202 lines
5.3 KiB
C++
202 lines
5.3 KiB
C++
#if !defined(AFX_OPENINGVALIDATEDLG_H__1F1D8167_7CC9_46D3_BAD3_0FFE2CFC8680__INCLUDED_)
|
|
#define AFX_OPENINGVALIDATEDLG_H__1F1D8167_7CC9_46D3_BAD3_0FFE2CFC8680__INCLUDED_
|
|
|
|
#if _MSC_VER > 1000
|
|
#pragma once
|
|
#endif // _MSC_VER > 1000
|
|
|
|
// OpeningValidateDlg.h : header file
|
|
//
|
|
#include "adui.h"
|
|
#include "acui.h"
|
|
//#include "TrueDbGrid50.h"
|
|
#include "resource.h"
|
|
class TOpeningValidateTable;
|
|
|
|
|
|
// modify by xlc on 090902 消除tg5lib影响
|
|
// 已经重新做了“门窗检查对话框”,使用WDGrid
|
|
// #if ADS<18
|
|
#if 0
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// COpeningValidateDlg dialog
|
|
|
|
class COpeningValidateDlg : public CAcUiDialog
|
|
{
|
|
// Construction
|
|
public:
|
|
COpeningValidateDlg(TOpeningValidateTable *pSheet, CWnd* pParent = NULL); // standard constructor
|
|
|
|
// Dialog Data
|
|
//{{AFX_DATA(COpeningValidateDlg)
|
|
enum { IDD = IDD_OPVALIDATE_TALBE };
|
|
CTrueDBGrid50_TDBGrid m_grid;
|
|
//}}AFX_DATA
|
|
|
|
CImageDC m_slide2d, m_slide3d;
|
|
TOpeningValidateTable *m_pSheet;
|
|
BOOL m_bReadEnable;
|
|
long m_nCurIndex; //当前行
|
|
BOOL m_bInit;
|
|
int m_nWorkMode; //0--直接使用, 1--查表调用
|
|
TOpeningData::OpeningKind m_opKind; //配合模式1使用
|
|
|
|
CSize sizeDlg;
|
|
UINT m_nOldSizeX, m_nOldSizeY;
|
|
public:
|
|
void SetWorkMode(int nMode, TOpeningData::OpeningKind opKind) {
|
|
m_nWorkMode=nMode;
|
|
m_opKind=opKind;
|
|
}
|
|
AcDbObjectId GetFinalSelect();
|
|
|
|
// Overrides
|
|
// ClassWizard generated virtual function overrides
|
|
//{{AFX_VIRTUAL(COpeningValidateDlg)
|
|
public:
|
|
virtual BOOL PreTranslateMessage(MSG* pMsg);
|
|
protected:
|
|
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
|
//}}AFX_VIRTUAL
|
|
|
|
// Implementation
|
|
protected:
|
|
BOOL IsBOF() const;
|
|
BOOL IsEOF() const;
|
|
void MoveNext() {
|
|
m_nCurIndex ++;
|
|
}
|
|
BOOL MoveTo(long bookmark);
|
|
void Move(long offset);
|
|
void ConfigGrid();
|
|
void ReadData(CTrueDBGrid50_RowBuffer &RowBuffer, VARIANT FAR* StartLocation, long offset, long FAR* ApproximatePosition);
|
|
void ResetSize(long nIncX, long nIncY);
|
|
void ShowSlide(UINT id, CImageDC& imgdc, const TCHAR* sldName);
|
|
void ShowSlide();
|
|
|
|
// Generated message map functions
|
|
//{{AFX_MSG(COpeningValidateDlg)
|
|
virtual BOOL OnInitDialog();
|
|
afx_msg void OnPaint();
|
|
afx_msg void OnUnboundReadDataExGrid(LPDISPATCH RowBuf, VARIANT FAR* StartLocation, long offset, long FAR* ApproximatePosition);
|
|
afx_msg void OnKeyPressgrid(short FAR* KeyAscii);
|
|
afx_msg void OnRowColChangeGrid(VARIANT FAR* LastRow, short LastCol);
|
|
afx_msg void OnViewobj();
|
|
virtual void OnOK();
|
|
afx_msg void OnSize(UINT nType, int cx, int cy);
|
|
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
|
|
DECLARE_EVENTSINK_MAP()
|
|
//}}AFX_MSG
|
|
DECLARE_MESSAGE_MAP()
|
|
};
|
|
#endif
|
|
|
|
|
|
class COpeningValidateWDGrid : public WDGrid
|
|
{
|
|
public:
|
|
COpeningValidateWDGrid() {
|
|
SetNoAppendButton();SetNoDefaultMenu();m_nCurIndex=0;}
|
|
|
|
BOOL IsRowValid()
|
|
{
|
|
if (m_nCurIndex>=0&&m_nCurIndex<GetRowNum())
|
|
{
|
|
return TRUE;
|
|
}
|
|
return FALSE;
|
|
}
|
|
int m_nCurIndex;
|
|
|
|
protected:
|
|
virtual bool OnBeforeClip(){return false;}
|
|
virtual bool OnModified(WDGridCell&cell,CString &text){return false;}
|
|
virtual void OnCurChanged()
|
|
{
|
|
WDGrid::OnCurChanged();
|
|
int nCurIndex = GetCur();
|
|
if (IsRowValid())
|
|
{
|
|
m_nCurIndex = nCurIndex;
|
|
GetParent()->SendMessage(WM_LBUTTONDOWN,IDC_GRID);
|
|
}
|
|
}
|
|
virtual bool OnBeforeEdit(WDGridCell&cell,bool &bModified)
|
|
{
|
|
m_nCurIndex = cell.GetRowIndex();
|
|
GetParent()->SendMessage(WM_LBUTTONDOWN,IDC_GRID);
|
|
return TRUE;
|
|
}
|
|
};
|
|
|
|
// COpeningValidateNewDlg dialog
|
|
class COpeningValidateNewDlg : public CAcUiDialog
|
|
{
|
|
// Construction
|
|
public:
|
|
COpeningValidateNewDlg(TOpeningValidateTable *pSheet, CWnd* pParent = NULL); // standard constructor
|
|
|
|
// Dialog Data
|
|
//{{AFX_DATA(COpeningValidateNewDlg)
|
|
enum { IDD = IDD_DIALOG_OPENING_TABLE };
|
|
//}}AFX_DATA
|
|
|
|
COpeningValidateWDGrid m_grid;
|
|
CImageDC m_slide2d, m_slide3d;
|
|
TOpeningValidateTable *m_pSheet;
|
|
|
|
BOOL m_bInit;
|
|
BOOL m_bCreate;
|
|
int m_nWorkMode; //0--直接使用, 1--查表调用
|
|
TOpeningData::OpeningKind m_opKind; //配合模式1使用
|
|
|
|
CSize sizeDlg;
|
|
UINT m_nOldSizeX, m_nOldSizeY;
|
|
|
|
static BOOL m_bShowOnlyCurDwg; // sg add 110228,是否限制,只显示本DWG门窗
|
|
|
|
public:
|
|
void SetWorkMode(int nMode, TOpeningData::OpeningKind opKind) {
|
|
m_nWorkMode=nMode;
|
|
m_opKind=opKind;
|
|
}
|
|
AcDbObjectId GetFinalSelect();
|
|
|
|
// Overrides
|
|
// ClassWizard generated virtual function overrides
|
|
//{{AFX_VIRTUAL(COpeningValidateNewDlg)
|
|
protected:
|
|
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
|
//}}AFX_VIRTUAL
|
|
|
|
// Implementation
|
|
protected:
|
|
void ResetSize(long nIncX, long nIncY);
|
|
void ShowSlide(UINT id, CImageDC& imgdc, const TCHAR* sldName);
|
|
void ShowSlide();
|
|
void InitGrid();
|
|
|
|
// Generated message map functions
|
|
//{{AFX_MSG(COpeningValidateNewDlg)
|
|
virtual BOOL OnInitDialog();
|
|
afx_msg void OnPaint();
|
|
afx_msg void OnViewobj();
|
|
virtual void OnOK();
|
|
afx_msg void OnSize(UINT nType, int cx, int cy);
|
|
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
|
|
|
|
//add by xlc on 110308
|
|
afx_msg void OnCheckCurDwg();
|
|
|
|
public:
|
|
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
|
|
//}}AFX_MSG
|
|
protected:
|
|
DECLARE_MESSAGE_MAP()
|
|
};
|
|
|
|
//{{AFX_INSERT_LOCATION}}
|
|
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
|
|
|
|
#endif // !defined(AFX_OPENINGVALIDATEDLG_H__1F1D8167_7CC9_46D3_BAD3_0FFE2CFC8680__INCLUDED_)
|