Ignore:
Timestamp:
Feb 11, 2010, 11:19:06 PM (15 years ago)
Author:
Dmitry A. Kuminov
Message:

trunk: Merged in qt 4.6.1 sources.

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk

  • trunk/examples/graphicsview/basicgraphicslayouts/layoutitem.cpp

    r2 r561  
    22**
    33** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
    4 ** Contact: Qt Software Information (qt-info@nokia.com)
     4** All rights reserved.
     5** Contact: Nokia Corporation (qt-info@nokia.com)
    56**
    67** This file is part of the examples of the Qt Toolkit.
     
    2122** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
    2223**
    23 ** In addition, as a special exception, Nokia gives you certain
    24 ** additional rights. These rights are described in the Nokia Qt LGPL
    25 ** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
    26 ** package.
     24** In addition, as a special exception, Nokia gives you certain additional
     25** rights.  These rights are described in the Nokia Qt LGPL Exception
     26** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
    2727**
    2828** GNU General Public License Usage
     
    3434** met: http://www.gnu.org/copyleft/gpl.html.
    3535**
    36 ** If you are unsure which license is appropriate for your use, please
    37 ** contact the sales department at qt-sales@nokia.com.
     36** If you have questions regarding the use of this file, please contact
     37** Nokia at qt-info@nokia.com.
    3838** $QT_END_LICENSE$
    3939**
     
    4444//! [0]
    4545LayoutItem::LayoutItem(QGraphicsItem *parent/* = 0*/)
    46     : QGraphicsWidget(parent)
     46    : QGraphicsLayoutItem(), QGraphicsItem(parent)
    4747{
    48     pix = new QPixmap(QLatin1String(":/images/block.png"));
    49     // Do not allow a size smaller than the pixmap with two frames around it.
    50     setMinimumSize(pix->size() + QSize(12, 12));
     48    m_pix = new QPixmap(QLatin1String(":/images/block.png"));
     49    setGraphicsItem(this);
    5150}
    5251//! [0]
     
    5453LayoutItem::~LayoutItem()
    5554{
    56     delete pix;
     55    delete m_pix;
    5756}
    58  
     57
    5958//! [1]
    6059void LayoutItem::paint(QPainter *painter,
     
    6564
    6665    QRectF frame(QPointF(0,0), geometry().size());
    67     qreal w = pix->width();
    68     qreal h = pix->height();
     66    qreal w = m_pix->width();
     67    qreal h = m_pix->height();
    6968    QGradientStops stops;
    7069//! [1]
     
    9594    painter->setBrush(QBrush(gradient));
    9695    painter->drawRoundedRect(innerFrame, 10.0, 10.0);
    97     painter->drawPixmap(pixpos, *pix);
     96    painter->drawPixmap(pixpos, *m_pix);
    9897}
    9998//! [2]
     99
     100//! [3]
     101QRectF LayoutItem::boundingRect() const
     102{
     103    return QRectF(QPointF(0,0), geometry().size());
     104}
     105//! [3]
     106
     107//! [4]
     108void LayoutItem::setGeometry(const QRectF &geom)
     109{
     110    prepareGeometryChange();
     111    QGraphicsLayoutItem::setGeometry(geom);
     112    setPos(geom.topLeft());
     113}
     114//! [4]
     115
     116//! [5]
     117QSizeF LayoutItem::sizeHint(Qt::SizeHint which, const QSizeF &constraint) const
     118{
     119    switch (which) {
     120    case Qt::MinimumSize:
     121    case Qt::PreferredSize:
     122        // Do not allow a size smaller than the pixmap with two frames around it.
     123        return m_pix->size() + QSize(12, 12);
     124    case Qt::MaximumSize:
     125        return QSizeF(1000,1000);
     126    default:
     127        break;
     128    }
     129    return constraint;
     130}
     131//! [5]
Note: See TracChangeset for help on using the changeset viewer.