From 4f3b1c9bbfa8b1dd6a346b94d9e6dcacc1dff87b Mon Sep 17 00:00:00 2001 From: Vladimir Krivosheev Date: Thu, 1 Sep 2016 11:58:24 +0200 Subject: [PATCH] cleanup --- .../CodeStyleSettingsCustomizable.java | 18 ++++---- .../LanguageCodeStyleSettingsProvider.java | 42 ++++++------------- .../options/codeStyle/CommenterForm.java | 36 ++-------------- 3 files changed, 28 insertions(+), 68 deletions(-) diff --git a/platform/lang-api/src/com/intellij/psi/codeStyle/CodeStyleSettingsCustomizable.java b/platform/lang-api/src/com/intellij/psi/codeStyle/CodeStyleSettingsCustomizable.java index 50b2f1f5257f..d5db2fe5b76c 100644 --- a/platform/lang-api/src/com/intellij/psi/codeStyle/CodeStyleSettingsCustomizable.java +++ b/platform/lang-api/src/com/intellij/psi/codeStyle/CodeStyleSettingsCustomizable.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2013 JetBrains s.r.o. + * Copyright 2000-2016 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -308,26 +308,30 @@ public interface CodeStyleSettingsCustomizable { void showStandardOptions(String... optionNames); - void showCustomOption(Class settingsClass, + default void showCustomOption(Class settingsClass, String fieldName, String title, @Nullable String groupName, - Object... options); + Object... options) { + } - void showCustomOption(Class settingsClass, + default void showCustomOption(Class settingsClass, String fieldName, String title, @Nullable String groupName, @Nullable OptionAnchor anchor, @Nullable String anchorFieldName, - Object... options); + Object... options) { + } - void renameStandardOption(String fieldName, String newTitle); + default void renameStandardOption(String fieldName, String newTitle) { + } /** * Moves a standard option to another group. * @param fieldName The field name of the option to move (as defined in CommonCodeStyleSettings class). * @param newGroup The new group name (the group may be one of existing ones). A custom group name can be used if supported by consumer. */ - void moveStandardOption(String fieldName, String newGroup); + default void moveStandardOption(String fieldName, String newGroup) { + } } diff --git a/platform/lang-api/src/com/intellij/psi/codeStyle/LanguageCodeStyleSettingsProvider.java b/platform/lang-api/src/com/intellij/psi/codeStyle/LanguageCodeStyleSettingsProvider.java index 6e9eb32f02f2..242e3a4e18c4 100644 --- a/platform/lang-api/src/com/intellij/psi/codeStyle/LanguageCodeStyleSettingsProvider.java +++ b/platform/lang-api/src/com/intellij/psi/codeStyle/LanguageCodeStyleSettingsProvider.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2014 JetBrains s.r.o. + * Copyright 2000-2016 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,12 +21,12 @@ import com.intellij.openapi.extensions.ExtensionPointName; import com.intellij.openapi.extensions.Extensions; import com.intellij.openapi.project.Project; import com.intellij.psi.PsiFile; -import com.intellij.util.containers.HashSet; +import com.intellij.util.containers.ContainerUtil; +import gnu.trove.THashSet; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.ArrayList; -import java.util.Arrays; import java.util.Set; /** @@ -198,31 +198,29 @@ public abstract class LanguageCodeStyleSettingsProvider { } public Set getSupportedFields() { - SupportedFieldCollector fieldCollector = new SupportedFieldCollector(); - fieldCollector.collectFields(); - return fieldCollector.getCollectedFields(); + return new SupportedFieldCollector().collectFields(); } public Set getSupportedFields(SettingsType type) { - SupportedFieldCollector fieldCollector = new SupportedFieldCollector(); - fieldCollector.collectFields(type); - return fieldCollector.getCollectedFields(); + return new SupportedFieldCollector().collectFields(type); } private final class SupportedFieldCollector implements CodeStyleSettingsCustomizable { - private final Set myCollectedFields = new HashSet<>(); + private final Set myCollectedFields = new THashSet<>(); private SettingsType myCurrSettingsType; - public void collectFields() { + public Set collectFields() { for (SettingsType settingsType : SettingsType.values()) { myCurrSettingsType = settingsType; - LanguageCodeStyleSettingsProvider.this.customizeSettings(this, settingsType); + customizeSettings(this, settingsType); } + return myCollectedFields; } - public void collectFields(SettingsType type) { + public Set collectFields(SettingsType type) { myCurrSettingsType = type; - LanguageCodeStyleSettingsProvider.this.customizeSettings(this, type); + customizeSettings(this, type); + return myCollectedFields; } @Override @@ -255,7 +253,7 @@ public abstract class LanguageCodeStyleSettingsProvider { @Override public void showStandardOptions(String... optionNames) { - myCollectedFields.addAll(Arrays.asList(optionNames)); + ContainerUtil.addAll(myCollectedFields, optionNames); } @Override @@ -277,19 +275,5 @@ public abstract class LanguageCodeStyleSettingsProvider { Object... options) { myCollectedFields.add(fieldName); } - - @Override - public void renameStandardOption(String fieldName, String newTitle) { - // Ignore - } - - @Override - public void moveStandardOption(String fieldName, String newGroup) { - // Ignore - } - - public Set getCollectedFields() { - return myCollectedFields; - } } } diff --git a/platform/lang-impl/src/com/intellij/application/options/codeStyle/CommenterForm.java b/platform/lang-impl/src/com/intellij/application/options/codeStyle/CommenterForm.java index 053de4280469..9fc01cae6037 100644 --- a/platform/lang-impl/src/com/intellij/application/options/codeStyle/CommenterForm.java +++ b/platform/lang-impl/src/com/intellij/application/options/codeStyle/CommenterForm.java @@ -17,11 +17,13 @@ package com.intellij.application.options.codeStyle; import com.intellij.lang.Language; import com.intellij.openapi.application.ApplicationBundle; -import com.intellij.psi.codeStyle.*; +import com.intellij.psi.codeStyle.CodeStyleSettings; +import com.intellij.psi.codeStyle.CodeStyleSettingsCustomizable; +import com.intellij.psi.codeStyle.CommonCodeStyleSettings; +import com.intellij.psi.codeStyle.LanguageCodeStyleSettingsProvider; import com.intellij.ui.IdeBorderFactory; import com.intellij.ui.components.JBCheckBox; import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; import javax.swing.*; @@ -100,36 +102,6 @@ public class CommenterForm implements CodeStyleSettingsCustomizable { myLineCommentAddSpaceCb.setVisible(isVisible); myBlockCommentAtFirstJBCheckBox.setVisible(isVisible); } - - @Override - public void showCustomOption(Class settingsClass, - String fieldName, - String title, - @Nullable String groupName, - Object... options) { - // ignore, no custom options possible - } - - @Override - public void showCustomOption(Class settingsClass, - String fieldName, - String title, - @Nullable String groupName, - @Nullable OptionAnchor anchor, - @Nullable String anchorFieldName, - Object... options) { - // ignore, no custom options possible - } - - @Override - public void renameStandardOption(String fieldName, String newTitle) { - // ignore for now - } - - @Override - public void moveStandardOption(String fieldName, String newGroup) { - // ignore, unsupported - } private void customizeSettings() { setAllOptionsVisible(false);