Main Page | Directories | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

vtkCocoaRenderWindowInteractor.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkCocoaRenderWindowInteractor.h,v $
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 =========================================================================*/
00036 #ifndef __vtkCocoaRenderWindowInteractor_h
00037 #define __vtkCocoaRenderWindowInteractor_h
00038 
00039 #include "vtkRenderWindowInteractor.h"
00040 
00041 
00042 class VTK_RENDERING_EXPORT vtkCocoaRenderWindowInteractor : public vtkRenderWindowInteractor
00043 {
00044 public:
00046   static vtkCocoaRenderWindowInteractor *New();
00047 
00048   vtkTypeRevisionMacro(vtkCocoaRenderWindowInteractor,vtkRenderWindowInteractor);
00049   void PrintSelf(ostream& os, vtkIndent indent);
00050 
00052   virtual void Initialize();
00053 
00055 
00062   virtual void Enable();
00063   virtual void Disable();
00065 
00069   virtual void Start();
00070 
00072 
00077   vtkSetMacro(InstallMessageProc,int);
00078   vtkGetMacro(InstallMessageProc,int);
00079   vtkBooleanMacro(InstallMessageProc,int);
00081 
00086   void TerminateApp();
00087 
00089 
00090   int CreateTimer(int timertype);
00091   int DestroyTimer();
00093 
00095 
00099   static void SetClassExitMethod(void (*f)(void *), void *arg);
00100   static void SetClassExitMethodArgDelete(void (*f)(void *));
00102 
00105   virtual void ExitCallback();
00106   
00107 //  int GetButtonDown();
00108 //  void SetButtonDown(int button);
00109 
00110 protected:
00111   vtkCocoaRenderWindowInteractor();
00112   ~vtkCocoaRenderWindowInteractor();
00113 
00114   void   *WindowId;
00115   void   *ApplicationId;
00116   int     TimerId;
00117   void   *OldProc;
00118   int     InstallMessageProc;
00119 
00120   //BTX
00122 
00125   static void (*ClassExitMethod)(void *);
00126   static void (*ClassExitMethodArgDelete)(void *);
00127   static void *ClassExitMethodArg;
00128   //ETX
00130   
00131 private:
00132   vtkCocoaRenderWindowInteractor(const vtkCocoaRenderWindowInteractor&);  // Not implemented.
00133   void operator=(const vtkCocoaRenderWindowInteractor&);  // Not implemented.
00134 };
00135 
00136 #endif