00001 #ifndef task_h
00002 #define task_h
00003
00004
00005
00006 class SXYGraph;
00007
00008
00009
00010
00011
00012 typedef enum{
00013 CALLBACK_TREATED = 0,
00014 CALLBACK_NOT_TREATED,
00015 } SXYTaskReturn;
00016
00017
00018
00019
00020 class SXYTask {
00021
00022 public:
00023
00024 static SXYTask* DEFAULT_MOVE_POINT_TASK;
00025 static SXYTask* DEFAULT_MOVE_LEGEND_TASK;
00026 static SXYTask* DEFAULT_ADJUST_AXIS_TASK;
00027 static SXYTask* DEFAULT_EDIT_TEXT_TASK;
00028 static SXYTask* DEFAULT_ZOOM_IN_TASK;
00029 static SXYTask* DEFAULT_CHANGE_COLORS_TASK;
00030
00031
00032 virtual SXYTaskReturn mouseClick(SXYGraph* graph, int b, int x, int y,
00033 int sft, int ctr) = 0;
00034 virtual SXYTaskReturn mouseUnclick(SXYGraph* graph, int b, int x, int y,
00035 int sft, int ctr) = 0;
00036 virtual SXYTaskReturn mouseMotion(SXYGraph* graph, int x, int y,
00037 int sft, int ctr) = 0;
00038
00039 virtual SXYTaskReturn mouseEnter(SXYGraph* graph) = 0;
00040 virtual SXYTaskReturn mouseLeave(SXYGraph* graph) = 0;
00041
00042 long int getXorColor(void);
00043
00044 SXYTask(void);
00045 virtual ~SXYTask();
00046 };
00047
00048
00049 #endif
00050