1 /***************************************************************************
2 * Copyright (C) 2007 by Jean-Baptiste Mardelle (jb@kdenlive.org) *
4 * This program is free software; you can redistribute it and/or modify *
5 * it under the terms of the GNU General Public License as published by *
6 * the Free Software Foundation; either version 2 of the License, or *
7 * (at your option) any later version. *
9 * This program is distributed in the hope that it will be useful, *
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
12 * GNU General Public License for more details. *
14 * You should have received a copy of the GNU General Public License *
15 * along with this program; if not, write to the *
16 * Free Software Foundation, Inc., *
17 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA *
18 ***************************************************************************/
22 #include <QStyleOptionGraphicsItem>
27 #include "labelitem.h"
29 LabelItem::LabelItem(QString text, QGraphicsRectItem *parent)
30 : QGraphicsSimpleTextItem(" " + text + " ", parent)
32 //setParentItem(parent);
33 setFlags(QGraphicsItem::ItemIgnoresTransformations);
36 int LabelItem::type () const
43 void LabelItem::paint(QPainter *painter,
44 const QStyleOptionGraphicsItem *option,
47 kDebug()<<"REPAINT LABEL ------------------------";
48 QRectF rep = option->exposedRect;
49 //painter->setClipRect(rep);
50 QGraphicsRectItem *parent = (QGraphicsRectItem *) parentItem();
51 QRectF par = mapFromScene(parent->rect()).boundingRect();
52 QRectF parrect = option->matrix.map(mapFromScene(par)).boundingRect();
53 painter->setClipRect( parrect ); //option->exposedRect );
55 path.addRoundRect(boundingRect(), 40);
56 painter->fillPath(path, QColor(200, 200, 200, 100));
57 //painter->fillRect(parrect, QColor(200, 50, 200, 100));
58 painter->drawText(boundingRect(), Qt::AlignCenter, text());
61 #include "labelitem.moc"