public void drawAll(Graphics g)
 {
     foreach (object obj in gobjects)
     {
         GraphicsObject gobj = (GraphicsObject)obj;  //needed to cast because we used arraylist which can store mixed items
         gobj.drawSelf(g);
     }
 }
 public void Delete(GraphicsObject gobj)
 {
     gobjects.Remove(gobj);
 }
 public void Add(GraphicsObject gobj)
 {
     gobjects.Add(gobj);
 }
 public void Delete(GraphicsObject gobj)
 {
     gobjects.Remove(gobj);
 }
 public void Add(GraphicsObject gobj)
 {
     gobjects.Add(gobj);
 }