text: 
  // SketcherView.cpp : implementation of the CSketcherView class
  //
  
  #include "stdafx.h"
  // SHARED_HANDLERS can be defined in an ATL project implementing preview, thumbnail
  // and search filter handlers and allows sharing of document code with that project.
  #ifndef SHARED_HANDLERS
  #include "Sketcher.h"
  #endif
  
  #include "SketcherDoc.h"
  #include "SketcherView.h"
  
  #ifdef _DEBUG
  #define new DEBUG_NEW
  #endif
  
  
  // CSketcherView
  
  IMPLEMENT_DYNCREATE(CSketcherView, CView)
  
  BEGIN_MESSAGE_MAP(CSketcherView, CView)
  	// Standard printing commands
  	ON_COMMAND(ID_FILE_PRINT, &CView::OnFilePrint)
  	ON_COMMAND(ID_FILE_PRINT_DIRECT, &CView::OnFilePrint)
  	ON_COMMAND(ID_FILE_PRINT_PREVIEW, &CSketcherView::OnFilePrintPreview)
  	ON_WM_CONTEXTMENU()
  	ON_WM_RBUTTONUP()
  END_MESSAGE_MAP()
  
  // CSketcherView construction/destruction
  
  CSketcherView::CSketcherView()
  {
  	// TODO: add construction code here
  
  }
  
  CSketcherView::~CSketcherView()
  {
  }
  
  BOOL CSketcherView::PreCreateWindow(CREATESTRUCT& cs)
  {
  	// TODO: Modify the Window class or styles here by modifying
  	//  the CREATESTRUCT cs
  
  	return CView::PreCreateWindow(cs);
  }
  
  // CSketcherView drawing
  
  void CSketcherView::OnDraw(CDC* /*pDC*/)
  {
  	CSketcherDoc* pDoc = GetDocument();
  	ASSERT_VALID(pDoc);
  	if (!pDoc)
  		return;
  
  	// TODO: add draw code for native data here
  }
  
  
  // CSketcherView printing
  
  
  void CSketcherView::OnFilePrintPreview()
  {
  #ifndef SHARED_HANDLERS
  	AFXPrintPreview(this);
  #endif
  }
  
  BOOL CSketcherView::OnPreparePrinting(CPrintInfo* pInfo)
  {
  	// default preparation
  	return DoPreparePrinting(pInfo);
  }
  
  void CSketcherView::OnBeginPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
  {
  	// TODO: add extra initialization before printing
  }
  
  void CSketcherView::OnEndPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
  {
  	// TODO: add cleanup after printing
  }
  
  void CSketcherView::OnRButtonUp(UINT /* nFlags */, CPoint point)
  {
  	ClientToScreen(&point);
  	OnContextMenu(this, point);
  }
  
  void CSketcherView::OnContextMenu(CWnd* /* pWnd */, CPoint point)
  {
  #ifndef SHARED_HANDLERS
  	theApp.GetContextMenuManager()->ShowPopupMenu(IDR_POPUP_EDIT, point.x, point.y, this, TRUE);
  #endif
  }
  
  
  // CSketcherView diagnostics
  
  #ifdef _DEBUG
  void CSketcherView::AssertValid() const
  {
  	CView::AssertValid();
  }
  
  void CSketcherView::Dump(CDumpContext& dc) const
  {
  	CView::Dump(dc);
  }
  
  CSketcherDoc* CSketcherView::GetDocument() const // non-debug version is inline
  {
  	ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CSketcherDoc)));
  	return (CSketcherDoc*)m_pDocument;
  }
  #endif //_DEBUG
  
  
  // CSketcherView message handlers
  