// FrontEndView.cpp : implementation of the CFrontEndView class // #include "StdAfx.h" #include "FrontEnd.h" #include "FrontDoc.h" #include "FrontVw.h" #include "Tracing.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CFrontEndView IMPLEMENT_DYNCREATE(CFrontEndView, CTreeView) BEGIN_MESSAGE_MAP(CFrontEndView, CTreeView) //{{AFX_MSG_MAP(CFrontEndView) ON_UPDATE_COMMAND_UI(ID_FILE_SAVE_AS, OnUpdateFileSaveAs) ON_COMMAND(ID_EDIT_CLEAR_ALL, OnEditClearAll) ON_UPDATE_COMMAND_UI(ID_EDIT_CLEAR_ALL, OnUpdateEditClearAll) ON_COMMAND(ID_VIEW_TRACE, OnViewTrace) ON_UPDATE_COMMAND_UI(ID_VIEW_TRACE, OnUpdateViewTrace) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CFrontEndView construction/destruction CFrontEndView::CFrontEndView() { // TODO: add construction code here } CFrontEndView::~CFrontEndView() { } BOOL CFrontEndView::PreCreateWindow(CREATESTRUCT& cs) { // TODO: Modify the Window class or styles here by modifying // the CREATESTRUCT cs return CTreeView::PreCreateWindow(cs); } ///////////////////////////////////////////////////////////////////////////// // CFrontEndView drawing void CFrontEndView::OnDraw(CDC* pDC) { CFrontEndDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); // TODO: add draw code for native data here } ///////////////////////////////////////////////////////////////////////////// // CFrontEndView diagnostics #ifdef _DEBUG void CFrontEndView::AssertValid() const { CTreeView::AssertValid(); } void CFrontEndView::Dump(CDumpContext& dc) const { CTreeView::Dump(dc); } CFrontEndDoc* CFrontEndView::GetDocument() // non-debug version is inline { ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CFrontEndDoc))); return (CFrontEndDoc*)m_pDocument; } #endif //_DEBUG ///////////////////////////////////////////////////////////////////////////// // CFrontEndView message handlers void CFrontEndView::OnUpdateFileSaveAs(CCmdUI* pCmdUI) { CTreeCtrl& pTreeCtrl = GetTreeCtrl(); pCmdUI->Enable(pTreeCtrl.GetCount() > 0); } void CFrontEndView::OnEditClearAll() { CWaitCursor HourGlass; CTreeCtrl& pTreeCtrl = GetTreeCtrl(); pTreeCtrl.DeleteAllItems(); Invalidate(); } void CFrontEndView::OnUpdateEditClearAll(CCmdUI* pCmdUI) { pCmdUI->Enable(!TracingEnabled()); } void CFrontEndView::OnViewTrace() { EnableTracing(!TracingEnabled()); } void CFrontEndView::OnUpdateViewTrace(CCmdUI* pCmdUI) { pCmdUI->SetCheck(TracingEnabled()); }