00001
00032 #ifndef LL_LLTOOLSELECTRECT_H
00033 #define LL_LLTOOLSELECTRECT_H
00034
00035 #include "lltool.h"
00036 #include "lltoolselect.h"
00037
00038 class LLToolSelectRect
00039 : public LLToolSelect
00040 {
00041 public:
00042 LLToolSelectRect( LLToolComposite* composite );
00043
00044 virtual BOOL handleMouseDown(S32 x, S32 y, MASK mask);
00045 virtual BOOL handleMouseUp(S32 x, S32 y, MASK mask);
00046 virtual BOOL handleHover(S32 x, S32 y, MASK mask);
00047 virtual void draw();
00048
00049 protected:
00050 void handleRectangleSelection(S32 x, S32 y, MASK mask);
00051 BOOL outsideSlop(S32 x, S32 y, S32 start_x, S32 start_y);
00052
00053 protected:
00054 S32 mDragStartX;
00055 S32 mDragStartY;
00056
00057 S32 mDragEndX;
00058 S32 mDragEndY;
00059
00060 S32 mDragLastWidth;
00061 S32 mDragLastHeight;
00062
00063 BOOL mMouseOutsideSlop;
00064 };
00065
00066
00067 #endif