/* */ package NET.worlds.console; /* */ /* */ import NET.worlds.network.URL; /* */ import NET.worlds.scape.FrameEvent; /* */ import NET.worlds.scape.Restorer; /* */ import NET.worlds.scape.Saver; /* */ import java.awt.CheckboxMenuItem; /* */ import java.awt.Container; /* */ import java.awt.Event; /* */ import java.awt.Font; /* */ import java.awt.Menu; /* */ import java.awt.MenuItem; /* */ import java.util.Vector; /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ public class SavedAvPart /* */ extends Menu /* */ implements FramePart, DialogReceiver /* */ { /* */ private static final long serialVersionUID = -3931139364330871273L; /* */ private static final int firstUserItem = 3; /* */ private static final String avsFileName = "Gamma.avatars"; /* 44 */ private static URL savedAvsURL = URL.make("home:Gamma.avatars"); /* */ /* */ private static Vector savedAvatars; /* 47 */ private static Font font = new Font(Console.message("MenuFont"), /* 48 */ 0, 12); /* */ /* */ /* 51 */ private MenuItem saveItem = new MenuItem(Console.message("Save-Avatar")); /* 52 */ private MenuItem deleteItem = new MenuItem(Console.message("Delete-Avatar")); /* */ private DefaultConsole console; /* */ /* */ public SavedAvPart() { /* 56 */ super(Console.message("Saved-Avatars")); /* 57 */ if (savedAvatars == null) /* 58 */ loadAvatars(); /* */ } /* */ /* */ private static void loadAvatars() { /* */ try { /* 63 */ Restorer r = new Restorer(savedAvsURL); /* 64 */ savedAvatars = r.restoreVector(); /* 65 */ r.done(); /* */ } catch (Exception ex) { /* 67 */ savedAvatars = new Vector(); /* */ } /* */ } /* */ /* */ private static void saveAvatars() { /* */ try { /* 73 */ Saver s = new Saver(savedAvsURL); /* 74 */ s.saveVector(savedAvatars); /* 75 */ s.done(); /* */ } /* */ catch (Exception localException) {} /* */ } /* */ /* */ static int getAvatarCount() { /* 81 */ return savedAvatars.size(); /* */ } /* */ /* */ private static SavedAvMenuItem getAvatar(int index) { /* 85 */ return (SavedAvMenuItem)savedAvatars.elementAt(index); /* */ } /* */ /* */ static String getAvatarName(int index) { /* 89 */ return getAvatar(index).getLabel(); /* */ } /* */ /* */ static String getAvatarAvatar(int index) { /* 93 */ return getAvatar(index).getAvatar(); /* */ } /* */ /* */ private SavedAvMenuItem addAvatar(String name, String avatar) { /* 97 */ SavedAvMenuItem item = new SavedAvMenuItem(name, avatar); /* 98 */ item.setFont(font); /* 99 */ add(item); /* 100 */ savedAvatars.addElement(item); /* 101 */ saveAvatars(); /* 102 */ return item; /* */ } /* */ /* */ void removeAvatar(int index) { /* 106 */ Object item = savedAvatars.elementAt(index); /* 107 */ savedAvatars.removeElementAt(index); /* 108 */ remove(index + 3); /* 109 */ saveAvatars(); /* 110 */ this.console.deletedSavedAvatar((CheckboxMenuItem)item); /* */ } /* */ /* */ public void dialogDone(Object who, boolean confirmed) { /* 114 */ if (confirmed) { /* 115 */ SavedAvAddDialog adder = (SavedAvAddDialog)who; /* 116 */ URL avName = this.console.getDefaultAvatarURL(); /* 117 */ if (avName != null) /* 118 */ this.console.setCurrentAvatarItem(addAvatar(adder.getName(), /* 119 */ avName.getAbsolute())); /* */ } /* */ } /* */ /* */ public void activate(Console c, Container f, Console prev) { /* 124 */ this.console = ((DefaultConsole)c); /* 125 */ this.saveItem.setFont(font); /* 126 */ this.deleteItem.setFont(font); /* 127 */ add(this.saveItem); /* 128 */ add(this.deleteItem); /* 129 */ addSeparator(); /* 130 */ for (int i = 0; i < savedAvatars.size(); i++) { /* 131 */ MenuItem item = (MenuItem)savedAvatars.elementAt(i); /* 132 */ item.setFont(font); /* 133 */ add(item); /* */ } /* */ } /* */ /* */ public void deactivate() { /* 138 */ removeAll(); /* */ } /* */ /* */ public boolean action(Event event, Object what) { /* 142 */ Object target = event.target; /* 143 */ if (target == this.saveItem) { /* 144 */ new SavedAvAddDialog(Console.getFrame(), this); /* 145 */ } else if (target == this.deleteItem) { /* 146 */ new SavedAvDeleteDialog(this); /* 147 */ } else if ((target instanceof SavedAvMenuItem)) { /* 148 */ SavedAvMenuItem item = (SavedAvMenuItem)target; /* 149 */ this.console.setNextAvatar(URL.make(item.getAvatar()), item); /* */ } else { /* 151 */ return false; } /* 152 */ return true; /* */ } /* */ /* */ public boolean handle(FrameEvent f) { /* 156 */ return true; /* */ } /* */ /* */ public CheckboxMenuItem findMenuItem(URL url) { /* 160 */ String name = url.getAbsolute(); /* 161 */ int count = getAvatarCount(); /* 162 */ for (int i = 0; i < count; i++) { /* 163 */ SavedAvMenuItem item = getAvatar(i); /* 164 */ if (item.getAvatar().equals(name)) /* 165 */ return item; /* */ } /* 167 */ return null; /* */ } /* */ } /* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\console\SavedAvPart.class * Java compiler version: 6 (50.0) * JD-Core Version: 0.7.1 */