00001 00010 #ifndef GRABNAVINT_H 00011 #define GRABNAVINT_H 00012 00013 // Gluebase includes 00014 #define OUTSIDE_GLUE_CORE 00015 #include <fsa/fsa.H> 00016 #include <mlib/points.H> 00017 #include <dev/room6d.H> 00018 #include <dev/buttons.H> 00019 #include <config/config.H> 00020 #include <std/hash.H> 00021 00022 #include "DrawPoint.H" 00023 00024 00025 class GrabNavInt : public Interactor<GrabNavInt> 00026 { 00027 public: 00028 00029 GrabNavInt(); 00030 virtual ~GrabNavInt() {} 00031 00032 protected: 00033 00034 void motion(cEVENTroom6dptr &evt, STATE *&); 00035 00036 void start_grab(cEVENTbtnptr &evt, STATE *&); 00037 void end_grab(cEVENTbtnptr &evt, STATE *&); 00038 00039 00040 STATE _moving; 00041 00042 EVENTroom6dptr _tracker; 00043 EVENTbtnptr _grabbtnon; 00044 EVENTbtnptr _grabbtnoff; 00045 00046 DrawPoint *_rotPointMarker; 00047 00048 }; 00049 00050 00051 #endif