// // AnimatedBody.java // BodiesInASetting // // Created by Guy Lapalme on 20/05/05. // Copyright (c) 2005 Universite de Montreal. All rights reserved. // Modified in June 2014 // import java.awt.Graphics; import java.awt.Image; import java.awt.Rectangle; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.ImageIcon; import javax.swing.JMenuItem; import javax.swing.JPopupMenu; import javax.swing.JTextArea; public abstract class AnimatedBody { AnimatedBody(String name){ this.name = name; setPosition(new MyPoint(0,0)); setDirection(0); setAspect(0); } // CLASS Part private static JTextArea traceTA; protected static Setting setting; protected static AnimatedBody thisBody; protected static String[] aniBodyMenuLabels = {"moveTo"}; public static void setSettingTrace(Setting s,JTextArea t){ setting=s; traceTA=t; } // listener for all popmenu actions public static ActionListener AniBodyMenuListener = new ActionListener(){ public void actionPerformed(ActionEvent e){ thisBody.perform(e.getActionCommand()); } }; // adding labels to a popup menu and connecting the listener to the men items public static JPopupMenu appendMenu(JPopupMenu menu,String[] labels){ for(int i=0;i