#include "StdAfx.h" #include "resource.h" #include "MainFrame.h" #include "ChildFrame.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif #define IDC_INPLACE_MYBAR 10002 IMPLEMENT_DYNCREATE(CMainFrame, CFrameWnd) BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd) //{{AFX_MSG_MAP(CMainFrame) ON_WM_CREATE() //}}AFX_MSG_MAP END_MESSAGE_MAP() CMainFrame::CMainFrame() { } CMainFrame::~CMainFrame() { } int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) { if (CFrameWnd::OnCreate(lpCreateStruct) == -1) return -1; if (!m_wndMyDialogBar.Create(_T("文件列表"), this, CSize(150,260),TRUE,123))//IDC_INPLACE_MYBAR { TRACE0("Failed to create mybar\n"); return -1; } // AfxSetResourceHandle (acedGetAcadResourceInstance ()); m_wndMyDialogBar.SetBarStyle(m_wndMyDialogBar.GetBarStyle() | CBRS_TOOLTIPS | CBRS_FLYBY |CBRS_SIZE_DYNAMIC); //CBRS_SIZE_DYNAMIC m_wndMyDialogBar.EnableDocking(CBRS_ALIGN_ANY); EnableDocking(CBRS_ALIGN_ANY); DockControlBar(&m_wndMyDialogBar, AFX_IDW_DOCKBAR_LEFT); return 0; } BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT /*lpcs*/, CCreateContext* pContext) { if (!m_wndSplitter.CreateStatic(this, 1, 1)) return FALSE; if (!m_wndSplitter.CreateView(0, 0, RUNTIME_CLASS(CChildFrame), CSize(180, 100), pContext)) { m_wndSplitter.DestroyWindow(); return FALSE; } return TRUE; } BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs) { if( !CFrameWnd::PreCreateWindow(cs) ) return FALSE; cs.dwExStyle |= WS_EX_CLIENTEDGE; return TRUE; } #ifdef _DEBUG void CMainFrame::AssertValid() const { CFrameWnd::AssertValid(); } void CMainFrame::Dump(CDumpContext& dc) const { CFrameWnd::Dump(dc); } #endif void CMainFrame::ShowListDock() { if(m_wndMyDialogBar.IsVisible()) m_wndMyDialogBar.ShowWindow(SW_HIDE); else { m_wndMyDialogBar.ShowWindow(SW_SHOW); DockControlBar(&m_wndMyDialogBar, AFX_IDW_DOCKBAR_LEFT); } UpdateData(); this->RecalcLayout(); } BOOL CMainFrame::IsShowListDock() { if(m_wndMyDialogBar.GetSafeHwnd() == NULL) return TRUE; if(m_wndMyDialogBar.IsVisible()) return TRUE; return FALSE; } void CMainFrame::ShowPreViewCtrl() { ((CChildFrame*)m_wndSplitter.GetPane(0,0))->ShowPreViewCtrl(); } void CMainFrame::hidePreViewCtrlAndExplainCtrl() { ((CChildFrame*)m_wndSplitter.GetPane(0,0))->hidePreViewCtrlAndExplainCtrl(); } BOOL CMainFrame::IsShowPreViewCtrl() { return ((CChildFrame*)m_wndSplitter.GetPane(0,0))->IsShowPreViewCtrl(); } void CMainFrame::ShowExplainCtrl() { ((CChildFrame*)m_wndSplitter.GetPane(0,0))->ShowExplainCtrl(); } BOOL CMainFrame::IsShowExplainCtrl() { return ((CChildFrame*)m_wndSplitter.GetPane(0,0))->IsShowExplainCtrl(); }