Small refactor to Plugin sorter

This commit is contained in:
Scott Burns
2019-04-22 22:47:37 +02:00
parent d63d125df2
commit b05432e2c5

View File

@@ -76,24 +76,23 @@ public class PluginSorterPlugin extends Plugin {
public void updateColors() {
for (PluginListItem pli : ConfigPanel.pluginList) {
if (pli.getPlugin()!=null) {
if (pli.getPlugin().getClass().getAnnotation(PluginDescriptor.class).type()!=null)
switch (pli.getPlugin().getClass().getAnnotation(PluginDescriptor.class).type()) {
case EXTERNAL:
pli.nameLabel.setForeground(config.externalColor());
break;
case PVM:
pli.nameLabel.setForeground(config.pvmColor());
break;
case PVP:
pli.nameLabel.setForeground(config.pvpColor());
break;
case UTILITY:
pli.nameLabel.setForeground(config.utilityColor());
break;
default:
pli.nameLabel.setForeground(Color.WHITE);
break;
}
switch (pli.getPlugin().getClass().getAnnotation(PluginDescriptor.class).type()) {
case EXTERNAL:
pli.nameLabel.setForeground(config.externalColor());
break;
case PVM:
pli.nameLabel.setForeground(config.pvmColor());
break;
case PVP:
pli.nameLabel.setForeground(config.pvpColor());
break;
case UTILITY:
pli.nameLabel.setForeground(config.utilityColor());
break;
default:
pli.nameLabel.setForeground(Color.WHITE);
break;
}
}
}
}
@@ -103,38 +102,27 @@ public class PluginSorterPlugin extends Plugin {
while (iter.hasNext()) {
PluginListItem pli = iter.next();
if (pli.getPlugin() != null) {
if (!pli.getPlugin().getClass().getAnnotation(PluginDescriptor.class).type().equals(""))
if (pli.getPlugin().getClass().getAnnotation(PluginDescriptor.class).type().equals("external")) {
iter.remove();
removedPlugins.add(pli);
}
if (!pli.getPlugin().getClass().getAnnotation(PluginDescriptor.class).type().equals(""))
if (pli.getPlugin().getClass().getAnnotation(PluginDescriptor.class).type().equals("PVM")) {
iter.remove();
removedPlugins.add(pli);
}
if (!pli.getPlugin().getClass().getAnnotation(PluginDescriptor.class).type().equals(""))
if (pli.getPlugin().getClass().getAnnotation(PluginDescriptor.class).type().equals("PVP")) {
iter.remove();
removedPlugins.add(pli);
}
if (!pli.getPlugin().getClass().getAnnotation(PluginDescriptor.class).type().equals(""))
if (pli.getPlugin().getClass().getAnnotation(PluginDescriptor.class).type().equals("utility")) {
iter.remove();
removedPlugins.add(pli);
}
switch (pli.getPlugin().getClass().getAnnotation(PluginDescriptor.class).type())
{
case PVM:
case PVP:
case UTILITY:
case EXTERNAL:
iter.remove();
removedPlugins.add(pli);
break;
case GENERAL_USE:
default:
break;
}
}
}
}
public void showPlugins() {
List<PluginListItem> tempList = new ArrayList<>();
for (PluginListItem pli : removedPlugins) {
tempList.add(pli);
}
for (PluginListItem pli : ConfigPanel.pluginList) {
tempList.add(pli);
}
tempList.addAll(removedPlugins);
tempList.addAll(ConfigPanel.pluginList);
ConfigPanel.pluginList = tempList;
}
}