/****************************************************************************
**
** Copyright (C) 2015 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the documentation of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:FDL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU Free Documentation License Usage
** Alternatively, this file may be used under the terms of the GNU Free
** Documentation License version 1.3 as published by the Free Software
** Foundation and appearing in the file included in the packaging of
** this file. Please review the following information to ensure
** the GNU Free Documentation License version 1.3 requirements
** will be met: https://www.gnu.org/licenses/fdl-1.3.html.
** $QT_END_LICENSE$
**
****************************************************************************/

/*!
    \page qtcontacts-index.html
    \title Qt Contacts
    \brief Qt Contacts enable you to manage contact information, whether it is
    stored locally or remotely.

    A contact is the digital representation of a person, group, or entity that
    is stored in a platform-specific manner. A single contact may consist of
    details that are stored in several different datastores, and that are only
    relevant in different contexts.

    Developers can write platform-independent implementations of a contact
    manager engine, which may unify one or more platform-specific contact
    backends. This enables client applications to request contact data from
    local or remote backends in a platform-independent and datastore-agnostic
    manner.

    Client applications can retrieve, modify, or delete contacts, as well as
    sort or filter contacts and access them as a list. In addition, they can
    import and export contacts in vCard format.

    \section1 Getting Started

    To include the definitions of the module's classes, use the following
    directive:

    \snippet doc_src_qtcontacts.cpp include

    To use the C++ library in your application, add the following configuration
    option to your \c .pro file:

    \snippet doc_src_qtcontacts.pro contacts project modification

    To use the QML types in your application, add the following import statement
    to your \c .qml file:

    \snippet moduleimports.qml Contacts import

    \section1 Related Information

        \section2 Guides
        \list
        \li \l{Qt Contacts Overview}
        \li \l{Qt Contacts API Usage}
        \li \l{Qt Contacts Action API}
        \li \l{Qt Contacts Asynchronous API}
        \li \l{Qt Contacts Synchronous API}
        \li \l{Qt Contacts Manager Engines}
        \li \l{Qt Contacts C++ API} - overview of the C++ API
        \li \l{Qt Contacts QML API} - overview of the QML API
        \endlist
        \section2 References

        \list
        \li \l{Qt Contacts C++ Classes} - list of C++ classes
        \li \l{Qt Contacts QML Types} - list of QML types
        \endlist

        \section2 Examples
        \list
        \li \l{qmlcontactslistview}{Qt Quick Contacts List view}

            Import contact information from vCard files, select a backend for
            volatile memory or persistent storage, as well as list, add, edit,
            and remove contacts.
        \endlist
*/
