GenericMakeStepConfigWidget::GenericMakeStepConfigWidget(GenericMakeStep *makeStep) : m_makeStep(makeStep) { m_ui = new Ui::GenericMakeStep; m_ui->setupUi(this); // TODO update this list also on rescans of the GenericLists.txt GenericProject *pro = m_makeStep->genericBuildConfiguration()->genericTarget()->genericProject(); foreach (const QString &target, pro->buildTargets()) { QListWidgetItem *item = new QListWidgetItem(target, m_ui->targetsList); item->setFlags(item->flags() | Qt::ItemIsUserCheckable); item->setCheckState(m_makeStep->buildsTarget(item->text()) ? Qt::Checked : Qt::Unchecked); } m_ui->makeLineEdit->setText(m_makeStep->m_makeCommand); m_ui->makeArgumentsLineEdit->setText(m_makeStep->m_makeArguments); updateMakeOverrrideLabel(); updateDetails(); connect(m_ui->targetsList, SIGNAL(itemChanged(QListWidgetItem*)), this, SLOT(itemChanged(QListWidgetItem*))); connect(m_ui->makeLineEdit, SIGNAL(textEdited(QString)), this, SLOT(makeLineEditTextEdited())); connect(m_ui->makeArgumentsLineEdit, SIGNAL(textEdited(QString)), this, SLOT(makeArgumentsLineEditTextEdited())); connect(ProjectExplorer::ProjectExplorerPlugin::instance(), SIGNAL(settingsChanged()), this, SLOT(updateMakeOverrrideLabel())); connect(ProjectExplorer::ProjectExplorerPlugin::instance(), SIGNAL(settingsChanged()), this, SLOT(updateDetails())); }
GenericTarget *GenericTargetFactory::create(ProjectExplorer::Project *parent, const QString &id) { if (!canCreate(parent, id)) return 0; GenericProject *genericproject = static_cast<GenericProject *>(parent); GenericTarget *t = new GenericTarget(genericproject); // Set up BuildConfiguration: GenericBuildConfiguration *bc = new GenericBuildConfiguration(t); bc->setDisplayName("all"); ProjectExplorer::BuildStepList *buildSteps = bc->stepList(ProjectExplorer::Constants::BUILDSTEPS_BUILD); ProjectExplorer::BuildStepList *cleanSteps = bc->stepList(ProjectExplorer::Constants::BUILDSTEPS_CLEAN); GenericMakeStep *makeStep = new GenericMakeStep(buildSteps); buildSteps->insertStep(0, makeStep); makeStep->setBuildTarget("all", /* on = */ true); GenericMakeStep *cleanMakeStep = new GenericMakeStep(cleanSteps); cleanSteps->insertStep(0, cleanMakeStep); cleanMakeStep->setBuildTarget("clean", /* on = */ true); cleanMakeStep->setClean(true); bc->setBuildDirectory(genericproject->projectDirectory()); t->addBuildConfiguration(bc); t->addDeployConfiguration(t->createDeployConfiguration(ProjectExplorer::Constants::DEFAULT_DEPLOYCONFIGURATION_ID)); // Add a runconfiguration. The CustomExecutableRC one will query the user // for its settings, so it is a good choice here. t->addRunConfiguration(new ProjectExplorer::CustomExecutableRunConfiguration(t)); return t; }
void GenericProjectPlugin::editFiles() { GenericProject *genericProject = static_cast<GenericProject *>(m_contextMenuProject); SelectableFilesDialogEditFiles sfd(genericProject->projectFilePath().toFileInfo().path(), genericProject->files(), ICore::mainWindow()); if (sfd.exec() == QDialog::Accepted) genericProject->setFiles(sfd.selectedFiles()); }
QString GenericMakeStep::makeCommand() const { QString command = m_makeCommand; if (command.isEmpty()) { GenericProject *pro = genericBuildConfiguration()->genericTarget()->genericProject(); if (ProjectExplorer::ToolChain *toolChain = pro->toolChain()) command = toolChain->makeCommand(); else command = QLatin1String("make"); } return command; }
GenericMakeStepConfigWidget::GenericMakeStepConfigWidget(GenericMakeStep *makeStep) : m_makeStep(makeStep) { m_ui = new Ui::GenericMakeStep; m_ui->setupUi(this); GenericProject *pro = static_cast<GenericProject *>(m_makeStep->target()->project()); foreach (const QString &target, pro->buildTargets()) { QListWidgetItem *item = new QListWidgetItem(target, m_ui->targetsList); item->setFlags(item->flags() | Qt::ItemIsUserCheckable); item->setCheckState(m_makeStep->buildsTarget(item->text()) ? Qt::Checked : Qt::Unchecked); } m_ui->makeLineEdit->setText(m_makeStep->m_makeCommand); m_ui->makeArgumentsLineEdit->setText(m_makeStep->m_makeArguments); updateMakeOverrrideLabel(); updateDetails(); connect(m_ui->targetsList, &QListWidget::itemChanged, this, &GenericMakeStepConfigWidget::itemChanged); connect(m_ui->makeLineEdit, &QLineEdit::textEdited, this, &GenericMakeStepConfigWidget::makeLineEditTextEdited); connect(m_ui->makeArgumentsLineEdit, &QLineEdit::textEdited, this, &GenericMakeStepConfigWidget::makeArgumentsLineEditTextEdited); connect(ProjectExplorerPlugin::instance(), SIGNAL(settingsChanged()), this, SLOT(updateMakeOverrrideLabel())); connect(ProjectExplorerPlugin::instance(), SIGNAL(settingsChanged()), this, SLOT(updateDetails())); connect(m_makeStep->target(), SIGNAL(kitChanged()), this, SLOT(updateMakeOverrrideLabel())); connect(pro, &GenericProject::environmentChanged, this, &GenericMakeStepConfigWidget::updateMakeOverrrideLabel); connect(pro, &GenericProject::environmentChanged, this, &GenericMakeStepConfigWidget::updateDetails); }