public interface ICProjectDescription extends ICSettingContainer, ICSettingObject, ICSettingsStorage, ICProjectDescriptionPreferences
CoreModel.getProjectDescription(IProject, boolean)
callSETTING_BUILD, SETTING_CONFIGURATION, SETTING_FILE, SETTING_FOLDER, SETTING_LANGUAGE, SETTING_PROJECT, SETTING_TARGET_PLATFORM
CONFIGS_INDEPENDENT, CONFIGS_LINK_SETTINGS_AND_ACTIVE
Modifier and Type | Method and Description |
---|---|
ICConfigurationDescription |
createConfiguration(String buildSystemId,
CConfigurationData data)
creates/adds a new configuration for this project description
This method is typically used by the Build System-specific code for creating new configurations
|
ICConfigurationDescription |
createConfiguration(String id,
String name,
ICConfigurationDescription base)
creates/adds a new configuration for this project description
|
ICConfigurationDescription |
getActiveConfiguration()
Returns the Project's active configuration.
|
ICConfigurationDescription |
getConfigurationById(String id) |
ICConfigurationDescription |
getConfigurationByName(String name) |
ICConfigurationDescription[] |
getConfigurations() |
ICConfigurationDescription |
getDefaultSettingConfiguration()
Returns the default setting ICConfigurationDescription.
|
org.eclipse.core.resources.IProject |
getProject() |
Object |
getSessionProperty(org.eclipse.core.runtime.QualifiedName name)
the get/setSettionsProperty methods allow to associate the session properties with the given project description
session properties are not persisted and are not restored on the next eclipse session
the scope of project description session properties is the current project description,
i.e.
|
boolean |
isCdtProjectCreating()
when true specifies that the project creation is in progress.
|
boolean |
isModified()
Returns whether any non-persisted changes exist in this tree
|
void |
removeConfiguration(ICConfigurationDescription cfg)
Remove the given configuration from the project description
|
void |
removeConfiguration(String name)
Remove Configuration of the given name from the project description
|
void |
setActiveConfiguration(ICConfigurationDescription cfg)
sets active configuration for this project description
|
void |
setCdtProjectCreated()
sets the project creation state to false
|
void |
setDefaultSettingConfiguration(ICConfigurationDescription cfg)
Sets the default setting ICConfigurationDescription.
|
void |
setSessionProperty(org.eclipse.core.runtime.QualifiedName name,
Object value)
the get/setSettionsProperty methods allow to associate the session properties with the given project description
session properties are not persisted and are not restored on the next eclipse session
the scope of project description session properties is the current project description,
i.e.
|
getChildSettings
getConfiguration, getId, getName, getParent, getType, isReadOnly, isValid
getStorage, importStorage, isReadOnly, removeStorage, setReadOnly
getConfigurationRelations, isDefaultConfigurationRelations, setConfigurationRelations, useDefaultConfigurationRelations
ICConfigurationDescription[] getConfigurations()
ICConfigurationDescription
[] containing all configurations in the projectICConfigurationDescription getActiveConfiguration()
ICConfigurationDescription
- the one which is built by defaultICProjectDescriptionPreferences.setConfigurationRelations(int)
void setActiveConfiguration(ICConfigurationDescription cfg) throws WriteAccessException
cfg
- WriteAccessException
- when the project description is read-only
the description is read only if it was queried/returned by the CoreModel.getProjectDescription(org.eclipse.core.resources.IProject, false)
callICConfigurationDescription createConfiguration(String id, String name, ICConfigurationDescription base) throws org.eclipse.core.runtime.CoreException, WriteAccessException
id
- configuration idname
- configuration namebase
- the configuration description from which the settings are to be copiedICConfigurationDescription
createdorg.eclipse.core.runtime.CoreException
WriteAccessException
- when the project description is read-only
the description is read only if it was queried/returned by the CoreModel#getProjectDescription(org.eclipse.core.resources.IProject, false)
callICConfigurationDescription createConfiguration(String buildSystemId, CConfigurationData data) throws org.eclipse.core.runtime.CoreException, WriteAccessException
buildSystemId
- build system id, i.e. the extension id contributing to the
org.eclipse.cdt.core.CConfigurationDataProvider extension pointdata
- CConfigurationData to be associated with this configurationICConfigurationDescription
createdorg.eclipse.core.runtime.CoreException
WriteAccessException
- when the project description is read-only
the description is read only if it was queried/returned by the CoreModel.getProjectDescription(org.eclipse.core.resources.IProject, false)
callICConfigurationDescription getConfigurationByName(String name)
name
- String name of the configuration to getICConfigurationDescription
of the given name or null if not foundICConfigurationDescription getConfigurationById(String id)
id
- ICConfigurationDescription
idICConfigurationDescription
of the given id or null if not foundvoid removeConfiguration(String name) throws WriteAccessException
name
- String name of the configuration to removeWriteAccessException
- when the project description is read-only
the description is read only if it was queried/returned by the CoreModel.getProjectDescription(org.eclipse.core.resources.IProject, false)
callvoid removeConfiguration(ICConfigurationDescription cfg) throws WriteAccessException
cfg
- ICConfigurationDescription
to removeWriteAccessException
- when the project description is read-only
the description is read only if it was queried/returned by the CoreModel.getProjectDescription(IProject, false)
callorg.eclipse.core.resources.IProject getProject()
boolean isModified()
ICSettingsStorage
isModified
in interface ICSettingsStorage
Object getSessionProperty(org.eclipse.core.runtime.QualifiedName name)
name
- void setSessionProperty(org.eclipse.core.runtime.QualifiedName name, Object value)
name
- value
- ICConfigurationDescription getDefaultSettingConfiguration()
ICConfigurationDescription
ICProjectDescriptionPreferences.setConfigurationRelations(int)
void setDefaultSettingConfiguration(ICConfigurationDescription cfg)
cfg
- boolean isCdtProjectCreating()
ICProjectDescriptionManager.setProjectDescription(IProject, ICProjectDescription)
is called
for the description containing the true "isCdtProjectCreating" state,
but the project already contains the project description with the false "isCdtProjectCreating" state
the true state will be ignored, i.e. the resulting setting will contain false "isCdtProjectCreating" state
so only the newly created descriptions (created via a ICProjectDescriptionManager.createProjectDescription(IProject, boolean, boolean)
) may contain
true "isCdtProjectCreating" stateICProjectDescriptionManager.createProjectDescription(IProject, boolean, boolean)
,
setCdtProjectCreated()
void setCdtProjectCreated()
Copyright (c) IBM Corp. and others 2004, 2020. All Rights Reserved.