diff options
Diffstat (limited to 'src/declarative/graphicsitems/qdeclarativeimage.cpp')
-rw-r--r-- | src/declarative/graphicsitems/qdeclarativeimage.cpp | 45 |
1 files changed, 21 insertions, 24 deletions
diff --git a/src/declarative/graphicsitems/qdeclarativeimage.cpp b/src/declarative/graphicsitems/qdeclarativeimage.cpp index ec08517..34d33f5 100644 --- a/src/declarative/graphicsitems/qdeclarativeimage.cpp +++ b/src/declarative/graphicsitems/qdeclarativeimage.cpp @@ -65,18 +65,20 @@ QT_BEGIN_NAMESPACE Image { source: "qtlogo.png" } \endqml \endtable - - If a size is not specified explicitly, the Image element is sized to the loaded image. - Image elements can be stretched and tiled using the \l fillMode property. - If the image \l source is a network resource, the image is loaded asynchronous and the - \l progress and \l status properties are updated appropriately. Otherwise, if the image is - available locally, it is loaded immediately and the user interface is blocked until loading is - complete. (This is typically the correct behavior for user interface elements.) - For large local images, which do not need to be visible immediately, it may be preferable to - enable \l asynchronous loading. This loads the image in the background using a low priority thread. + If the \l {Image::width}{width} and \l{Image::height}{height} properties are not specified, + the Image element is automatically sized to the loaded image. Image elements can be + stretched and tiled using the \l fillMode property. + + By default, locally available images are loaded immediately, and the user interface + is blocked until loading is complete. If a large image is to be loaded, it may be + preferable to load the image in a low priority thread, by enabling the \l asynchronous + property. - Images are cached and shared internally, so if several Image elements have the same source + If the image is from a network rather than a local resource, it is automatically loaded + asynchronously, and the \l progress and \l status properties are updated as appropriate. + + Images are cached and shared internally, so if several Image elements have the same \l source, only one copy of the image will be loaded. \bold Note: Images are often the greatest user of memory in QML user interfaces. It is recommended @@ -84,7 +86,7 @@ QT_BEGIN_NAMESPACE size bounded via the \l sourceSize property. This is especially important for content that is loaded from external sources or provided by the user. - \sa {declarative/imageelements/image}{Image example} + \sa {declarative/imageelements/image}{Image example}, QDeclarativeImageProvider */ /*! @@ -114,19 +116,10 @@ QDeclarativeImage::~QDeclarativeImage() { } -/*! - \qmlproperty QPixmap Image::pixmap - - This property holds the QPixmap image to display. - - This is useful for displaying images provided by a C++ implementation, - for example, a model may provide a data role of type QPixmap. -*/ - QPixmap QDeclarativeImage::pixmap() const { Q_D(const QDeclarativeImage); - return d->pix; + return d->pix.pixmap(); } void QDeclarativeImage::setPixmap(const QPixmap &pix) @@ -140,7 +133,7 @@ void QDeclarativeImage::setPixmap(const QPixmap &pix) void QDeclarativeImagePrivate::setPixmap(const QPixmap &pixmap) { Q_Q(QDeclarativeImage); - pix = pixmap; + pix.setPixmap(pixmap); q->setImplicitWidth(pix.width()); q->setImplicitHeight(pix.height()); @@ -199,6 +192,7 @@ void QDeclarativeImagePrivate::setPixmap(const QPixmap &pixmap) fillMode: Image.PreserveAspectCrop smooth: true source: "qtlogo.png" + clip: true } \endqml @@ -220,6 +214,7 @@ void QDeclarativeImagePrivate::setPixmap(const QPixmap &pixmap) Image { width: 120; height: 120 fillMode: Image.TileVertically + smooth: true source: "qtlogo.png" } \endqml @@ -231,11 +226,14 @@ void QDeclarativeImagePrivate::setPixmap(const QPixmap &pixmap) Image { width: 120; height: 120 fillMode: Image.TileHorizontally + smooth: true source: "qtlogo.png" } \endqml \endtable + + \sa {declarative/imageelements/image}{Image example} */ QDeclarativeImage::FillMode QDeclarativeImage::fillMode() const { @@ -426,7 +424,7 @@ void QDeclarativeImage::geometryChanged(const QRectF &newGeometry, const QRectF asynchronously in a separate thread. The default value is false, causing the user interface thread to block while the image is loaded. Setting \a asynchronous to true is useful where - maintaining a responsive user interface is more desireable + maintaining a responsive user interface is more desirable than having images immediately visible. Note that this property is only valid for images read from the @@ -517,7 +515,6 @@ void QDeclarativeImage::paint(QPainter *p, const QStyleOptionGraphicsItem *, QWi void QDeclarativeImage::pixmapChange() { updatePaintedGeometry(); - emit pixmapChanged(); } QT_END_NAMESPACE |