The DejaVU Framework -- hush 3.1

include: basic-program-solutions-15-Ch15-Soln-3-SketcherDoc.h /cygdrive/d/www/media


- [up] [top] - index make include source logic grammar scripts html configure mx slides talks scenes reports projects
<body bgcolor="#FFFFFF" text="#000000">

// SketcherDoc.h : interface of the CSketcherDoc class
//

#pragma once

include<Elements.h>
<h4 align=right text=red> CSketcherDoc</h4><hr>
  class CSketcherDoc : public CDocument
{
protected: // create from serialization only
        CSketcherDoc();
        DECLARE_DYNCREATE(CSketcherDoc)

// Attributes
public:

// Operations
public:
   void DeleteElement(CElement* pElement); // Delete an element
   unsigned int GetElementType()           // Get the element type
         { return m_Element; }
   COLORREF GetElementColor()              // Get the element color
         { return m_Color; }
   void AddElement(CElement* pElement)     // Add an element to the list
      { m_ElementList.AddTail(pElement); }
   POSITION GetListHeadPosition()          // return list head POSITION value
      { return m_ElementList.GetHeadPosition(); }
   CElement* GetNext(POSITION& aPos)       // Return current element pointer
      { return m_ElementList.GetNext(aPos); }
   void SendToBack(CElement* pElement);    // Move an element to the back in the Z-order
// Overrides
public:
        virtual BOOL OnNewDocument();
        virtual void Serialize(CArchive& ar);

// Implementation
public:
        virtual ~CSketcherDoc();
ifdef _DEBUG
        virtual void AssertValid() const;
        virtual void Dump(CDumpContext& dc) const;
endif

protected:

// Generated message map functions
protected:
        DECLARE_MESSAGE_MAP()
public:
  afx_msg void OnColorBlack();
public:
  afx_msg void OnColorRed();
public:
  afx_msg void OnColorGreen();
public:
  afx_msg void OnColorBlue();
public:
  afx_msg void OnElementLine();
public:
  afx_msg void OnElementRectangle();
public:
  afx_msg void OnElementCircle();
public:
  afx_msg void OnElementCurve();
protected:
  // Current element type
  unsigned int m_Element;
  COLORREF m_Color;                    // Current drawing color
  CTypedPtrList m_ElementList;  // Element list

public:
  afx_msg void OnUpdateColorBlack(CCmdUI *pCmdUI);
public:
  afx_msg void OnUpdateColorGreen(CCmdUI *pCmdUI);
public:
  afx_msg void OnUpdateColorRed(CCmdUI *pCmdUI);
public:
  afx_msg void OnUpdateColorBlue(CCmdUI *pCmdUI);
public:
  afx_msg void OnUpdateElementLine(CCmdUI *pCmdUI);
public:
  afx_msg void OnUpdateElementRectangle(CCmdUI *pCmdUI);
public:
  afx_msg void OnUpdateElementCircle(CCmdUI *pCmdUI);
public:
  afx_msg void OnUpdateElementCurve(CCmdUI *pCmdUI);
};
<hr>


<hr> <style type="text/css"> div.mainnavigate { margin: 20px 2px; /* background-color: #ffffff; */ border: 1px solid black; } </style> <div class=xnavigate> [] <black>readme</black> course(s) preface <black>I</black> 1 2 <black>II</black> 3 4 <black>III</black> 5 6 7 <black>IV</black> 8 9 10 <black>V</black> 11 12 afterthought(s) <black>appendix</black> reference(s) example(s) <black>resource(s)</black> _ </div> <hr>

(C) Æliens 20/2/2008

You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author. </div> <script src="http://www.google-analytics.com/urchin.js" type="text/javascript"> </script> <script type="text/javascript"> _uacct = "UA-2780434-1"; urchinTracker(); </script> </body> </html> <hr> <hr> <table cellpadding=10> <tr> <td> <address> Hush Online Technology </address> hush@cs.vu.nl <br>10/17/08 </td><td> </td> <td></td><td></td><td></td><td></td><td></td><td></td><td></td> <td> </td> </tr> </table>