EditorialModel QML Type

The EditorialModel type provides a model of place editorials. More...

Import Statement: import QtLocation 6.7
Since: QtLocation 5.5

Properties

Detailed Description

The EditorialModel is a read-only model used to fetch editorials related to a Place. Binding a Place via EditorialModel::place initiates an initial fetch of editorials. The model performs fetches incrementally and is intended to be used in conjunction with a View such as a ListView. When the View reaches the last of the editorials currently in the model, a fetch is performed to retrieve more if they are available. The View is automatically updated as the editorials are received. The number of editorials which are fetched at a time is specified by the batchSize property. The total number of editorials available can be accessed via the totalCount property.

The model returns data for the following roles:

RoleTypeDescription
suppliersupplierThe supplier of the content.
useruserThe user who contributed the content.
attributionstringAttribution text which must be displayed when displaying the content.
urlurlThe URL of the image.
imageIdstringThe identifier of the image.
mimeTypestringThe MIME type of the image.
textstringThe editorial's textual description of the place. It can be either rich (HTML based) text or plain text depending upon the provider.
titlestringThe title of the editorial.
languagestringThe language that the editorial is written in.
dateTimedatetimeThe date and time that the review was posted.
textstringThe review's textual description of the place. It can be either rich (HTML based) text or plain text depending on the provider.
languagestringThe language that the review is written in.
ratingrealThe rating that the reviewer gave to the place.
reviewIdstringThe identifier of the review.
titlestringThe title of the review.

Example

The following example shows how to display editorials for a place:

import QtQuick
import QtPositioning
import QtLocation

EditorialModel {
    id: editorialModel
    batchSize: 3
    place: place
}

ListView {
    model: editorialModel
    delegate: Item {
        anchors.fill: parent

        Column {
            width: parent.width
            clip: true

            Text {
                text: title
                width: parent.width
                wrapMode: Text.WordWrap
                font.pixelSize: 24
            }

            Text {
                text: text
                width: parent.width
                wrapMode: Text.WordWrap
                font.pixelSize: 20
            }

            Row {
                Image {
                    width: 16
                    height: 16

                    source: supplier.icon.url(Qt.size(width, height), Icon.List)
                }

                Text {
                    text: "Provided by " + supplier.name
                    font.pixelSize: 16
                }
            }

            Text {
                text: "Contributed by " + user.name
                font.pixelSize: 16
            }

            Text {
                text: attribution
                font.pixelSize: 8
            }
        }
    }
}

Property Documentation

batchSize : int

This property holds the batch size to use when fetching more editorials items.


place : Place

This property holds the Place that the editorials are for.


totalCount : int

This property holds the total number of editorial items for the place.


© 2024 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.