2
* Copyright 2013 Canonical Ltd.
4
* This program is free software; you can redistribute it and/or modify
5
* it under the terms of the GNU Lesser General Public License as published by
6
* the Free Software Foundation; version 2.1.
8
* This program is distributed in the hope that it will be useful,
9
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
* GNU Lesser General Public License for more details.
13
* You should have received a copy of the GNU Lesser General Public License
14
* along with this program. If not, see <http://www.gnu.org/licenses/>.
16
* Author: Juhapekka Piiroinen <juhapekka.piiroinen@canonical.com>
19
#ifndef UBUNTURUNCONFIGURATIONFACTORY_H
20
#define UBUNTURUNCONFIGURATIONFACTORY_H
24
#include "ubuntuproject.h"
25
#include "ubuntuconstants.h"
26
#include "ubunturunconfiguration.h"
28
#include <coreplugin/actionmanager/command.h>
29
#include <coreplugin/actionmanager/actioncontainer.h>
30
#include <coreplugin/actionmanager/actionmanager.h>
31
#include <coreplugin/coreconstants.h>
32
#include <coreplugin/icontext.h>
33
#include <coreplugin/mimedatabase.h>
34
#include <coreplugin/messagemanager.h>
35
#include <coreplugin/icore.h>
36
#include <coreplugin/idocument.h>
37
#include <coreplugin/documentmanager.h>
38
#include <projectexplorer/iprojectmanager.h>
39
#include <projectexplorer/projectexplorerconstants.h>
40
#include <projectexplorer/projectexplorer.h>
41
#include <projectexplorer/projectnodes.h>
42
#include <projectexplorer/project.h>
43
#include <projectexplorer/kitmanager.h>
44
#include <projectexplorer/target.h>
45
#include <projectexplorer/session.h>
46
#include <projectexplorer/runconfiguration.h>
47
#include <projectexplorer/applicationlauncher.h>
52
class UbuntuRunConfigurationFactory : public ProjectExplorer::IRunConfigurationFactory
56
explicit UbuntuRunConfigurationFactory() {
57
setObjectName(QLatin1String("UbuntuRunConfigurationFactory"));
60
QList<Core::Id> availableCreationIds(ProjectExplorer::Target *parent) const;
61
QString displayNameForId(const Core::Id id) const;
63
bool canCreate(ProjectExplorer::Target *parent, const Core::Id id) const;
64
ProjectExplorer::RunConfiguration *create(ProjectExplorer::Target *parent, const Core::Id id);
65
bool canRestore(ProjectExplorer::Target *parent, const QVariantMap &map) const;
66
ProjectExplorer::RunConfiguration *restore(ProjectExplorer::Target *parent, const QVariantMap &map);
67
bool canClone(ProjectExplorer::Target *parent, ProjectExplorer::RunConfiguration *source) const;
68
ProjectExplorer::RunConfiguration *clone(ProjectExplorer::Target *parent, ProjectExplorer::RunConfiguration *source);
71
bool canHandle(ProjectExplorer::Target *parent) const;
77
#endif // UBUNTURUNCONFIGURATIONFACTORY_H