package me.desht.scrollingmenusign.commands; import java.awt.Font; import java.awt.GraphicsEnvironment; import me.desht.dhutils.MessagePager; import org.bukkit.command.CommandSender; import org.bukkit.plugin.Plugin; public class FontCommand extends SMSAbstractCommand { public FontCommand() { super("sms font", 0, 1); setPermissionNode("scrollingmenusign.commands.font"); setUsage("/sms font"); } @Override public boolean execute(Plugin plugin, CommandSender sender, String[] args) { GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment(); Font[] fonts = ge.getAllFonts(); MessagePager pager = MessagePager.getPager(sender).clear(); int matched = 0; StringBuilder sb = new StringBuilder(); for (Font font : fonts) { String fn = font.getName(); if (args.length >= 1 && !fn.toLowerCase().contains(args[0].toLowerCase())) { continue; } if (sb.length() + fn.length() > 60) { pager.add(sb.toString()); sb.setLength(0); } sb.append(fn).append(", "); matched++; } pager.add(sb.toString()); pager.add(matched + " fonts matched (of " + fonts.length + " total)"); pager.showPage(); return true; } }