VTK
dox/GUISupport/MFC/vtkMFCWindow.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkMFCWindow.h
00005 
00006   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00007   All rights reserved.
00008   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00009 
00010      This software is distributed WITHOUT ANY WARRANTY; without even
00011      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012      PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00015 
00016 #ifndef C_VTK_MFC_WINDOW
00017 #define C_VTK_MFC_WINDOW
00018 
00019 #include "vtkGUISupportMFCModule.h" // For export macro
00020 #include "afxwin.h"
00021 
00022 class vtkWin32OpenGLRenderWindow;
00023 class vtkRenderWindowInteractor;
00024 
00025 #include "vtkMFCConfigure.h"
00026 
00028 class VTKGUISUPPORTMFC_EXPORT vtkMFCWindow : public CWnd
00029 {
00030 public:
00032   vtkMFCWindow(CWnd *pcWnd);
00034   virtual ~vtkMFCWindow();
00035 
00036 #ifdef _DEBUG
00037   virtual void AssertValid() const;
00038   virtual void Dump(CDumpContext& dc) const;
00039 #endif
00040 
00042   void DrawDC(CDC* pDC);
00043 
00045   virtual void SetRenderWindow(vtkWin32OpenGLRenderWindow*);
00047   virtual vtkWin32OpenGLRenderWindow* GetRenderWindow();
00049   virtual vtkRenderWindowInteractor* GetInteractor();
00050 
00051 protected:
00052 
00054   afx_msg void OnSize(UINT nType, int cx, int cy);
00056   afx_msg void OnPaint();
00058   afx_msg void OnDestroy();
00060   BOOL OnEraseBkgnd(CDC* pDC);
00061 
00062   afx_msg void OnLButtonDblClk(UINT nFlags, CPoint point);
00063   afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
00064   afx_msg void OnMButtonDown(UINT nFlags, CPoint point);
00065   afx_msg void OnRButtonDown(UINT nFlags, CPoint point);
00066   afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
00067   afx_msg void OnMButtonUp(UINT nFlags, CPoint point);
00068   afx_msg void OnRButtonUp(UINT nFlags, CPoint point);
00069   afx_msg void OnMouseMove(UINT nFlags, CPoint point);
00070   afx_msg BOOL OnMouseWheel(UINT nFlags, short zDelta, CPoint pt);
00071   afx_msg void OnChar(UINT nChar, UINT nRepCnt, UINT nFlags);
00072   afx_msg void OnKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags);
00073   afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
00074   afx_msg void OnTimer(UINT_PTR nIDEvent);
00075 
00077   vtkWin32OpenGLRenderWindow* pvtkWin32OpenGLRW;
00078 
00079   DECLARE_MESSAGE_MAP()
00080 };
00081 
00082 #endif
00083 
00084 // VTK-HeaderTest-Exclude: vtkMFCWindow.h