Spec-Zone.ru › Qt 5.11

Класс QPlace

Класс QPlace представляет собой набор данных о месте. Подробнее...

Заголовок: #include <QPlace>
qmake: QT += location
С момента: Qt 5.6
  • Список всех членов, включая унаследованные

Открытые функции

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
bool operator!=(const QPlace &other) const
QPlace & operator=(const QPlace &other)
bool operator==(const QPlace &other) const

Защищённые функции

QPlace(const QSharedDataPointer<QPlacePrivate> &dd)
QSharedDataPointer<QPlacePrivate> & d()

Подробное описание

Класс QPlace представляет собой набор данных о месте.

Место — это точка интереса, например, любимый ресторан, парк или чей-то дом. Объект QPlace представляет место, являясь контейнером для различной информации о нём.

Эту информацию можно разделить на две основные категории:

  • Детали
  • Подробное содержание

Детали места включают свойства места, такие как название, местоположение, контактная информация и так далее. Когда место возвращается во время поиска, эти детали заполняются. Иногда, чтобы сохранить пропускную способность, существуют дополнительные детали о месте, которые могут быть получены индивидуально для каждого места, если пользователь заинтересован. Функция QPlace::detailsFetched() может использоваться для проверки, были ли получены все доступные детали, а если нет, то QPlaceManager::getPlaceDetails() может быть использована для их получения. Точно какие детали заполняются во время поиска, а какие необходимо получать индивидуально, может отличаться от поставщика к поставщику. Для получения дополнительной информации см. документацию плагина.

Богатое содержимое места состоит из элементов, таких как изображения, отзывы и редакционные статьи. Вероятно, может быть много элементов богатого содержимого, поэтому они обрабатываются отдельно от деталей места. Их можно получить по страницам с помощью QPlaceManager::getPlaceContent(). При необходимости содержимое можно назначить месту, чтобы оно могло служить удобным контейнером.

Контактная информация

Контактная информация места основана на общем наборе типов контактов. Для получения всех номеров телефонов места нужно сделать следующее:

if (place.contactTypes().contains(QPlaceContactDetail::Phone)) {
    foreach (const QPlaceContactDetail &number, place.contactDetails(QPlaceContactDetail::Phone))
        qDebug() << number.label() << ":" << number.value();
}

Типы контактов по своему дизайну представляют собой строковые значения, что позволяет поставщикам вводить новые типы контактов.

Для удобства существует набор функций, возвращающих значение первого контактного детали для каждого типа.

  • QPlace::primaryPhone()
  • QPlace::primaryEmail()
  • QPlace::primaryWebsite()
  • QPlace::primaryFax()

Расширенные атрибуты

Места могут иметь дополнительные атрибуты, которые не покрываются в формальном API. Подобно контактам, атрибуты основаны на общем наборе типов атрибутов. Для получения расширенного атрибута нужно сделать следующее:

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

Типы атрибутов по своему дизайну представляют собой строковые значения, что позволяет поставщикам вводить новые типы атрибутов.

Содержимое

Объект QPlace предназначен только для удобного хранения богатого содержимого, такого как изображения, отзывы и т. д. Извлечение содержимого должно выполняться через QPlaceManager::getPlaceContent().

Содержимое хранится как QPlaceContent::Collection, которое содержит индекс содержимого и само содержимое. Это позволяет разработчикам проверять, был ли определённый элемент уже извлечён, и если нет, то запросить это содержимое.

Атрибуция

Места имеют поле для строки атрибуции форматированного текста. Некоторые поставщики могут потребовать отображения атрибуции при отображении места пользователю.

Категории

Разные категории могут быть назначены месту, чтобы указать, что место связано с этими категориями. При сохранении места единственные значимые данные — это идентификатор категории; остальная часть данных категории фактически игнорируется. Категория должна существовать до сохранения места (невозможно создать новую категорию, назначить её месту, сохранить место и ожидать создания категории).

Ограничения сохранения

API мест в настоящее время предназначен только для сохранения основных деталей. Сохранение богатого содержимого, такого как изображения и отзывы, или деталей, таких как поставщик и рейтинг, не является поддерживаемым сценарием использования. Как правило, менеджер обычно игнорирует эти поля при сохранении и может вывести сообщение об ошибке, если они заполнены.

API мест поддерживает сохранение только следующих основных данных:

  • имя
  • идентификатор места
  • местоположение
  • контактные данные
  • значок
  • категории (напоминающие теги имена для описания места)
  • сфера видимости

Возможно, поставщики поддерживают только подмножество этих данных. Подробнее см. документацию плагина.

Сохранение свойств, таких как рейтинг, расширенные атрибуты, изображения, отзывы, редакционные статьи и поставщик, явно не поддерживается API мест.

Документация функций-членов

QPlace::QPlace()

Создаёт пустой объект места.

QPlace::QPlace(const QPlace &other)

Создаёт копию other.

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

Создаёт объект места, используя dd в качестве частной реализации.

QPlace::~QPlace()

Удаляет это место.

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

Добавляет контактную detail указанного типа contactType.

См. QPlaceContactDetail для списка общих типов контактов.

QString QPlace::attribution() const

Возвращает строку атрибуции форматированного текста места. Обратите внимание, что у некоторых поставщиков может быть требование, чтобы атрибуция отображалась всякий раз, когда место отображается конечному пользователю.

См. также setAttribution().

QList<QPlaceCategory> QPlace::categories() const

Возвращает категории, к которым принадлежит это место.

См. также setCategories().

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

Возвращает список контактных данных указанного типа contactType.

См. QPlaceContactDetail для списка общих типов контактов.

См. также setContactDetails().

QStringList QPlace::contactTypes() const

Возвращает тип контактных данных этого места.

См. QPlaceContactDetail для списка общих типов контактов.

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

Возвращает коллекцию содержимого, связанного с местом. Эта коллекция — это карта, где ключ — индекс объекта содержимого, а значение — сам объект содержимого.

type указывает, какой тип содержимого нужно извлечь.

См. также setContent().

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

Возвращает указатель d.

bool QPlace::detailsFetched() const

Возвращает true, если данные этого места были извлечены, в противном случае возвращает false.

См. также setDetailsFetched().

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

Возвращает расширенный атрибут, соответствующий указанному типу attributeType. Если у места нет этого типа атрибута, возвращается QPlaceExtendedAttribute по умолчанию.

См. также setExtendedAttribute().

QStringList QPlace::extendedAttributeTypes() const

Возвращает типы расширенных атрибутов, имеющихся у этого места.

QPlaceIcon QPlace::icon() const

Возвращает значок места.

См. также setIcon().

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

Добавляет коллекцию content указанного типа type к месту. Любой индекс в content, который уже существует, перезаписывается.

bool QPlace::isEmpty() const

Возвращает булево значение, указывающее, все ли поля места пусты.

QGeoLocation QPlace::location() const

Возвращает местоположение места.

См. также setLocation().

QString QPlace::name() const

Возвращает имя места.

См. также setName().

QString QPlace::placeId() const

Возвращает идентификатор места. Идентификатор места имеет смысл только для QPlaceManager, который его сгенерировал, и не передаётся между менеджерами. Идентификатор места не гарантируется, что он будет универсально уникальным, но уникальным для менеджера, который его сгенерировал.

См. также setPlaceId().

QString QPlace::primaryEmail() const

Возвращает основной адрес электронной почты для данного места. Эта функция удобства обращается к первому контактному детали типа email. Если адресов электронной почты нет, возвращается пустая строка.

QString QPlace::primaryFax() const

Возвращает основной факс для данного места. Эта функция удобства обращается к первому контактному детали типа факс. Если деталей факса нет, возвращается пустая строка.

QString QPlace::primaryPhone() const

Возвращает основной номер телефона для этого места. Это обращение к первому контактному детали типа номер телефона. Если деталей телефона нет, возвращается пустая строка.

QUrl QPlace::primaryWebsite() const

Возвращает основной веб-сайт места. Эта удобная функция обращается к первому контактному элементу типа веб-сайт. Если веб-сайты отсутствуют, возвращается пустая строка.

QPlaceRatings QPlace::ratings() const

Возвращает агрегированный рейтинг места.

См. также setRatings().

void QPlace::removeContactDetails(const QString &contactType)

Удаляет все контактные данные заданного типа contactType.

Тип contactType больше не возвращается при вызове QPlace::contactTypes().

void QPlace::removeExtendedAttribute(const QString &attributeType)

Удаляет атрибут attributeType из места.

Атрибут больше не будет отображаться в QPlace::extendedAttributeTypes()

void QPlace::setAttribution(const QString &attribution)

Устанавливает строку attribution места.

См. также attribution().

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

Устанавливает категории, к которым принадлежит это место.

См. также categories().

void QPlace::setCategory(const QPlaceCategory &category)

Устанавливает отдельную категорию, к которой принадлежит это место.

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

Устанавливает контактные данные заданного типа contactType.

Если details пусто, то contactType удаляется из места, и больше не возвращается вызовом QPlace::contactTypes().

См. QPlaceContactDetail для списка общих типов контактов.

См. также contactDetails().

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

Устанавливает коллекцию content для заданного типа type.

См. также content().

void QPlace::setDetailsFetched(bool fetched)

Устанавливает, были ли fetched детали этого места.

См. также detailsFetched().

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

Назначает атрибут attribute заданного типа attributeType месту. Если заданный attributeType уже существует в месте, он перезаписывается.

Если attribute — это объект QPlaceAttribute по умолчанию, то attributeType удаляется из места, и он больше не будет перечислен в QPlace::extendedAttributeTypes().

См. также extendedAttribute().

void QPlace::setIcon(const QPlaceIcon &icon)

Устанавливает иконку места.

См. также icon().

void QPlace::setLocation(const QGeoLocation &location)

Устанавливает местоположение места.

См. также location().

void QPlace::setName(const QString &name)

Устанавливает имя места.

См. также name().

void QPlace::setPlaceId(const QString &identifier)

Устанавливает идентификатор места.

См. также placeId().

void QPlace::setRatings(const QPlaceRatings &rating)

Устанавливает агрегированный рейтинг места.

См. также ratings().

void QPlace::setSupplier(const QPlaceSupplier &supplier)

Устанавливает поставщика этого места в supplier.

См. также supplier().

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

Устанавливает общее количество объектов контента заданного типа type.

См. также totalContentCount().

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

Устанавливает видимость места в visibility.

См. также visibility().

QPlaceSupplier QPlace::supplier() const

Возвращает поставщика этого места.

См. также setSupplier().

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

Возвращает общее количество объектов контента заданного типа type. Это общее количество указывает, сколько должно быть у менеджера/поставщика. (В отличие от того, сколько объектов сейчас присвоено этому экземпляру места).

Отрицательное значение указывает, что общее количество неизвестно. По умолчанию общее количество контента равно 0.

См. также setTotalContentCount().

QLocation::Visibility QPlace::visibility() const

Возвращает видимость места.

По умолчанию видимость нового места — QtLocatin::Unspecified. Если место сохраняется с неопределённой видимостью, бэкенд выбирает соответствующую видимость по умолчанию при сохранении.

См. также setVisibility().

bool QPlace::operator!=(const QPlace &other) const

Возвращает true, если other не равно этому месту, иначе возвращает false.

QPlace &QPlace::operator=(const QPlace &other)

Присваивает other этому месту и возвращает ссылку на это место.

bool QPlace::operator==(const QPlace &other) const

Возвращает true, если other равно этому месту, иначе возвращает false.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qplace.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API