4 #ifndef RAPTOR_SCROLL_HANDLER_H
5 #define RAPTOR_SCROLL_HANDLER_H
7 #include <QGraphicsItem>
8 #include <QtCore/QObject>
9 #include <QtGui/QGraphicsTextItem>
10 #include <QtGui/QLayoutItem>
12 #include <plasma/svg.h>
13 #include <plasma/theme.h>
14 #include <plasma/datacontainer.h>
17 class RaptorScrollHandler
: public QObject
,
23 typedef enum { REGULAR
,OVER
,PRESSED
} MouseState
;
24 typedef QHash
<MouseState
,QString
> ThemeNames
;
25 typedef enum {UP
=0,DOWN
,LEFT
,RIGHT
} ArrowState
;
27 RaptorScrollHandler(QGraphicsItem
* parent
= 0);
29 virtual ~RaptorScrollHandler();
31 QRectF
boundingRect() const;
32 void paint( QPainter
* painter
, const QStyleOptionGraphicsItem
* option
, QWidget
* widget
= 0);
33 QSize
sizeHint() const;//{}
35 QSize
minimumSize() const {return QSize(100,100);}
36 QSize
maximumSize() const {return QSize(100,100);}
37 void setArrowState(RaptorScrollHandler::ArrowState state
);
38 Qt::Orientations
expandingDirections() const{return 0;}
39 void setExpandingDirections(Qt::Orientations ori
);
40 void setGeometry(const QRect
& r
) {Q_UNUSED(r
)}
41 QRect
geometry() const {return QRect(0,0,100,100);};
42 bool isEmpty() const { return false;}
49 virtual void hoverEnterEvent ( QGraphicsSceneHoverEvent
* event
);
50 virtual void hoverMoveEvent ( QGraphicsSceneHoverEvent
* event
);
51 virtual void hoverLeaveEvent ( QGraphicsSceneHoverEvent
* event
);
52 virtual void mousePressEvent ( QGraphicsSceneMouseEvent
* event
);
54 QString
loadSvg(MouseState state
);