- /////////////////////////////////////////////////////////////////////////////
- // MyglDoc.h : Header file; interface of the CMyglDoc class
- //
- // ModelMagic 3D and 'glOOP' (OpenGL Object Oriented Programming library)
- // Copyright (c) Craig Fahrnbach 1997, 1999
- //
- // OpenGL is a registered trademark of Silicon Graphics
- //
- //
- // This program is provided for educational and personal use only and
- // is provided without guarantee or warrantee expressed or implied.
- //
- // Commercial use is strickly prohibited without written permission
- // from ImageWare Development.
- //
- /////////////////////////////////////////////////////////////////////////////
- /////////////////////////////////////////////////////////////////////////////
- // CMyglDoc document
- class CMyglDoc : public CDocument
- {
- DECLARE_DYNCREATE(CMyglDoc)
- // Construction
- public:
- HGLOBAL m_hDevNames;
- HGLOBAL m_hDevMode;
- void SetPrinterDeviceDefaults();
- CMyglDoc();
- virtual ~CMyglDoc();
- // Methods / Implementation
- public:
- void UserSelectedAnObject();
- protected:
- void ResetSelectionFlags();
- void ResetCommandFlags();
- // Attributes
- public:
- C3dWorld* m_pWorld;
- double m_dTime;
- HCURSOR m_hCursorPrev;
- HCURSOR m_hPaintCursor;
- // Model selection flags
- BOOL m_bSelectCamera;
- BOOL m_bSelectParentObj;
- BOOL m_bSelectChildObj;
- BOOL m_bSelectPoint;
- // Model Object selection flags
- BOOL m_bSelectObjAxis;
- BOOL m_bSelectObjTexture;
- BOOL m_bSelectObjTextureAxis;
- BOOL m_bSelectObjPoints;
- BOOL m_bSelectObjEdges;
- // Model Command flags
- BOOL m_bSelect;
- BOOL m_bMove;
- BOOL m_bRotate;
- BOOL m_bScale;
- BOOL m_bPaint;
- BOOL m_bCreatePoints;
- // Model Coordinate flags
- BOOL m_bUnLockXAxis;
- BOOL m_bUnLockYAxis;
- BOOL m_bUnLockZAxis;
- BOOL m_bObjectCoordinates;
- BOOL m_bWorldCoordinates;
- // Misc flags
- BOOL m_bSnapToGrid;
- protected:
- // Operations
- public:
- // Overrides
- // ClassWizard generated virtual function overrides
- //{{AFX_VIRTUAL(CMyglDoc)
- public:
- virtual BOOL OnNewDocument();
- virtual void Serialize(CArchive& ar);
- virtual void OnCloseDocument();
- virtual void SetTitle(LPCTSTR lpszTitle);
- //}}AFX_VIRTUAL
- // Implementation
- public:
- #ifdef _DEBUG
- virtual void AssertValid() const;
- virtual void Dump(CDumpContext& dc) const;
- #endif
- protected:
- void AddObject(C3dObject* pObject);
- // Generated message map functions
- protected:
- //{{AFX_MSG(CMyglDoc)
- afx_msg void OnMatlSave();
- afx_msg void OnMatlOpen();
- afx_msg void OnObjectOpen();
- afx_msg void OnObjectSaveAs();
- afx_msg void OnObjectNewCube();
- afx_msg void OnObjectNewCone();
- afx_msg void OnObjectNewCylinder();
- afx_msg void OnObjectNewCSG();
- afx_msg void OnObjectNewTorus();
- afx_msg void OnObjectNewPlane();
- afx_msg void OnObjectNewSphere();
- afx_msg void OnObjectNewTTF();
- afx_msg void OnObjectNewLathe();
- afx_msg void OnObjectNewDisk();
- afx_msg void OnObjectNewGrid();
- afx_msg void OnObjectNewTriangle();
- afx_msg void OnSnapToGrid();
- afx_msg void OnUpdateSnapToGrid(CCmdUI* pCmdUI);
- afx_msg void OnAnimateFly();
- afx_msg void OnUpdateAnimateFly(CCmdUI* pCmdUI);
- afx_msg void OnKeyframePlay();
- afx_msg void OnKeyframeFirst();
- afx_msg void OnUpdateKeyframeFirst(CCmdUI* pCmdUI);
- afx_msg void OnKeyframeLast();
- afx_msg void OnUpdateKeyframeLast(CCmdUI* pCmdUI);
- afx_msg void OnKeyframeNext();
- afx_msg void OnUpdateKeyframeNext(CCmdUI* pCmdUI);
- afx_msg void OnUpdateKeyframePlay(CCmdUI* pCmdUI);
- afx_msg void OnKeyframePrevious();
- afx_msg void OnUpdateKeyframePrevious(CCmdUI* pCmdUI);
- afx_msg void OnKeyframeRecord();
- afx_msg void OnUpdateKeyframeRecord(CCmdUI* pCmdUI);
- afx_msg void OnKeyframeUnrecord();
- afx_msg void OnUpdateKeyframeUnrecord(CCmdUI* pCmdUI);
- afx_msg void OnTextureOpen();
- afx_msg void OnTextureEdit();
- afx_msg void OnTextureRemove();
- afx_msg void OnObjectNewNurb();
- afx_msg void OnObjectNewTerrain();
- afx_msg void OnSelectCamera();
- afx_msg void OnUpdateSelectCamera(CCmdUI* pCmdUI);
- afx_msg void OnSelectParent();
- afx_msg void OnUpdateSelectParent(CCmdUI* pCmdUI);
- afx_msg void OnSelectChild();
- afx_msg void OnUpdateSelectChild(CCmdUI* pCmdUI);
- afx_msg void OnSelectObjectAxis();
- afx_msg void OnUpdateSelectObjectAxis(CCmdUI* pCmdUI);
- afx_msg void OnSelectObjectTexture();
- afx_msg void OnUpdateSelectObjectTexture(CCmdUI* pCmdUI);
- afx_msg void OnSelectObjectTextureAxis();
- afx_msg void OnUpdateSelectObjectTextureAxis(CCmdUI* pCmdUI);
- afx_msg void OnSelectObjectEdges();
- afx_msg void OnUpdateSelectObjectEdges(CCmdUI* pCmdUI);
- afx_msg void OnSelectObjectPoints();
- afx_msg void OnUpdateSelectObjectPoints(CCmdUI* pCmdUI);
- afx_msg void OnSelectPoints();
- afx_msg void OnUpdateSelectPoints(CCmdUI* pCmdUI);
- afx_msg void OnCommandSelect();
- afx_msg void OnUpdateCommandSelect(CCmdUI* pCmdUI);
- afx_msg void OnCommandMove();
- afx_msg void OnUpdateCommandMove(CCmdUI* pCmdUI);
- afx_msg void OnCommandRotate();
- afx_msg void OnUpdateCommandRotate(CCmdUI* pCmdUI);
- afx_msg void OnCommandScale();
- afx_msg void OnUpdateCommandScale(CCmdUI* pCmdUI);
- afx_msg void OnCommandPaint();
- afx_msg void OnUpdateCommandPaint(CCmdUI* pCmdUI);
- afx_msg void OnCommandPointsCreate();
- afx_msg void OnUpdateCommandPointsCreate(CCmdUI* pCmdUI);
- afx_msg void OnCoordinateXAxis();
- afx_msg void OnUpdateCoordinateXAxis(CCmdUI* pCmdUI);
- afx_msg void OnCoordinateYAxis();
- afx_msg void OnUpdateCoordinateYAxis(CCmdUI* pCmdUI);
- afx_msg void OnCoordinateZAxis();
- afx_msg void OnUpdateCoordinateZAxis(CCmdUI* pCmdUI);
- afx_msg void OnCoordinateObject();
- afx_msg void OnUpdateCoordinateObject(CCmdUI* pCmdUI);
- afx_msg void OnCoordinateWorld();
- afx_msg void OnUpdateCoordinateWorld(CCmdUI* pCmdUI);
- afx_msg void OnObjectNewLight();
- afx_msg void OnObjectNewHSpline();
- afx_msg void OnObjectNewCloud();
- //}}AFX_MSG
- DECLARE_MESSAGE_MAP()
- };
- /////////////////////////////////////////////////////////////////////////////