@Nullable/@NotNull annotations for ProjectJdkForModuleStep (and others)

GitOrigin-RevId: 76446ca3d0941c419e66bbd1bcf203bfb60065f5
This commit is contained in:
Eugene Petrenko
2020-01-13 12:39:24 +00:00
committed by intellij-monorepo-bot
parent 97e16c3024
commit 89bcabe95e
4 changed files with 32 additions and 18 deletions
@@ -107,10 +107,12 @@ public class JdkChooserPanel extends JPanel {
myAllowedJdkTypes = allowedJdkTypes;
}
@Nullable
public Sdk getChosenJdk() {
return myCurrentJdk;
}
@NotNull
public Object[] getAllJdks() {
return myListModel.toArray();
}
@@ -20,6 +20,7 @@ import com.intellij.util.ui.JBInsets;
import com.intellij.util.ui.JBUI;
import com.intellij.util.ui.StartupUiUtil;
import org.jetbrains.annotations.NonNls;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import javax.swing.*;
@@ -33,23 +34,25 @@ import java.awt.event.ActionListener;
* @author Eugene Zhuravlev
*/
public class ProjectJdkForModuleStep extends ModuleWizardStep {
private final JdkChooserPanel myJdkChooser;
private final JPanel myPanel;
private final WizardContext myContext;
private final SdkType myType;
private final String myHelpId;
@NotNull private final JdkChooserPanel myJdkChooser;
@NotNull private final JPanel myPanel;
@NotNull private final WizardContext myContext;
@Nullable private final SdkType myType;
@Nullable private final String myHelpId;
private boolean myInitialized = false;
private final JButton mySetAsDefaultButton;
@NotNull private final JButton mySetAsDefaultButton;
public ProjectJdkForModuleStep(final WizardContext context, final SdkType type) {
public ProjectJdkForModuleStep(@NotNull final WizardContext context, @Nullable final SdkType type) {
this(context, type, null);
}
public ProjectJdkForModuleStep(final WizardContext context, final SdkType type, @Nullable @NonNls String helpId) {
public ProjectJdkForModuleStep(@NotNull final WizardContext context, @Nullable final SdkType type, @Nullable @NonNls String helpId) {
myContext = context;
myType = type;
myHelpId = helpId;
myJdkChooser = new JdkChooserPanel(getProject(context, type));
Project project = getProject(context, type);
myJdkChooser = new JdkChooserPanel(project);
myPanel = new JPanel(new GridBagLayout());
myPanel.setBorder(BorderFactory.createEtchedBorder());
@@ -121,7 +124,7 @@ public class ProjectJdkForModuleStep extends ModuleWizardStep {
}
@Nullable
private static Project getProject(final WizardContext context, final SdkType type) {
private static Project getProject(@NotNull final WizardContext context, @Nullable final SdkType type) {
Project project = context.getProject();
if (type != null && project == null) { //'module' step inside project creation
project = ProjectManager.getInstance().getDefaultProject();
@@ -134,6 +137,7 @@ public class ProjectJdkForModuleStep extends ModuleWizardStep {
return myJdkChooser.getPreferredFocusedComponent();
}
@Nullable
@Override
public String getHelpId() {
return myHelpId;
@@ -153,7 +157,7 @@ public class ProjectJdkForModuleStep extends ModuleWizardStep {
public void updateStep() {
if (!myInitialized) { //lazy default project initialization
myJdkChooser.fillList(myType, null);
Sdk defaultJdk = getDefaultJdk(myContext);
Sdk defaultJdk = getDefaultJdk();
if (defaultJdk != null) {
myJdkChooser.selectJdk(defaultJdk);
}
@@ -162,25 +166,28 @@ public class ProjectJdkForModuleStep extends ModuleWizardStep {
}
}
@Nullable
public Sdk getJdk() {
return myJdkChooser.getChosenJdk();
}
@NotNull
public Object[] getAllJdks() {
return myJdkChooser.getAllJdks();
}
@Nullable
@Override
public Icon getIcon() {
return myContext.getStepIcon();
}
@Nullable
private static Sdk getDefaultJdk(WizardContext context) {
private Sdk getDefaultJdk() {
Project defaultProject = ProjectManagerEx.getInstanceEx().getDefaultProject();
Sdk sdk = ProjectRootManagerEx.getInstanceEx(defaultProject).getProjectSdk();
if (sdk == null) {
sdk = AddModuleWizard.getMostRecentSuitableSdk(context);
sdk = AddModuleWizard.getMostRecentSuitableSdk(myContext);
}
return sdk;
}
@@ -189,8 +196,12 @@ public class ProjectJdkForModuleStep extends ModuleWizardStep {
public boolean validate() {
final Sdk jdk = myJdkChooser.getChosenJdk();
if (jdk == null) {
int result = Messages.showOkCancelDialog(IdeBundle.message("prompt.confirm.project.no.jdk"),
IdeBundle.message("title.no.jdk.specified"), Messages.getWarningIcon());
int result = Messages
.showOkCancelDialog(IdeBundle.message("prompt.confirm.project.no.jdk"),
IdeBundle.message("title.no.jdk.specified"),
Messages.getOkButton(),
Messages.getCancelButton(),
Messages.getWarningIcon(), null);
if (result != Messages.OK) {
return false;
}
@@ -54,12 +54,12 @@ public class SdkSettingsStep extends ModuleWizardStep {
private final ModuleBuilder myModuleBuilder;
private final JPanel myJdkPanel;
public SdkSettingsStep(SettingsStep settingsStep, @NotNull ModuleBuilder moduleBuilder,
public SdkSettingsStep(@NotNull SettingsStep settingsStep, @NotNull ModuleBuilder moduleBuilder,
@NotNull Condition<? super SdkTypeId> sdkTypeIdFilter) {
this(settingsStep, moduleBuilder, sdkTypeIdFilter, null);
}
public SdkSettingsStep(SettingsStep settingsStep,
public SdkSettingsStep(@NotNull SettingsStep settingsStep,
@NotNull ModuleBuilder moduleBuilder,
@NotNull Condition<? super SdkTypeId> sdkTypeIdFilter,
@Nullable Condition<? super Sdk> sdkFilter) {
@@ -69,7 +69,7 @@ public class SdkSettingsStep extends ModuleWizardStep {
}
}
public SdkSettingsStep(WizardContext context,
public SdkSettingsStep(@NotNull WizardContext context,
@NotNull ModuleBuilder moduleBuilder,
@NotNull Condition<? super SdkTypeId> sdkTypeIdFilter,
@Nullable Condition<? super Sdk> sdkFilter) {
@@ -168,6 +168,7 @@ public class WizardContext extends UserDataHolderBase {
return myProject == null;
}
@Nullable
public Icon getStepIcon() {
return null;
}