Documentation
[yamf.git] / yamf / drawing / private / guide.h
blobb3bc92c4d03edb1d5e8635a9ae34f7b76f894499
1 /***************************************************************************
2 * Copyright (C) 2007 by Jorge Cuadrado *
3 * kruadrosxx@gmail.com *
4 * *
5 * This program is free software; you can redistribute it and/or modify *
6 * it under the terms of the GNU General Public License as published by *
7 * the Free Software Foundation; either version 2 of the License, or *
8 * (at your option) any later version. *
9 * *
10 * This program is distributed in the hope that it will be useful, *
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 * GNU General Public License for more details. *
14 * *
15 * You should have received a copy of the GNU General Public License *
16 * along with this program; if not, write to the *
17 * Free Software Foundation, Inc., *
18 * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
19 ***************************************************************************/
21 #ifndef YAMFDRAWINGPRIVATEGUIDE_H
22 #define YAMFDRAWINGPRIVATEGUIDE_H
24 #include <QGraphicsItem>
25 #include <yamf/common/yamf_exports.h>
27 namespace YAMF {
28 namespace Drawing {
29 namespace Private {
30 /**
31 * @ingroup drawing
32 * @author Jorge Cuadrado \<kuadrosxx@gmail.com\>
34 class YAMF_EXPORT Guide : public QGraphicsItem
36 public:
37 Guide(Qt::Orientation o, QGraphicsScene *scene);
38 ~Guide();
40 QRectF boundingRect() const;
41 void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0 );
43 void setEnabledSyncCursor(bool enabled);
45 protected:
46 QVariant itemChange(GraphicsItemChange change, const QVariant & value);
48 // void hoverEnterEvent(QGraphicsSceneHoverEvent* event);OLD
49 void mouseMoveEvent(QGraphicsSceneMouseEvent* event);
51 bool sceneEvent(QEvent *e);
54 private:
55 struct Private;
56 Private * const d;
58 void syncCursor();
64 #endif