in src/main/groovy/org/jetbrains/gradle/ext/IdeaExtPlugin.groovy [29:60]
def extend(Project project) {
def ideaModel = project.extensions.findByName('idea') as IdeaModel
if (!ideaModel) { return }
IdeaFilesProcessor ideaFilesProcessor = new IdeaFilesProcessor(project)
if (ideaModel.project) {
def projectSettings = (ideaModel.project as ExtensionAware).extensions.create("settings", ProjectSettings, project.objects, ideaFilesProcessor)
def settingsExt = (projectSettings as ExtensionAware).extensions
settingsExt.create("delegateActions", ActionDelegationConfig)
settingsExt.create("taskTriggers", TaskTriggersConfig, project)
settingsExt.create("compiler", IdeaCompilerConfiguration, project)
settingsExt.create("groovyCompiler", GroovyCompilerConfiguration)
settingsExt.create("codeStyle", CodeStyleConfig)
settingsExt.create("copyright", CopyrightConfiguration, project)
settingsExt.create("encodings", EncodingConfiguration, project)
addRunConfigurations(settingsExt, project)
addInspections(settingsExt, project)
addArtifacts(settingsExt, project)
}
def ideaModule = ideaModel.module
if (ideaModule) {
def moduleSettings = (ideaModel.module as ExtensionAware).extensions.create("settings", ModuleSettings, project, ideaFilesProcessor)
def settingsExt = (moduleSettings as ExtensionAware).extensions
settingsExt.create("packagePrefix", PackagePrefixContainer, ideaModule)
settingsExt.create("moduleType", ModuleTypesConfig, project, settingsExt)
}
}