/****************************************************************************
**
** Copyright (C) 2016 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$
**
****************************************************************************/

/*!
    \example webenginewidgets/minimal
    \title WebEngine Widgets Minimal Example
    \ingroup webengine-widgetexamples
    \brief Displays a web page using \QWE Widgets.

    \image minimal-example.png

    \e {WebEngine Widgets Minimal Example} demonstrates how to use
    \l{QWebEngineView} to render a web page. It shows the minimum amount of code
    needed to load and display an HTML page, and can be used as a basis for
    further experimentation.

    \include examples-run.qdocinc

    \section1 The Code

    We first define a \c commandLineUrlArgument function that returns the URL to open.
    This is either the first positional argument given on the command line, or
    \c https://www.qt.io as a fallback.

    \quotefromfile webenginewidgets/minimal/main.cpp
    \skipto #include

    \printto int main

    In the \c main function we first set the
    \l{QCoreApplication::organizationName} property. This affects the locations
    where \QWE stores persistent and cached data (see also
    \l{QWebEngineProfile::cachePath} and
    \l{QWebEngineProfile::persistentStoragePath}).

    We also set the Qt::AA_EnableHighDpiScaling attribute. This lets the web
    view automatically scale on high-dpi displays.

    Next, we instantiate a QApplication and a QWebEngineView. The URL
    to load is taken from \c commandLineUrlArgument and
    loaded by calling \l QWebEngineView::setUrl. The view widget is
    given a reasonable default size, and shown.
    Finally, QApplication::exec() launches the main event loop.

    \printuntil }

    \section1 Requirements

    The example requires a working internet connection to render
    the \l{Qt Homepage}.
    An optional system proxy should be picked up automatically.
    However, for proxies that require a username or password,
    you need to connect to
    QWebEnginePage::proxyAuthenticationRequired.

    \l{Qt WebEngine Widgets} uses the \l{Qt Quick Scene Graph} to compose the
    page. Therefore, OpenGL support is required.
*/
