Project Class
(ProjectExplorer::Project)The Project class implements a project node in the project explorer. More...
Header: | #include <Project> |
Public Types
enum | FilesMode { SourceFiles, GeneratedFiles, AllFiles } |
enum | ModelRoles { FilePathRole, EnabledRole, isParsingRole } |
enum | RestoreResult { Ok, Error, UserAbort } |
Public Functions
Project(const QString &mimeType, const Utils::FileName &fileName, const ProjectDocument::ProjectCallback &callback = {}) | |
~Project() override | |
void | aboutToRemoveProjectConfiguration(ProjectExplorer::ProjectConfiguration *pc) |
void | aboutToRemoveTarget(ProjectExplorer::Target *target) |
void | aboutToSaveSettings() |
void | activeProjectConfigurationChanged(ProjectExplorer::ProjectConfiguration *pc) |
Target * | activeTarget() const |
void | activeTargetChanged(ProjectExplorer::Target *target) |
void | addTarget(Target *target) |
void | addedProjectConfiguration(ProjectExplorer::ProjectConfiguration *pc) |
void | addedTarget(ProjectExplorer::Target *target) |
virtual void | configureAsExampleProject(const QSet<Core::Id> &platforms) |
ContainerNode * | containerNode() const |
Target * | createTarget(Kit *k) |
QString | displayName() const |
Core::IDocument * | document() const |
EditorConfiguration * | editorConfiguration() const |
void | fileListChanged() |
QStringList | files(FilesMode fileMode, const std::function<bool( const Node * ) > &filter = {}) const |
virtual QStringList | filesGeneratedFrom(const QString &sourceFile) const |
bool | hasActiveBuildSettings() const |
bool | hasParsingData() const |
Core::Id | id() const |
bool | isParsing() const |
virtual bool | knowsAllBuildExecutables() const |
Utils::MacroExpander * | macroExpander() const |
QVariant | namedSettings(const QString &name) const |
virtual bool | needsConfiguration() const |
virtual bool | needsSpecialDeployment() const |
void | parsingFinished(bool success) |
void | parsingStarted() |
Kit::Predicate | preferredKitPredicate() const |
Core::Context | projectContext() const |
void | projectContextUpdated() |
Utils::FileName | projectDirectory() const |
Utils::FileName | projectFilePath() const |
virtual ProjectImporter * | projectImporter() const |
Core::Context | projectLanguages() const |
void | projectLanguagesUpdated() |
bool | removeTarget(Target *target) |
void | removedProjectConfiguration(ProjectExplorer::ProjectConfiguration *pc) |
void | removedTarget(ProjectExplorer::Target *target) |
Kit::Predicate | requiredKitPredicate() const |
virtual bool | requiresTargetPanel() const |
RestoreResult | restoreSettings(QString *errorMessage) |
Target * | restoreTarget(const QVariantMap &data) |
virtual ProjectNode * | rootProjectNode() const |
void | saveSettings() |
void | setNamedSettings(const QString &name, const QVariant &value) |
void | settingsLoaded() |
void | setup(QList<const BuildInfo *> infoList) |
virtual bool | supportsKit(Kit *k, QString *errorMessage = nullptr) const |
Target * | target(Core::Id id) const |
Target * | target(Kit *k) const |
QList<Target *> | targets() const |
virtual QVariantMap | toMap() const |
Static Public Members
bool | copySteps(Target *sourceTarget, Target *newTarget) |
QString | makeUnique(const QString &preferredName, const QStringList &usedNames) |
Utils::FileName | projectDirectory(const Utils::FileName &top) |
Protected Functions
void | addProjectLanguage(Core::Id id) |
void | emitParsingFinished(bool success) |
void | emitParsingStarted() |
virtual RestoreResult | fromMap(const QVariantMap &map, QString *errorMessage) |
virtual void | projectLoaded() |
void | removeProjectLanguage(Core::Id id) |
void | setDisplayName(const QString &name) |
void | setId(Core::Id id) |
void | setPreferredKitPredicate(const Kit::Predicate &predicate) |
void | setProjectContext(Core::Context context) |
void | setProjectLanguage(Core::Id id, bool enabled) |
void | setProjectLanguages(Core::Context language) |
void | setRequiredKitPredicate(const Kit::Predicate &predicate) |
void | setRootProjectNode(ProjectNode *root) |
virtual bool | setupTarget(Target *t) |
Detailed Description
The Project class implements a project node in the project explorer.
Member Type Documentation
enum Project::FilesMode
enum Project::ModelRoles
enum Project::RestoreResult
Member Function Documentation
Project::Project(const QString &mimeType, const Utils::FileName &fileName, const ProjectDocument::ProjectCallback &callback = {})
Copy constructor.
Project::~Project()
Destroys the instance of Project.
void Project::aboutToRemoveProjectConfiguration(ProjectExplorer::ProjectConfiguration *pc)
void Project::aboutToRemoveTarget(ProjectExplorer::Target *target)
void Project::aboutToSaveSettings()
void Project::activeProjectConfigurationChanged(ProjectExplorer::ProjectConfiguration *pc)
Target *Project::activeTarget() const
void Project::activeTargetChanged(ProjectExplorer::Target *target)
[protected]
void Project::addProjectLanguage(Core::Id id)
void Project::addTarget(Target *target)
void Project::addedProjectConfiguration(ProjectExplorer::ProjectConfiguration *pc)
void Project::addedTarget(ProjectExplorer::Target *target)
[virtual]
void Project::configureAsExampleProject(const QSet<Core::Id> &platforms)
ContainerNode *Project::containerNode() const
[static]
bool Project::copySteps(Target *sourceTarget, Target *newTarget)
Target *Project::createTarget(Kit *k)
QString Project::displayName() const
See also setDisplayName().
Core::IDocument *Project::document() const
EditorConfiguration *Project::editorConfiguration() const
[protected]
void Project::emitParsingFinished(bool success)
[protected]
void Project::emitParsingStarted()
void Project::fileListChanged()
QStringList Project::files(FilesMode fileMode, const std::function<bool( const Node * ) > &filter = {}) const
[virtual]
QStringList Project::filesGeneratedFrom(const QString &sourceFile) const
[virtual protected]
RestoreResult Project::fromMap(const QVariantMap &map, QString *errorMessage)
bool Project::hasActiveBuildSettings() const
bool Project::hasParsingData() const
Core::Id Project::id() const
See also setId().
bool Project::isParsing() const
[virtual]
bool Project::knowsAllBuildExecutables() const
Utils::MacroExpander *Project::macroExpander() const
[static]
QString Project::makeUnique(const QString &preferredName, const QStringList &usedNames)
QVariant Project::namedSettings(const QString &name) const
See also setNamedSettings().
[virtual]
bool Project::needsConfiguration() const
[virtual]
bool Project::needsSpecialDeployment() const
void Project::parsingFinished(bool success)
void Project::parsingStarted()
Kit::Predicate Project::preferredKitPredicate() const
See also setPreferredKitPredicate().
Core::Context Project::projectContext() const
See also setProjectContext().
void Project::projectContextUpdated()
Utils::FileName Project::projectDirectory() const
Returns the directory that contains the project.
This includes the absolute path.
[static]
Utils::FileName Project::projectDirectory(const Utils::FileName &top)
Returns the directory that contains the file top.
This includes the absolute path.
Utils::FileName Project::projectFilePath() const
[virtual]
ProjectImporter *Project::projectImporter() const
Core::Context Project::projectLanguages() const
See also setProjectLanguages().
void Project::projectLanguagesUpdated()
[virtual protected]
void Project::projectLoaded()
[protected]
void Project::removeProjectLanguage(Core::Id id)
bool Project::removeTarget(Target *target)
void Project::removedProjectConfiguration(ProjectExplorer::ProjectConfiguration *pc)
void Project::removedTarget(ProjectExplorer::Target *target)
Kit::Predicate Project::requiredKitPredicate() const
See also setRequiredKitPredicate().
[virtual]
bool Project::requiresTargetPanel() const
RestoreResult Project::restoreSettings(QString *errorMessage)
Target *Project::restoreTarget(const QVariantMap &data)
[virtual]
ProjectNode *Project::rootProjectNode() const
See also setRootProjectNode().
void Project::saveSettings()
[protected]
void Project::setDisplayName(const QString &name)
See also displayName().
[protected]
void Project::setId(Core::Id id)
See also id().
void Project::setNamedSettings(const QString &name, const QVariant &value)
See also namedSettings().
[protected]
void Project::setPreferredKitPredicate(const Kit::Predicate &predicate)
See also preferredKitPredicate().
[protected]
void Project::setProjectContext(Core::Context context)
See also projectContext().
[protected]
void Project::setProjectLanguage(Core::Id id, bool enabled)
[protected]
void Project::setProjectLanguages(Core::Context language)
See also projectLanguages().
[protected]
void Project::setRequiredKitPredicate(const Kit::Predicate &predicate)
See also requiredKitPredicate().
[protected]
void Project::setRootProjectNode(ProjectNode *root)
See also rootProjectNode().
void Project::settingsLoaded()
void Project::setup(QList<const BuildInfo *> infoList)
[virtual protected]
bool Project::setupTarget(Target *t)
[virtual]
bool Project::supportsKit(Kit *k, QString *errorMessage = nullptr) const
Target *Project::target(Core::Id id) const
Target *Project::target(Kit *k) const
QList<Target *> Project::targets() const
[virtual]
QVariantMap Project::toMap() const
Serializes all data into a QVariantMap.
This map is then saved in the .user file of the project. Just put all your data into the map.
Note: Do not forget to call your base class' toMap function.
Note: Do not forget to call setActiveBuildConfiguration when creating new build configurations.