116 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			116 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			C++
		
	
	
		
			Executable File
		
	
	
	
	
// 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());
 | 
						|
}
 |