00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00023 #ifndef INCLUDE_CURSOR_H
00024 #define INCLUDE_CURSOR_H
00025 
00026 #include "color.h"
00027 #include "control.h"
00028 
00034 typedef enum
00035 {
00036         cursorArrow,
00037         cursorWait,
00038         cursorText,
00039         cursorMoving,
00040         cursorRepere,
00041         cursorPush,
00042         cursorNoChange,
00043         cursorNothing
00044 } CursorType;
00045 
00046 class Cursor 
00047 {
00048 public:
00049         CursorType curType;
00050         CursorType leftType,rightType,midType;
00051         Face curFace;
00052         Face leftFace;
00053         Face midFace;
00054         Face rightFace;
00055         Recorder recorderRepere;
00056 
00057         Cursor();
00058         void Create();
00059         void ApplyType(Face *face,CursorType type);
00060         void ApplyTypes(CursorType current=cursorNoChange,CursorType left=cursorNoChange,CursorType mid=cursorNoChange,CursorType right=cursorNoChange);
00061         void Rotate(Face *face,CursorType type,Point3D<double> angle);
00062         void Rotate(Point3D<double> angle);
00063         void Draw(double x,double y);
00064 
00065         Point2D<int> GetHotSpot(CursorType type);
00066         void DrawArrow(Color color);
00067         void DrawRepere();
00068         void DrawText(char *text);
00069         void DrawVector(double x,double y);
00070         BOOL DrawVectorMinMax(double x,double y,double minIntensity,double maxIntensity);
00071 };
00072 
00073 #endif