このページでは

QPlace Class

QPlace クラスは、ある場所に関する一連のデータを表します。詳細...

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

パブリック関数

QPlace()
QPlace(const QPlace &other)
QPlace(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)

保護関数

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

詳細説明

「場所」とは、注目すべきスポットのことで、お気に入りのレストラン、公園、あるいは誰かの家などが挙げられます。QPlaceオブジェクトは、その場所に関するさまざまな情報を格納するコンテナとして機能し、その場所を表します。

この情報は、大きく2つの分類に分けられます

  • 詳細
  • リッチコンテンツ

場所の詳細には、名称、所在地、連絡先情報など、その場所に関する属性が含まれます。検索の結果として場所が返されると、これらの詳細情報が入力されます。帯域幅を節約するため、ユーザーが関心を持っている場合に限り、場所ごとに個別に取得可能な詳細情報がある場合もあります。QPlace::detailsFetched() 関数を呼び出すことで、利用可能な詳細情報がすべて取得済みかどうかを確認でき、取得されていない場合は、QPlaceManager::getPlaceDetails() を使用してそれらを取得できます。検索時にどの詳細情報が自動的に設定され、どの情報を個別に取得する必要があるかは、プロバイダによって異なる場合があります。詳細については、プラグインのドキュメントを参照してください。

場所のリッチコンテンツは、画像、レビュー、編集記事などの項目で構成されています。リッチコンテンツの項目数は多くなる可能性があるため、これらは場所の詳細とは別個に扱われます。これらはQPlaceManager::getPlaceContent() を通じてページ単位で取得できます。必要に応じて、コンテンツを場所に割り当て、便利なコンテナとして機能させることができます。

連絡先情報

場所の連絡先情報は、共通のcontact types セットに基づいています。場所の電話番号をすべて取得するには、次のようにします:

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

連絡先タイプは、プロバイダーが新しい連絡先タイプを導入できるようにするため、設計上、文字列値となっています。

利便性を高めるため、各タイプの最初の連絡先詳細の値を返す一連の関数が用意されています。

拡張属性

場所には、公式APIで扱われていない追加の属性が存在する場合があります。連絡先と同様に、これらの属性は共通のattribute types セットに基づいています。拡張属性を取得するには、次のようにします:

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

属性タイプは、プロバイダーが新しい属性タイプを導入できるようにするため、設計上、文字列値となっています。

コンテンツ

QPlaceオブジェクトは、画像やレビューなどのリッチコンテンツを格納するための便利なコンテナとしてのみ意図されています。コンテンツの取得は、QPlaceManager::getPlaceContent() を通じて行う必要があります。

コンテンツは、コンテンツのインデックスとコンテンツそのものの両方を含む `QPlaceContent::Collection ` として保存されます。これにより、開発者は特定のアイテムがすでに取得されているかどうかを確認し、取得されていない場合はそのコンテンツをリクエストすることができます。

出典表示

場所には、リッチテキスト形式の帰属表示文字列を指定するためのフィールドがあります。一部のプロバイダーでは、ユーザーに場所が表示される際に、この帰属表示を表示することを要求する場合があります。

カテゴリ

場所には、その場所が関連付けられていることを示すために、さまざまなカテゴリを割り当てることができます。場所を保存する際、意味を持つデータはカテゴリ ID のみであり、その他のカテゴリデータは事実上無視されます。 場所を保存する前に、そのカテゴリはすでに存在している必要があります(新しいカテゴリを作成し、それを場所に割り当て、場所を保存しても、そのカテゴリが作成されることはありません)。

保存に関する注意点

Places APIは現在、core の詳細情報の保存のみを想定して設計されています。画像やレビューなどのリッチコンテンツ、あるいは提供者や評価などの詳細情報の保存は、サポートされていないユースケースです。通常、管理者は保存時にこれらのフィールドを無視し、値が入力されている場合は警告メッセージを表示する場合があります。

Places API が保存をサポートしているのは、以下の主要な詳細情報のみです:

  • 名称
  • 場所ID
  • 所在地
  • 連絡先情報
  • アイコン
  • カテゴリ(場所を説明するタグのような名称)
  • 公開範囲

プロバイダーによっては、これらのうちの一部のみをサポートしている場合があります。詳細については、プラグインのドキュメントを参照してください。

評価、拡張属性、画像、レビュー、編集記事、サプライヤーなどのプロパティの保存は、Places API では明示的にサポートされていません。

メンバー関数のドキュメント

QPlace::QPlace()

空の場所オブジェクトを作成します。

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

dd を非公開の実装として使用して、場所オブジェクトを生成します。

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

other のコピーを作成します。

[constexpr noexcept default] QPlace::QPlace(QPlace &&other)

QPlace のインスタンスをムーブコンストラクトで生成します。

[noexcept] QPlace::~QPlace()

この場所をめちゃくちゃにしてしまう。

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

指定されたcontactType の連絡先detail を追加します。

一般的なcontact types の一覧については、QPlaceContactDetail を参照してください。

QString QPlace::attribution() const

その場所のリッチテキスト形式のクレジット文字列を返します。なお、一部のプロバイダーでは、エンドユーザーに場所が表示されるたびにクレジットを表示しなければならないという要件がある場合があります。

setAttribution()も参照してください 。

QList<QPlaceCategory> QPlace::categories() const

この場所が属するカテゴリを返します。

setCategories()も参照してください 。

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

指定されたcontactType の連絡先詳細のリストを返します。

一般的なcontact types の一覧については、QPlaceContactDetail を参照してください。

setContactDetails()も参照してください 。

QStringList QPlace::contactTypes() const

この場所の連絡先情報の種類を返します。

一般的なcontact types の一覧については、QPlaceContactDetail を参照してください。

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

場所に関連付けられたコンテンツのコレクションを返します。このコレクションはマップであり、キーはコンテンツオブジェクトのインデックス、値はコンテンツオブジェクトそのものです。

type は、取得するコンテンツの種類を指定します。

setContent()も参照してください 。

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)

指定されたtype のcontent のコレクションをその場所に追加します。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 type の最初の連絡先情報にアクセスします。メールアドレスが存在しない場合は、空の文字列が返されます。

QString QPlace::primaryFax() const

この場所の主なFAX番号を返します。この便利関数は、fax type の最初の連絡先情報にアクセスします。FAX情報が存在しない場合は、空の文字列が返されます。

QString QPlace::primaryPhone() const

この場所の主な電話番号を返します。これは、phone number type の最初の連絡先詳細にアクセスします。電話番号の詳細が存在しない場合は、空の文字列が返されます。

QUrl QPlace::primaryWebsite() const

その場所のメインのウェブサイトを返します。この便利関数は、website type の最初の連絡先情報にアクセスします。ウェブサイトが存在しない場合は、空の文字列が返されます。

QPlaceRatings QPlace::ratings() const

その場所の総合評価を返します。

setRatings()も参照してください 。

void QPlace::removeContactDetails(const QString &contactType)

指定されたcontactType の連絡先情報をすべて削除します。

QPlace::contactTypes() が呼び出された際、contactType は返されなくなります。

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 を設定します。

categories()も参照してください 。

void QPlace::setCategory(const QPlaceCategory &category)

この場所が属するcategory を1つ設定します。

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

指定されたcontactType の連絡先details を設定します。

details が空の場合、そのcontactType はその場所から削除され、QPlace::contactTypes() によって返されなくなります。

一般的なcontact types の一覧については、QPlaceContactDetail を参照してください。

contactDetails()も参照してください 。

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

指定されたtype に対して、content のコレクションを設定します。

content()も参照してください 。

void QPlace::setDetailsFetched(bool fetched)

この場所の詳細が「fetched 」として公開されているかどうかを設定します。

detailsFetched()も参照してください 。

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

指定されたattributeType を持つattribute を場所に割り当てます。指定されたattributeType がすでにその場所に存在する場合、上書きされます。

attribute がデフォルト構築されたQPlaceAttribute である場合、そのattributeType はその場所から削除されます。つまり、QPlace::extendedAttributeTypes() によって一覧表示されなくなります。

extendedAttribute()も参照してください 。

void QPlace::setIcon(const QPlaceIcon &icon)

その場所のicon を設定します。

icon()も参照してください 。

void QPlace::setLocation(const QGeoLocation &location)

その場所のlocation を設定します。

location()も参照してください 。

void QPlace::setName(const QString &name)

その場所のname を設定します。

name()も参照してください 。

void QPlace::setPlaceId(const QString &identifier)

その場所のidentifier を設定します。

placeId()も参照してください 。

void QPlace::setRatings(const QPlaceRatings &rating)

その場所の集計されたrating を設定します。

ratings()も参照してください 。

void QPlace::setSupplier(const QPlaceSupplier &supplier)

この場所のサプライヤーを「supplier 」に設定します。

supplier()も参照してください 。

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

指定されたtype のコンテンツオブジェクトのtotalCount を設定します。

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()も参照してください 。

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

この場所にother を割り当て、この場所への参照を返します。

関連する非メンバー

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

lhs がrhs と等しくない場合は true を返し、それ以外の場合は false を返します。

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

lhs がrhs と等しい場合は true を返し、そうでない場合は 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.