// appdatarspcetdview.cpp : implementation file // #include "stdafx.h" #include "geomative.h" #include "appdatarspcetdview.h" #include "appdatatddetaillistview.h" #include "appdatarspcetdconlistview.h" #include "AppDataCESTdGrListView.h" #include "AppMarineTdDetailListView.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CAppDataRspCETdView IMPLEMENT_DYNCREATE(CAppDataRspCETdView, CView) CAppDataRspCETdView::CAppDataRspCETdView() { m_pGrListView = NULL; } CAppDataRspCETdView::~CAppDataRspCETdView() { } BEGIN_MESSAGE_MAP(CAppDataRspCETdView, CView) //{{AFX_MSG_MAP(CAppDataRspCETdView) ON_WM_SIZE() //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CAppDataRspCETdView drawing void CAppDataRspCETdView::OnDraw(CDC* pDC) { CDocument* pDoc = GetDocument(); // TODO: add draw code here } ///////////////////////////////////////////////////////////////////////////// // CAppDataRspCETdView diagnostics #ifdef _DEBUG void CAppDataRspCETdView::AssertValid() const { CView::AssertValid(); } void CAppDataRspCETdView::Dump(CDumpContext& dc) const { CView::Dump(dc); } #endif //_DEBUG ///////////////////////////////////////////////////////////////////////////// // CAppDataRspCETdView message handlers BOOL CAppDataRspCETdView::Create(LPCTSTR lpszClassName, LPCTSTR lpszWindowName, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID, CCreateContext* pContext) { CWnd::Create(lpszClassName, lpszWindowName, dwStyle, rect, pParentWnd, nID, pContext); // TODO: Add your specialized code here and/or call the base class m_pMngFrm = (CMDIChildWnd*)GetParentFrame(); int iAR = ((CDataMngFrame*)m_pMngFrm)->GetDevARFromHandle(); if (VAL_ZERO == m_firstSplitter.GetSafeHwnd()) { m_firstSplitter.CreateStatic(this, 1, 2); if (AR_MARINE == iAR) { VERIFY(m_firstSplitter.CreateView(SPL_VIEW_ROW_0, SPL_VIEW_COL_0, RUNTIME_CLASS(CAppMarineTdDetailListView), CSize(SPL_VIEW_APP_DETAIL_WIDTH, rect.bottom-rect.top), pContext)); } else { VERIFY(m_firstSplitter.CreateView(SPL_VIEW_ROW_0, SPL_VIEW_COL_0, RUNTIME_CLASS(CAppDataTdDetailListView), CSize(SPL_VIEW_APP_DETAIL_WIDTH, rect.bottom-rect.top), pContext)); } m_pDetailListView = static_cast(m_firstSplitter.GetPane(SPL_VIEW_ROW_0, SPL_VIEW_COL_0)); ASSERT(m_pDetailListView != NULL); m_pDetailListView->OnInitialUpdate(); // VERIFY(m_firstSplitter.CreateView(SPL_VIEW_ROW_0, SPL_VIEW_COL_1, RUNTIME_CLASS(CAppDataRspCETdConListView), CSize(0, rect.bottom-rect.top), pContext)); // m_pContentListView = static_cast(m_firstSplitter.GetPane(SPL_VIEW_ROW_0, SPL_VIEW_COL_1)); // ASSERT(m_pContentListView != NULL); // m_pContentListView->OnInitialUpdate(); m_secondSplitter.CreateStatic(&m_firstSplitter, 2, 1, WS_CHILD | WS_VISIBLE, m_firstSplitter.IdFromRowCol(SPL_VIEW_ROW_0, SPL_VIEW_COL_1)); VERIFY(m_secondSplitter.CreateView(SPL_VIEW_ROW_0, SPL_VIEW_COL_0, RUNTIME_CLASS(CAppDataRspCETdConListView), CSize(0, (rect.bottom-rect.top)/2), pContext)); m_pContentListView = static_cast(m_secondSplitter.GetPane(SPL_VIEW_ROW_0, SPL_VIEW_COL_0)); ASSERT(m_pContentListView != NULL); m_pContentListView->OnInitialUpdate(); VERIFY(m_secondSplitter.CreateView(SPL_VIEW_ROW_1, SPL_VIEW_COL_0, RUNTIME_CLASS(CAppDataCESTdGrListView), CSize(0, (rect.bottom-rect.top)/2), pContext)); m_pGrListView = static_cast(m_secondSplitter.GetPane(SPL_VIEW_ROW_1, SPL_VIEW_COL_0)); ASSERT(m_pGrListView != NULL); ((CAppDataCESTdGrListView*)m_pGrListView)->SetTdAR(iAR); m_pGrListView->OnInitialUpdate(); m_secondSplitter.RecalcLayout(); m_firstSplitter.RecalcLayout(); } return TRUE; } void CAppDataRspCETdView::OnSize(UINT nType, int cx, int cy) { CView::OnSize(nType, cx, cy); // TODO: Add your message handler code here if (VAL_ZERO != m_firstSplitter.GetSafeHwnd()) { m_firstSplitter.MoveWindow((int)VAL_ZERO, (int)VAL_ZERO, cx, cy); m_firstSplitter.RecalcLayout(); m_secondSplitter.SetRowInfo(SPL_VIEW_ROW_0 , cy/2, VAL_ZERO); m_secondSplitter.RecalcLayout(); } }