00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00032
#ifndef __vtkCarbonRenderWindowInteractor_h
00033
#define __vtkCarbonRenderWindowInteractor_h
00034
00035
#include "vtkRenderWindowInteractor.h"
00036
00037
#include <Carbon/Carbon.h>
00038
00039
00040 class VTK_RENDERING_EXPORT vtkCarbonRenderWindowInteractor :
public vtkRenderWindowInteractor {
00041
public:
00043
static vtkCarbonRenderWindowInteractor *
New();
00044
00045 vtkTypeRevisionMacro(vtkCarbonRenderWindowInteractor,
vtkRenderWindowInteractor);
00046
void PrintSelf(ostream& os,
vtkIndent indent);
00047
00049
virtual void Initialize();
00050
00052
00059
virtual void Enable();
00060
virtual void Disable();
00062
00066
virtual void Start();
00067
00069
00074 vtkSetMacro(InstallMessageProc,
int);
00075 vtkGetMacro(InstallMessageProc,
int);
00076 vtkBooleanMacro(InstallMessageProc,
int);
00078
00083
void TerminateApp(
void);
00084
00086
00087
int CreateTimer(
int timertype);
00088
int DestroyTimer(
void);
00090
00092
00096
static void SetClassExitMethod(
void (*f)(
void *),
void *arg);
00097
static void SetClassExitMethodArgDelete(
void (*f)(
void *));
00099
00102
virtual void ExitCallback();
00103
00104
00105
00106
00107
protected:
00108 vtkCarbonRenderWindowInteractor();
00109 ~vtkCarbonRenderWindowInteractor();
00110
00111 WindowPtr WindowId;
00112 EventLoopTimerRef TimerId;
00113 EventHandlerUPP OldProc;
00114 int InstallMessageProc;
00115
00116
00117
00119
00122
static void (*ClassExitMethod)(
void *);
00123
static void (*ClassExitMethodArgDelete)(
void *);
00124 static void *ClassExitMethodArg;
00125
00127
00128
private:
00129 vtkCarbonRenderWindowInteractor(
const vtkCarbonRenderWindowInteractor&);
00130
void operator=(
const vtkCarbonRenderWindowInteractor&);
00131 };
00132
00133
#endif
00134
00135