mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-05-06 05:10:22 +07:00
generate private enum constructor everywhere (IDEA-69128 )
This commit is contained in:
@@ -16,15 +16,20 @@
|
||||
package com.intellij.codeInsight.daemon.impl.quickfix;
|
||||
|
||||
import com.intellij.codeInsight.daemon.QuickFixBundle;
|
||||
import com.intellij.codeInsight.generation.GenerateConstructorHandler;
|
||||
import com.intellij.psi.PsiClass;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class AddDefaultConstructorFix extends AddMethodFix {
|
||||
public AddDefaultConstructorFix(PsiClass aClass) {
|
||||
super("public " + aClass.getName() + "() {}", aClass);
|
||||
super(generateConstructor(aClass), aClass);
|
||||
setText(QuickFixBundle.message("add.default.constructor.text", aClass.getName()));
|
||||
}
|
||||
|
||||
private static String generateConstructor(PsiClass aClass) {
|
||||
final String constructorModifier = GenerateConstructorHandler.getConstructorModifier(aClass);
|
||||
return constructorModifier + (constructorModifier.isEmpty() ? "" : " ") + aClass.getName() + "() {}";
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public String getFamilyName() {
|
||||
|
||||
@@ -267,8 +267,7 @@ public class GenerateConstructorHandler extends GenerateMembersHandlerBase {
|
||||
}
|
||||
|
||||
@Modifier
|
||||
@Nullable
|
||||
private static String getConstructorModifier(final PsiClass aClass) {
|
||||
public static String getConstructorModifier(final PsiClass aClass) {
|
||||
@Modifier String modifier = PsiModifier.PUBLIC;
|
||||
|
||||
if (aClass.hasModifierProperty(PsiModifier.ABSTRACT) && !aClass.isEnum()) {
|
||||
@@ -280,6 +279,9 @@ public class GenerateConstructorHandler extends GenerateMembersHandlerBase {
|
||||
else if (aClass.hasModifierProperty(PsiModifier.PRIVATE)) {
|
||||
modifier = PsiModifier.PRIVATE;
|
||||
}
|
||||
else if (aClass.isEnum()) {
|
||||
modifier = PsiModifier.PRIVATE;
|
||||
}
|
||||
|
||||
return modifier;
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// "Add constructor parameter" "true"
|
||||
class A {
|
||||
public class A {
|
||||
private int field;
|
||||
|
||||
public A(int field) {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// "Add constructor parameter" "true"
|
||||
class A {
|
||||
public class A {
|
||||
private final A field;
|
||||
|
||||
public A(A field) {
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
// "Add constructor parameter" "true"
|
||||
public enum MyEnum
|
||||
{
|
||||
VALUE_ONE(myField);
|
||||
private final int myField;
|
||||
|
||||
private MyEnum(int myField) {
|
||||
this.myField = myField;
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
// "Add constructor parameters" "true"
|
||||
class A {
|
||||
public class A {
|
||||
private final int field;
|
||||
private final Object o;
|
||||
private final Runnable runnable;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// "Add constructor parameter" "true"
|
||||
class A {
|
||||
public class A {
|
||||
private int <caret>field;
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
// "Add constructor parameter" "true"
|
||||
class A {
|
||||
public class A {
|
||||
private final A field;<caret>
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
// "Add constructor parameter" "true"
|
||||
public enum MyEnum
|
||||
{
|
||||
VALUE_ONE;
|
||||
private final int myFi<caret>eld;
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
// "Add constructor parameters" "true"
|
||||
class A {
|
||||
public class A {
|
||||
private final int <caret>field;
|
||||
private final Object o;
|
||||
private final Runnable runnable;
|
||||
|
||||
@@ -7,6 +7,6 @@ public enum Operation {
|
||||
|
||||
abstract int eval(int x, int y);
|
||||
|
||||
Operation() {
|
||||
private Operation() {
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user