public abstract class AbstractExternalSystemConfigurable<ProjectSettings extends ExternalProjectSettings,L extends ExternalSystemSettingsListener<ProjectSettings>,SystemSettings extends AbstractExternalSystemSettings<SystemSettings,ProjectSettings,L>> extends java.lang.Object implements SearchableConfigurable, Configurable.NoScroll
SearchableConfigurable.Delegate, SearchableConfigurable.Merged, SearchableConfigurable.ParentConfigurable.Composite, Configurable.NoMargin, Configurable.NoScroll, Configurable.TopComponentController, Configurable.TopComponentProvider, Configurable.VariableProjectAppLevel, Configurable.WithEpDependenciesAPPLICATION_CONFIGURABLE, PROJECT_CONFIGURABLE| Modifier | Constructor and Description |
|---|---|
protected |
AbstractExternalSystemConfigurable(Project project,
ProjectSystemId externalSystemId) |
| Modifier and Type | Method and Description |
|---|---|
void |
apply()
Stores the settings from the Swing form to the configurable component.
|
javax.swing.JComponent |
createComponent()
Creates new Swing form that enables user to configure the settings.
|
protected abstract ExternalSystemSettingsControl<ProjectSettings> |
createProjectSettingsControl(ProjectSettings settings)
Creates a control for managing given project settings.
|
protected abstract ExternalSystemSettingsControl<SystemSettings> |
createSystemSettingsControl(SystemSettings settings)
Creates a control for managing given system-level settings (if any).
|
void |
disposeUIResources()
Notifies the configurable component that the Swing form will be closed.
|
java.lang.String |
getDisplayName()
Returns the visible name of the configurable component.
|
Project |
getProject() |
protected java.lang.String |
getProjectName(java.lang.String path) |
boolean |
isModified()
Indicates whether the Swing form was modified or not.
|
protected abstract ProjectSettings |
newProjectSettings() |
void |
reset()
Loads the settings from the configurable component to the Swing form.
|
void |
selectProject(java.lang.String linkedProjectPath) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitenableSearch, getId, getOriginalClassgetHelpTopic, getPreferredFocusedComponent, isModified, isModified, isModified, isModifiedcancelprotected AbstractExternalSystemConfigurable(Project project, ProjectSystemId externalSystemId)
public Project getProject()
public java.lang.String getDisplayName()
ConfigurablegetDisplayName in interface Configurablepublic javax.swing.JComponent createComponent()
UnnamedConfigurableAlso this place is designed to allocate resources (subscriptions/listeners etc.)
createComponent in interface UnnamedConfigurablenull if it cannot be createdUnnamedConfigurable.disposeUIResources()public void selectProject(java.lang.String linkedProjectPath)
protected abstract ExternalSystemSettingsControl<ProjectSettings> createProjectSettingsControl(ProjectSettings settings)
settings - target external project settingsprotected java.lang.String getProjectName(java.lang.String path)
protected abstract ExternalSystemSettingsControl<SystemSettings> createSystemSettingsControl(SystemSettings settings)
settings - target system settingsnull if current external system doesn't have system-level settings (only project-level settings)public boolean isModified()
UnnamedConfigurableisModified in interface UnnamedConfigurabletrue if the settings were modified, false otherwisepublic void apply()
throws ConfigurationException
UnnamedConfigurableapply in interface UnnamedConfigurableConfigurationException - if values cannot be appliedprotected abstract ProjectSettings newProjectSettings()
public void reset()
UnnamedConfigurablereset in interface UnnamedConfigurablepublic void disposeUIResources()
UnnamedConfigurabledisposeUIResources in interface UnnamedConfigurable