package ee.edio.garmin; import com.intellij.ide.util.projectWizard.ModuleWizardStep; import com.intellij.ide.util.projectWizard.ProjectJdkForModuleStep; import com.intellij.ide.util.projectWizard.WizardContext; import com.intellij.openapi.module.ModuleType; import com.intellij.openapi.module.ModuleTypeManager; import com.intellij.openapi.roots.ui.configuration.ModulesProvider; import ee.edio.garmin.sdk.MonkeySdkType; import org.jetbrains.annotations.NotNull; import javax.swing.*; public class MonkeyModuleType extends ModuleType<MonkeyModuleBuilder> { public MonkeyModuleType() { super(MonkeyConstants.MODULE_TYPE_ID); } @NotNull public static MonkeyModuleType getInstance() { return (MonkeyModuleType) ModuleTypeManager.getInstance().findByID(MonkeyConstants.MODULE_TYPE_ID); } @NotNull @Override public MonkeyModuleBuilder createModuleBuilder() { return new MonkeyModuleBuilder(null); } @NotNull @Override public String getName() { return "Monkey C Module"; } @NotNull @Override public String getDescription() { return "Monkey C modules are used for developing <b>Monkey Co</b> applications."; } @Override public Icon getBigIcon() { return MonkeyIcons.MODULE24; } //24 @Override public Icon getNodeIcon(@Deprecated boolean isOpened) { return MonkeyIcons.MODULE16; } // 16 @NotNull @Override public ModuleWizardStep[] createWizardSteps(@NotNull WizardContext wizardContext, @NotNull MonkeyModuleBuilder moduleBuilder, @NotNull ModulesProvider modulesProvider) { final ProjectJdkForModuleStep projectJdkForModuleStep = new ProjectJdkForModuleStep(wizardContext, MonkeySdkType.getInstance()); return new ModuleWizardStep[]{projectJdkForModuleStep}; } }