/**************************************************************************** ** ** 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. ** ****************************************************************************/ #include "guiappwizarddialog.h" #include "filespage.h" #include namespace QmakeProjectManager { namespace Internal { GuiAppWizardDialog::GuiAppWizardDialog(const Core::BaseFileWizardFactory *factory, const QString &templateName, const QIcon &icon, QWidget *parent, const Core::WizardDialogParameters ¶meters) : BaseQmakeProjectWizardDialog(factory, false, parent, parameters), m_filesPage(new FilesPage) { setWindowIcon(icon); setWindowTitle(templateName); setSelectedModules(QLatin1String("core gui"), true); setIntroDescription(tr("This wizard generates a Qt Widgets Application " "project. The application derives by default from QApplication " "and includes an empty widget.")); addModulesPage(); if (!parameters.extraValues().contains(QLatin1String(ProjectExplorer::Constants::PROJECT_KIT_IDS))) addTargetSetupPage(); m_filesPage->setFormInputCheckable(true); m_filesPage->setClassTypeComboVisible(false); addPage(m_filesPage); addExtensionPages(extensionPages()); } void GuiAppWizardDialog::setBaseClasses(const QStringList &baseClasses) { m_filesPage->setBaseClassChoices(baseClasses); if (!baseClasses.empty()) m_filesPage->setBaseClassName(baseClasses.front()); } void GuiAppWizardDialog::setSuffixes(const QString &header, const QString &source, const QString &form) { m_filesPage->setSuffixes(header, source, form); } void GuiAppWizardDialog::setLowerCaseFiles(bool l) { m_filesPage->setLowerCaseFiles(l); } QtProjectParameters GuiAppWizardDialog::projectParameters() const { QtProjectParameters rc; rc.type = QtProjectParameters::GuiApp; rc.flags |= QtProjectParameters::WidgetsRequiredFlag; rc.fileName = projectName(); rc.path = path(); rc.selectedModules = selectedModulesList(); rc.deselectedModules = deselectedModulesList(); return rc; } GuiAppParameters GuiAppWizardDialog::parameters() const { GuiAppParameters rc; rc.className = m_filesPage->className(); rc.baseClassName = m_filesPage->baseClassName(); rc.sourceFileName = m_filesPage->sourceFileName(); rc.headerFileName = m_filesPage->headerFileName(); rc.formFileName = m_filesPage->formFileName(); rc.designerForm = m_filesPage->formInputChecked(); if (isQtPlatformSelected("Android.Device.Type")) { // FIXME: Is this really necessary? rc.isMobileApplication = true; rc.widgetWidth = 800; rc.widgetHeight = 480; } return rc; } } // namespace Internal } // namespace QmakeProjectManager