JComponent (ButtonKind data, @NotNull Project project) { if (project.isDefault()) { // Do not provide button for default project return new JPanel(); } return switch (data) { case NULLABILITY_ANNOTATIONS -> NullableNotNullDialog.createConfigureAnnotationsButton(project); case ENTRY_POINT_CODE_PATTERNS -> EntryPointsManagerImpl.createConfigureClassPatternsButton(project); case ENTRY_POINT_ANNOTATIONS -> EntryPointsManagerImpl.createConfigureAnnotationsButton(project, false); case IMPLICIT_WRITE_ANNOTATIONS -> EntryPointsManagerImpl.createConfigureAnnotationsButton(project, true); case DEPENDENCY_CONFIGURATION -> DependencyConfigurable.getConfigureButton(project); }; }