En esta página

QPlace Class

La clase QPlace representa un conjunto de datos sobre un lugar. Más...

Header: #include <QPlace>
qmake: QT += location

Funciones públicas

QPlace()
QPlace(const QPlace &other)
~QPlace()
void appendContactDetail(const QString &contactType, const QPlaceContactDetail &detail)
QString attribution() const
QList<QPlaceCategory> categories() const
QList<QPlaceContactDetail> contactDetails(const QString &contactType) const
QStringList contactTypes() const
QPlaceContent::Collection content(QPlaceContent::Type type) const
bool detailsFetched() const
QPlaceAttribute extendedAttribute(const QString &attributeType) const
QStringList extendedAttributeTypes() const
QPlaceIcon icon() const
void insertContent(QPlaceContent::Type type, const QPlaceContent::Collection &content)
bool isEmpty() const
QGeoLocation location() const
QString name() const
QString placeId() const
QString primaryEmail() const
QString primaryFax() const
QString primaryPhone() const
QUrl primaryWebsite() const
QPlaceRatings ratings() const
void removeContactDetails(const QString &contactType)
void removeExtendedAttribute(const QString &attributeType)
void setAttribution(const QString &attribution)
void setCategories(const QList<QPlaceCategory> &categories)
void setCategory(const QPlaceCategory &category)
void setContactDetails(const QString &contactType, QList<QPlaceContactDetail> details)
void setContent(QPlaceContent::Type type, const QPlaceContent::Collection &content)
void setDetailsFetched(bool fetched)
void setExtendedAttribute(const QString &attributeType, const QPlaceAttribute &attribute)
void setIcon(const QPlaceIcon &icon)
void setLocation(const QGeoLocation &location)
void setName(const QString &name)
void setPlaceId(const QString &identifier)
void setRatings(const QPlaceRatings &rating)
void setSupplier(const QPlaceSupplier &supplier)
void setTotalContentCount(QPlaceContent::Type type, int totalCount)
void setVisibility(QLocation::Visibility visibility)
QPlaceSupplier supplier() const
int totalContentCount(QPlaceContent::Type type) const
QLocation::Visibility visibility() const
QPlace &operator=(const QPlace &other)

Funciones protegidas

QPlace(const QSharedDataPointer<QPlacePrivate> &dd)
bool operator!=(const QPlace &lhs, const QPlace &rhs)
bool operator==(const QPlace &lhs, const QPlace &rhs)

Descripción detallada

Un lugar es un punto de interés, puede ser un restaurante favorito, un parque o la casa de alguien. Un objeto QPlace representa un lugar actuando como contenedor de diversa información sobre ese lugar.

Esta información puede dividirse en dos grandes categorías

  • Detalles
  • Contenido enriquecido

Los detalles del lugar consisten en propiedades del lugar, como el nombre, la ubicación, la información de contacto, etc. Cuando se devuelve un lugar durante una búsqueda, estos detalles se rellenan. A veces, para ahorrar ancho de banda, hay más detalles sobre el lugar que pueden recuperarse lugar por lugar, si el usuario está interesado. Se puede consultar la función QPlace::detailsFetched() para ver si se han obtenido todos los detalles disponibles y, si no es así, se puede utilizar QPlaceManager::getPlaceDetails() para recuperarlos. Los detalles que se rellenan durante una búsqueda y los que deben obtenerse individualmente pueden variar de un proveedor a otro. Para más información, consulte la documentación del complemento.

El contenido enriquecido de un lugar consiste en elementos como imágenes, reseñas y editoriales. Potencialmente puede haber muchos elementos de contenido enriquecido, por lo que se tratan por separado de los detalles del lugar. Pueden recuperarse de forma paginada a través de QPlaceManager::getPlaceContent(). Si es necesario, el contenido puede asignarse a un lugar para que actúe como un contenedor conveniente.

Información de contacto

La información de contacto de un lugar se basa en un conjunto común de contact types. Para recuperar todos los números de teléfono de un lugar, habría que hacer:

if (place.contactTypes().contains(QPlaceContactDetail::Phone)) { for(const QPlaceContactDetail &number: place.contactDetails(QPlaceContactDetail::Teléfono))        qDebug() << number.label() << ":" << number.value();
}

Los tipos de contacto son valores de cadena por diseño para permitir a los proveedores introducir nuevos tipos de contacto.

Por comodidad, hay un conjunto de funciones que devuelven el valor del primer detalle de contacto de cada tipo.

Atributos ampliados

Los lugares pueden tener atributos adicionales que no están cubiertos por la API formal. De forma similar a los contactos, los atributos se basan en un conjunto común de attribute types. Para recuperar un atributo ampliado se debe hacer lo siguiente:

if (place.extendedAttributeTypes().contains(QPlaceAttribute::Horario))    qDebug() << place.extendedAttribute(QPlaceAttribute::OpeningHours).text();

Los tipos de atributos son valores de cadena por diseño para permitir a los proveedores introducir nuevos tipos de atributos.

Contenido

El objeto QPlace sólo pretende ser un contenedor conveniente para albergar contenido enriquecido como imágenes, reseñas, etc. La recuperación del contenido debe realizarse a través de QPlaceManager::getPlaceContent().

El contenido se almacena como un QPlaceContent::Collection que contiene tanto el índice del contenido, así como el propio contenido. Esto permite a los desarrolladores comprobar si un elemento concreto ya ha sido recuperado y, en caso contrario, solicitar ese contenido.

Atribución

Los lugares disponen de un campo para una cadena de atribución de texto enriquecido. Algunos proveedores pueden exigir que se muestre la atribución cuando se muestra un lugar a un usuario.

Categorías

Se pueden asignar diferentes categorías a un lugar para indicar que el lugar está asociado a esas categorías. Cuando se guarda un lugar, el único dato significativo es el id de la categoría, el resto de los datos de la categoría se ignoran. La categoría debe existir antes de guardar el lugar (no es posible crear una nueva categoría, asignarla al lugar, guardar el lugar y esperar que se cree la categoría).

Advertencias sobre el almacenamiento

La API de Lugares está diseñada actualmente para guardar sólo los detalles de core. Guardar contenido enriquecido como imágenes y reseñas o detalles como proveedor y valoración no es un caso de uso soportado. Normalmente, un gestor ignorará estos campos al guardarlos y puede generar un mensaje de advertencia si se rellenan.

La API de Lugares sólo permite guardar los siguientes datos básicos:

  • nombre
  • Id. del lugar
  • ubicación
  • datos de contacto
  • icono
  • categorías (nombres similares a etiquetas para describir un lugar)
  • ámbito de visibilidad

Es posible que los proveedores sólo admitan un subconjunto de estas opciones. Consulte la documentación del complemento para obtener más información.

La API de Lugares no admite explícitamente el almacenamiento de propiedades como la calificación, los atributos extendidos, las imágenes, las reseñas, las editoriales y el proveedor.

Documentación de las funciones de los miembros

QPlace::QPlace()

Construye un objeto de lugar vacío.

[protected] QPlace::QPlace(const QSharedDataPointer<QPlacePrivate> &dd)

Construye un objeto place utilizando dd como implementación privada.

[noexcept] QPlace::QPlace(const QPlace &other)

Construye una copia de other.

[noexcept] QPlace::~QPlace()

Destruye este lugar.

void QPlace::appendContactDetail(const QString &contactType, const QPlaceContactDetail &detail)

Añade un contacto detail de un contactType especificado.

Consulte QPlaceContactDetail para obtener una lista de los más comunes contact types.

QString QPlace::attribution() const

Devuelve una cadena de atribución de texto enriquecido del lugar. Tenga en cuenta que algunos proveedores pueden exigir que se muestre la atribución siempre que se muestre un lugar a un usuario final.

Véase también setAttribution().

QList<QPlaceCategory> QPlace::categories() const

Devuelve las categorías a las que pertenece este lugar.

Véase también setCategories().

QList<QPlaceContactDetail> QPlace::contactDetails(const QString &contactType) const

Devuelve una lista de los datos de contacto del contactType especificado .

Consulte QPlaceContactDetail para obtener una lista de contact types comunes.

Véase también setContactDetails().

QStringList QPlace::contactTypes() const

Devuelve el tipo de datos de contacto que tiene este lugar.

Consulte QPlaceContactDetail para obtener una lista de los más comunes contact types.

QPlaceContent::Collection QPlace::content(QPlaceContent::Type type) const

Devuelve una colección de contenidos asociados a un lugar. Esta colección es un mapa cuya clave es el índice del objeto de contenido y cuyo valor es el propio objeto de contenido.

La dirección type especifica qué tipo de contenido debe recuperarse.

Véase también setContent().

bool QPlace::detailsFetched() const

Devuelve true si se han obtenido los detalles de este lugar, en caso contrario devuelve false.

Véase también setDetailsFetched().

QPlaceAttribute QPlace::extendedAttribute(const QString &attributeType) const

Devuelve el atributo ampliado correspondiente a la dirección attributeType especificada. Si el lugar no tiene ese tipo de atributo en particular, se devuelve un QPlaceExtendedAttribute construido por defecto.

Véase también setExtendedAttribute().

QStringList QPlace::extendedAttributeTypes() const

Devuelve los tipos de atributos extendidos que tiene este lugar.

QPlaceIcon QPlace::icon() const

Devuelve el icono del lugar.

Véase también setIcon().

void QPlace::insertContent(QPlaceContent::Type type, const QPlaceContent::Collection &content)

Añade una colección de content del type dado al lugar. Se sobrescribe cualquier índice de content que ya exista.

bool QPlace::isEmpty() const

Devuelve un booleano que indica si todos los campos del lugar están vacíos o no.

QGeoLocation QPlace::location() const

Devuelve la ubicación del lugar.

Véase también setLocation().

QString QPlace::name() const

Devuelve el nombre del lugar.

Véase también setName().

QString QPlace::placeId() const

Devuelve el identificador del lugar. El identificador de lugar sólo es significativo para el QPlaceManager que lo generó y no es transferible entre gestores. No se garantiza que el identificador de lugar sea universalmente único, sino único para el gestor que lo generó.

Véase también setPlaceId().

QString QPlace::primaryEmail() const

Devuelve la dirección de correo electrónico principal de este lugar. Esta función de conveniencia accede al primer detalle de contacto de email type. Si no existen direcciones de correo electrónico, se devuelve una cadena vacía.

QString QPlace::primaryFax() const

Devuelve el número de fax principal de este lugar. Esta cómoda función accede al primer detalle de contacto de fax type. Si no existe ningún detalle de fax, se devuelve una cadena vacía.

QString QPlace::primaryPhone() const

Devuelve el número de teléfono principal de este lugar. Se accede así al primer dato de contacto de phone number type. Si no existen datos telefónicos, se devuelve una cadena vacía.

QUrl QPlace::primaryWebsite() const

Devuelve el sitio web principal del lugar. Esta función de conveniencia accede al primer dato de contacto de website type. Si no existe ningún sitio web, se devuelve una cadena vacía.

QPlaceRatings QPlace::ratings() const

Devuelve una valoración agregada del lugar.

Véase también setRatings().

void QPlace::removeContactDetails(const QString &contactType)

Elimina todos los datos de contacto de un determinado contactType.

El contactType ya no se devuelve cuando se llama a QPlace::contactTypes().

void QPlace::removeExtendedAttribute(const QString &attributeType)

Elimina el atributo de attributeType del lugar.

El atributo ya no aparecerá en QPlace::extendedAttributeTypes()

void QPlace::setAttribution(const QString &attribution)

Establece la cadena attribution del lugar.

Véase también attribution().

void QPlace::setCategories(const QList<QPlaceCategory> &categories)

Establece la dirección categories a la que pertenece este lugar.

Véase también categories().

void QPlace::setCategory(const QPlaceCategory &category)

Establece un único category al que pertenece este lugar.

void QPlace::setContactDetails(const QString &contactType, QList<QPlaceContactDetail> details)

Establece el contacto details de un contactType especificado.

Si details está vacío, entonces el contactType se elimina del lugar de tal manera que ya no es devuelto por QPlace::contactTypes().

Véase QPlaceContactDetail para una lista de contact types comunes.

Véase también contactDetails().

void QPlace::setContent(QPlaceContent::Type type, const QPlaceContent::Collection &content)

Establece una colección de content para el type dado.

Véase también content().

void QPlace::setDetailsFetched(bool fetched)

Establece si los detalles de este lugar han sido fetched o no.

Véase también detailsFetched().

void QPlace::setExtendedAttribute(const QString &attributeType, const QPlaceAttribute &attribute)

Asigna un attribute del attributeType dado a un lugar. Si el attributeType dado ya existe en el lugar, entonces se sobrescribe.

Si attribute es un QPlaceAttribute construido por defecto, entonces el attributeType es eliminado del lugar, lo que significa que no será listado por QPlace::extendedAttributeTypes().

Véase también extendedAttribute().

void QPlace::setIcon(const QPlaceIcon &icon)

Establece la dirección icon del lugar.

Véase también icon().

void QPlace::setLocation(const QGeoLocation &location)

Establece la dirección location del lugar.

Véase también location().

void QPlace::setName(const QString &name)

Establece la dirección name del lugar.

Véase también name().

void QPlace::setPlaceId(const QString &identifier)

Establece la dirección identifier del lugar.

Véase también placeId().

void QPlace::setRatings(const QPlaceRatings &rating)

Establece la dirección rating agregada del lugar.

Véase también ratings().

void QPlace::setSupplier(const QPlaceSupplier &supplier)

Establece el proveedor de este lugar en supplier.

Véase también supplier().

void QPlace::setTotalContentCount(QPlaceContent::Type type, int totalCount)

Establece el totalCount de los objetos de contenido del type dado.

Véase también totalContentCount().

void QPlace::setVisibility(QLocation::Visibility visibility)

Establece la visibilidad del lugar en visibility.

Véase también visibility().

QPlaceSupplier QPlace::supplier() const

Devuelve el proveedor de este lugar.

Véase también setSupplier().

int QPlace::totalContentCount(QPlaceContent::Type type) const

Devuelve el recuento total de objetos de contenido de la dirección type. Este recuento total indica cuántos debe tener disponibles el gestor/proveedor. (En contraposición a cuántos objetos tiene asignados actualmente esta instancia de lugar).

Un recuento negativo indica que se desconoce el número total de objetos. Por defecto, el recuento total de contenido se establece en 0.

Véase también setTotalContentCount().

QLocation::Visibility QPlace::visibility() const

Devuelve la visibilidad del lugar.

La visibilidad por defecto de un nuevo lugar es QtLocatin::Unspecified visibility. Si un lugar se guarda con una visibilidad no especificada, el backend elige una visibilidad por defecto apropiada para usarla al guardarlo.

Véase también setVisibility().

[noexcept] QPlace &QPlace::operator=(const QPlace &other)

Asigna other a este lugar y devuelve una referencia a este lugar.

No miembros relacionados

[noexcept] bool operator!=(const QPlace &lhs, const QPlace &rhs)

Devuelve true si lhs no es igual a rhs, en caso contrario devuelve false.

[noexcept] bool operator==(const QPlace &lhs, const QPlace &rhs)

Devuelve true si lhs es igual a rhs, en caso contrario devuelve false.

© 2026 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.