7 import java.util.ArrayList;
8 import java.util.TreeSet;
9 import java.util.Iterator;
10 import java.lang.reflect.*;
11 import java.util.Vector;
12 import java.util.logging.*;
36 private ArrayList<IGeomContainerListener> listeners =
new ArrayList<IGeomContainerListener>();
42 listeners.add(listener);
47 listeners.remove(listener);
50 private void fireListeners()
54 listener.onDataChanged(
this);
65 Iterator<GObject> iterator = iterator();
66 while (iterator.hasNext())
69 if (obj.
view().isSelected())
84 Iterator<GObject> iterator = iterator();
85 while (iterator.hasNext())
88 if (obj.getClass().equals(c))
121 Iterator<GObject> iterator = iterator();
122 while (iterator.hasNext())
124 iterator.next().
draw(gcs);
133 Iterator<GObject> iterator = iterator();
134 while (iterator.hasNext())
137 if (obj.getClass().equals(objClass))
159 Iterator<GObject> iterator = iterator();
160 while (iterator.hasNext())
163 if (obj.
in(canvasX, canvasY, gcs))
Kласс для хранения графических объектов
abstract boolean in(int canvasX, int canvasY, GCoordSystem gcs)
Абстракная функция определяющая принадлежность точки объекту. Переопределяется в подклассах - конкрет...
GeomContainer getObjectsTypeOf(Class c)
Возвращает новый контейнер со всеми объектами данного класса, например Point.class.
void draw(GCoordSystem gcs)
GObject find(Class objClass)
GeomContainer(GCoordSystem gcs)
void addListener(IGeomContainerListener listener)
void removeListener(IGeomContainerListener listener)
Интерфейс слушателя контейнера. Функция вызывается при изменении контейнера
Главный класс отображения. У пользователя нет необходимости его использовать напрямую.
GObject extract(Class objClass)
Абстрактный суперкласс для всех графических объектов
GeomContainer getSelectedObjects()
Возвращает новый контейнер, со всеми выделенными объектами
GObject in(int canvasX, int canvasY, GCoordSystem gcs)