Capitalize keywords

This commit is contained in:
drdev
2015-09-07 21:29:28 +00:00
parent 1ce62b1bb8
commit debe605289
2 changed files with 25 additions and 1 deletions

View File

@@ -22,4 +22,25 @@ public final class EnumUtil {
}
return builder.build();
}
public static String getEnumDisplayName(Enum<?> value) {
boolean uppercase = true;
String name = value.name();
StringBuilder builder = new StringBuilder();
for (int i = 0; i < name.length(); i++) {
char ch = name.charAt(i);
if (ch == '_') {
builder.append(' ');
uppercase = true;
}
else if (uppercase) {
builder.append(ch); //assume enum name is ALL_CAPS format
uppercase = false;
}
else {
builder.append(Character.toLowerCase(ch));
}
}
return builder.toString();
}
}

View File

@@ -2,9 +2,12 @@ package forge.game.keyword;
import java.util.*;
import org.apache.commons.lang3.StringUtils;
import forge.StaticData;
import forge.game.card.Card;
import forge.item.PaperCard;
import forge.util.EnumUtil;
public enum Keyword {
UNDEFINED(SimpleKeyword.class, false, ""),
@@ -107,7 +110,7 @@ public enum Keyword {
type = type0;
isMultipleRedundant = isMultipleRedundant0;
reminderText = reminderText0;
displayName = this.name().toLowerCase().replace('_', ' ');
displayName = EnumUtil.getEnumDisplayName(this);
}
public static KeywordInstance<?> getInstance(String k) {