Back to index

wims  3.65+svn20090927
MacroBar.java
Go to the documentation of this file.
00001 /*
00002  * Created on 02.07.2007
00003  *
00004  */
00005 package rene.zirkel.macro;
00006 
00007 import java.awt.*;
00008 import java.util.*;
00009 
00010 import rene.gui.*;
00011 
00012 class MacroBarElement
00013 {      public MacroItem M;
00014        public String Name;
00015        public MacroBarElement (MacroItem m, String name)
00016        {      M=m; Name=name;
00017        }
00018 }
00019 
00020 public class MacroBar extends IconBar 
00021 {      Vector V=new Vector();
00022        
00023        public MacroBar (Frame f)
00024        {      super(f,false);
00025               Resource="/icons/";
00026        }
00027        
00028        public void update (Vector macros)
00029        {      removeAll();
00030               V.removeAllElements();
00031               Enumeration e=macros.elements();
00032               while (e.hasMoreElements())
00033               {      MacroItem m=(MacroItem)e.nextElement();
00034                      String name=m.Name;
00035                      if (name!=null && name.endsWith(")") &&
00036                             (!m.M.isProtected() || Global.getParameter("defaultmacrosinbar",true)))
00037                      {      addToggleLeft(name);
00038                             V.addElement(new MacroBarElement(m,name));
00039                      }
00040               }
00041               doLayout();
00042               forceRepaint();
00043        }
00044        
00045        public void deselectAll ()
00046        {      Enumeration e=V.elements();
00047               while (e.hasMoreElements())
00048               {      MacroBarElement me=(MacroBarElement)e.nextElement();
00049                      setState(me.Name,false);
00050               }
00051        }
00052 
00053        public Macro find (String o)
00054        {      Enumeration e=V.elements();
00055               while (e.hasMoreElements())
00056               {      MacroBarElement me=(MacroBarElement)e.nextElement();
00057                      if (me.Name.equals(o))
00058                      {      return me.M.M;
00059                      }
00060               }
00061               return null;
00062        }
00063        
00064        public void select (Macro m)
00065        {      Enumeration e=V.elements();
00066               while (e.hasMoreElements())
00067               {      MacroBarElement me=(MacroBarElement)e.nextElement();
00068                      if (me.M.M==m)
00069                      {      setState(me.Name,true);
00070                      }
00071               }
00072        }
00073 
00074        public String getHelp (String name)
00075        {      return name;
00076        }
00077 }