From 8160ca6dfd5332993e22fc82597aac947f335ee6 Mon Sep 17 00:00:00 2001 From: Jan-Arve Saether Date: Wed, 15 Aug 2012 15:22:49 +0200 Subject: Clean up docs for graphicsview. * doc/snippets/graphicsview.cpp is moved from the qtdoc repo * doc/images/graphicsview-parentchild.png is taken from 4.8 There are still some problems with references to examples, but Casper meant that Jerome was working on that, so I'll leave those fixes out. Change-Id: Ieac8e6564344851fe8e77f2b346b152e57f8485c Reviewed-by: Casper van Donderen --- .../doc/images/graphicsview-parentchild.png | Bin 0 -> 7944 bytes src/widgets/doc/snippets/graphicsview.cpp | 117 +++++++++++++++++++++ src/widgets/graphicsview/qgraphicsanchorlayout.cpp | 1 - src/widgets/graphicsview/qgraphicsitem.cpp | 12 +-- src/widgets/graphicsview/qgraphicsview.cpp | 2 +- src/widgets/graphicsview/qgraphicswidget.cpp | 6 +- 6 files changed, 128 insertions(+), 10 deletions(-) create mode 100644 src/widgets/doc/images/graphicsview-parentchild.png create mode 100644 src/widgets/doc/snippets/graphicsview.cpp (limited to 'src/widgets') diff --git a/src/widgets/doc/images/graphicsview-parentchild.png b/src/widgets/doc/images/graphicsview-parentchild.png new file mode 100644 index 0000000000..0fc2dbf538 Binary files /dev/null and b/src/widgets/doc/images/graphicsview-parentchild.png differ diff --git a/src/widgets/doc/snippets/graphicsview.cpp b/src/widgets/doc/snippets/graphicsview.cpp new file mode 100644 index 0000000000..8f39be07c2 --- /dev/null +++ b/src/widgets/doc/snippets/graphicsview.cpp @@ -0,0 +1,117 @@ +/**************************************************************************** +** +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). +** Contact: http://www.qt-project.org/ +** +** This file is part of the documentation of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor +** the names of its contributors may be used to endorse or promote +** products derived from this software without specific prior written +** permission. +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +//! [0] +QGraphicsScene scene; +QGraphicsRectItem *rect = scene.addRect(QRectF(0, 0, 100, 100)); + +QGraphicsItem *item = scene.itemAt(50, 50); +// item == rect +//! [0] + + +//! [1] +QGraphicsScene scene; +myPopulateScene(&scene); + +QGraphicsView view(&scene); +view.show(); +//! [1] + + +//! [2] +class View : public QGraphicsView +{ +Q_OBJECT + ... +public slots: + void zoomIn() { scale(1.2, 1.2); } + void zoomOut() { scale(1 / 1.2, 1 / 1.2); } + void rotateLeft() { rotate(-10); } + void rotateRight() { rotate(10); } + ... +}; +//! [2] + + +//! [3] +QGraphicsScene scene; +scene.addRect(QRectF(0, 0, 100, 200), QPen(Qt::black), QBrush(Qt::green)); + +QPrinter printer; +if (QPrintDialog(&printer).exec() == QDialog::Accepted) { + QPainter painter(&printer); + painter.setRenderHint(QPainter::Antialiasing); + scene.render(&painter); +} +//! [3] + + +//! [4] +QGraphicsScene scene; +scene.addRect(QRectF(0, 0, 100, 200), QPen(Qt::black), QBrush(Qt::green)); + +QPixmap pixmap; +QPainter painter(&pixmap); +painter.setRenderHint(QPainter::Antialiasing); +scene.render(&painter); +painter.end(); + +pixmap.save("scene.png"); +//! [4] + + +//! [5] +void CustomItem::mousePressEvent(QGraphicsSceneMouseEvent *event) +{ + QMimeData *data = new QMimeData; + data->setColor(Qt::green); + + QDrag *drag = new QDrag(event->widget()); + drag->setMimeData(data); + drag->start(); +} +//! [5] + + +//! [6] +QGraphicsView view(&scene); +view.setViewport(new QGLWidget(QGLFormat(QGL::SampleBuffers))); +//! [6] diff --git a/src/widgets/graphicsview/qgraphicsanchorlayout.cpp b/src/widgets/graphicsview/qgraphicsanchorlayout.cpp index 06db3826ea..324b850b54 100644 --- a/src/widgets/graphicsview/qgraphicsanchorlayout.cpp +++ b/src/widgets/graphicsview/qgraphicsanchorlayout.cpp @@ -81,7 +81,6 @@ convenient to use the addAnchors() function. As with the other functions for specifying anchors, it can also be used to anchor a widget to a layout. - \clearfloat \section1 Size Hints and Size Policies in an Anchor Layout QGraphicsAnchorLayout respects each item's size hints and size policies. diff --git a/src/widgets/graphicsview/qgraphicsitem.cpp b/src/widgets/graphicsview/qgraphicsitem.cpp index 841caa9010..cdae6e35e0 100644 --- a/src/widgets/graphicsview/qgraphicsitem.cpp +++ b/src/widgets/graphicsview/qgraphicsitem.cpp @@ -5056,6 +5056,7 @@ bool QGraphicsItem::isObscured(const QRectF &rect) const /*! \fn bool QGraphicsItem::isObscured(qreal x, qreal y, qreal w, qreal h) const + \overload \since 4.3 This convenience function is equivalent to calling isObscured(QRectF(\a x, \a y, \a w, \a h)). @@ -7792,7 +7793,7 @@ void QGraphicsItemPrivate::resetHeight() Describes the items x position. - \sa QGraphicsItem::setX(), setPos(), xChanged() + \sa QGraphicsItem::setX(), setPos() */ /*! @@ -7809,7 +7810,7 @@ void QGraphicsItemPrivate::resetHeight() Describes the items y position. - \sa QGraphicsItem::setY(), setPos(), yChanged() + \sa QGraphicsItem::setY(), setPos() */ /*! @@ -7826,7 +7827,7 @@ void QGraphicsItemPrivate::resetHeight() Describes the items z value. - \sa QGraphicsItem::setZValue(), zValue(), zChanged() + \sa QGraphicsItem::setZValue(), zValue() */ /*! @@ -7882,7 +7883,6 @@ void QGraphicsItemPrivate::resetHeight() By default, this property is true. \sa QGraphicsItem::isEnabled(), QGraphicsItem::setEnabled() - \sa QGraphicsObject::enabledChanged() */ /*! @@ -7901,7 +7901,7 @@ void QGraphicsItemPrivate::resetHeight() By default, this property is true. - \sa QGraphicsItem::isVisible(), QGraphicsItem::setVisible(), visibleChanged() + \sa QGraphicsItem::isVisible(), QGraphicsItem::setVisible() */ /*! @@ -10621,7 +10621,7 @@ QGraphicsSimpleTextItem::~QGraphicsSimpleTextItem() /*! Sets the item's text to \a text. The text will be displayed as - plain text. Newline characters ('\n') as well as characters of + plain text. Newline characters ('\\n') as well as characters of type QChar::LineSeparator will cause item to break the text into multiple lines. */ diff --git a/src/widgets/graphicsview/qgraphicsview.cpp b/src/widgets/graphicsview/qgraphicsview.cpp index cb9ed3661f..c2942212e6 100644 --- a/src/widgets/graphicsview/qgraphicsview.cpp +++ b/src/widgets/graphicsview/qgraphicsview.cpp @@ -1294,7 +1294,7 @@ void QGraphicsView::setTransformationAnchor(ViewportAnchor anchor) whole scene fits in the view, QGraphicsScene uses the view \l alignment to position the scene in the view. - \sa alignment, transformationAnchor, Qt::WNorthWestGravity + \sa alignment, transformationAnchor */ QGraphicsView::ViewportAnchor QGraphicsView::resizeAnchor() const { diff --git a/src/widgets/graphicsview/qgraphicswidget.cpp b/src/widgets/graphicsview/qgraphicswidget.cpp index 560b04cca9..81107f3cae 100644 --- a/src/widgets/graphicsview/qgraphicswidget.cpp +++ b/src/widgets/graphicsview/qgraphicswidget.cpp @@ -1201,7 +1201,8 @@ QVariant QGraphicsWidget::itemChange(GraphicsItemChange change, const QVariant & QGraphicsWidget delivers notifications for the following properties: - \table \li propertyName \li Property + \table + \header \li propertyName \li Property \row \li layoutDirection \li QGraphicsWidget::layoutDirection \row \li size \li QGraphicsWidget::size \row \li font \li QGraphicsWidget::font @@ -1347,7 +1348,8 @@ Qt::WindowFrameSection QGraphicsWidget::windowFrameSectionAt(const QPointF &pos) Handles the \a event. QGraphicsWidget handles the following events: - \table \li Event \li Usage + \table + \header \li Event \li Usage \row \li Polish \li Delivered to the widget some time after it has been shown. -- cgit v1.2.3