<?xml version="1.0" encoding="UTF-8"?>
<!--
/****************************************************************************
**
** Copyright (C) 2016 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Creator.
**
** 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 General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 as published by the Free Software
** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
****************************************************************************/

Custom project wizard configuration example file. Note that by convention,
the project file goes last.
The "class" and "firstpage" attributes specify that it is a Qt 4 wizard and
leave room for the Qt 4 target page.
-->
<wizard version="1" kind="project"
        class="qmakeproject" firstpage="10"
        id="QtQuick2ExtensionPlugin" category="G.Library"
        featuresRequired="QtSupport.Wizards.FeatureQtQuick,QtSupport.Wizards.FeatureQtQuick.2">
    <icon>lib.png</icon>
    <description>Creates a C++ plugin to load extensions dynamically into applications using the QQmlEngine class. Requires Qt 5.0 or newer.</description>
    <displayname>Qt Quick 2 Extension Plugin</displayname>
    <displaycategory>Library</displaycategory>
    <files>
        <file source="qmldir" target="qmldir"/>
        <file source="plugin.h" target="%ProjectName:l%_plugin.%CppHeaderSuffix%"/>
        <file source="plugin.cpp" target="%ProjectName:l%_plugin.%CppSourceSuffix%"/>
        <file source="object.h" target="%ObjectName:l%.%CppHeaderSuffix%"/>
        <file source="object.cpp" target="%ObjectName:l%.%CppSourceSuffix%" openeditor="true"/>
        <file source="project.pro" target="%ProjectName:l%.pro" openproject="true"/>
    </files>
    <!-- Create a 2nd wizard page with parameters -->
    <fieldpagetitle>Custom QML Extension Plugin Parameters</fieldpagetitle>
    <fields>
        <field mandatory="true" name="ObjectName">
            <fieldcontrol class="QLineEdit" validator='^[A-Za-z0-9_]+$'  defaulttext="MyItem"/>
            <fielddescription>Object class-name:</fielddescription>
        </field>
        <field mandatory="true" name="Uri">
            <fieldcontrol class="QLineEdit" validator='^[A-Za-z0-9]+([A-Za-z0-9-]*[A-Za-z0-9]+)?(\.[A-Za-z0-9]+([-A-Za-z0-9]*[A-Za-z0-9]+)?)*$' defaulttext="com.mycompany.qmlcomponents"/>
            <fielddescription>URI:</fielddescription>
        </field>
    </fields>
    <validationrules>
        <validationrule condition='"%ObjectName%" != "%ProjectName%_plugin"'>
            <message>The project name and the object class-name cannot be the same.</message>
        </validationrule>
    </validationrules>
</wizard>
