Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages

# Rendering/vtkCarbonRenderWindowInteractor.h

Go to the documentation of this file.

    00001 /*=========================================================================
    00002
    00003   Program:   Visualization Toolkit
    00004   Module:    $RCSfile: vtkCarbonRenderWindowInteractor.h,v $
    00005   Language:  C++
    00006
    00007   Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen
    00008   All rights reserved.
    00009   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
    00010
    00011      This software is distributed WITHOUT ANY WARRANTY; without even
    00012      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
    00013      PURPOSE.  See the above copyright notice for more information.
    00014
    00015 =========================================================================*/
    00042 #ifndef __vtkCarbonRenderWindowInteractor_h
    00043 #define __vtkCarbonRenderWindowInteractor_h
    00044
    00045 #include "vtkRenderWindowInteractor.h"
    00046
    00047 #include <Carbon/Carbon.h> // Needed for Carbon types
    00048
    00049
    00050 class VTK_RENDERING_EXPORT vtkCarbonRenderWindowInteractor : public vtkRenderWindowInteractor {
    00051 public:
    00053   static vtkCarbonRenderWindowInteractor *New();
    00054
    00055   vtkTypeRevisionMacro(vtkCarbonRenderWindowInteractor,vtkRenderWindowInteractor);
    00056   void PrintSelf(ostream& os, vtkIndent indent);
    00057
    00059   virtual void Initialize();
    00060
    00062
    00069   virtual void Enable();
    00070   virtual void Disable();
    00072
    00076   virtual void Start();
    00077
    00079
    00084   vtkSetMacro(InstallMessageProc,int);
    00085   vtkGetMacro(InstallMessageProc,int);
    00086   vtkBooleanMacro(InstallMessageProc,int);
    00088
    00093   void TerminateApp(void);
    00094
    00096
    00097   int CreateTimer(int timertype);
    00098   int DestroyTimer(void);
    00100
    00102
    00106   static void SetClassExitMethod(void (*f)(void *), void *arg);
    00107   static void SetClassExitMethodArgDelete(void (*f)(void *));
    00109
    00112   virtual void ExitCallback();
    00113
    00114 //  int GetButtonDown();
    00115 //  void SetButtonDown(int button);
    00116
    00117 protected:
    00118   vtkCarbonRenderWindowInteractor();
    00119   ~vtkCarbonRenderWindowInteractor();
    00120
    00121   WindowPtr         WindowId;
    00122   EventLoopTimerRef TimerId;
    00123   EventHandlerUPP   OldProc;
    00124   int               InstallMessageProc;
    00125
    00126
    00127   //BTX
    00129   /*! Class variables so an exit method can be defined for this class (used
    00130       to set different exit methods for various language bindings, i.e.
    00131       tcl, java, Carbon) */
    00132   static void (*ClassExitMethod)(void *);
    00133   static void (*ClassExitMethodArgDelete)(void *);
    00134   static void *ClassExitMethodArg;
    00135   //ETX
    00137
    00138 private:
    00139   vtkCarbonRenderWindowInteractor(const vtkCarbonRenderWindowInteractor&);  // Not implemented.
    00140   void operator=(const vtkCarbonRenderWindowInteractor&);  // Not implemented.
    00141 };
    00142
    00143 #endif
    00144
    00145