JPanel () { final LabeledComponent<JComboBox> component = new LabeledComponent<>(); myReplaceFieldsCb = new ComboBox<>(new Integer[]{IntroduceParameterRefactoring.REPLACE_FIELDS_WITH_GETTERS_ALL, IntroduceParameterRefactoring.REPLACE_FIELDS_WITH_GETTERS_INACCESSIBLE, IntroduceParameterRefactoring.REPLACE_FIELDS_WITH_GETTERS_NONE}); myReplaceFieldsCb.setRenderer(SimpleListCellRenderer.create((label, value, index) -> { String message = switch (value) { case IntroduceParameterRefactoring.REPLACE_FIELDS_WITH_GETTERS_NONE -> JavaRefactoringBundle.message("do.not.replace"); case IntroduceParameterRefactoring.REPLACE_FIELDS_WITH_GETTERS_INACCESSIBLE -> JavaRefactoringBundle.message("replace.fields.inaccessible.in.usage.context"); default -> JavaRefactoringBundle.message("replace.all.fields"); }; label.setText(UIUtil.removeMnemonic(message)); })); myReplaceFieldsCb.setSelectedItem(JavaRefactoringSettings.getInstance().INTRODUCE_PARAMETER_REPLACE_FIELDS_WITH_GETTERS); KeyboardComboSwitcher.setupActions(myReplaceFieldsCb, myProject); component.setComponent(myReplaceFieldsCb); component.setText(JavaRefactoringBundle.message("replace.fields.used.in.expressions.with.their.getters")); component.setLabelLocation(BorderLayout.NORTH); component.setBorder(JBUI.Borders.empty(3, 3, 2, 2)); return component; }