예제 #1
0
파일: Map.java 프로젝트: cothong/tiled-java
  /** Notifies all registered map change listeners about a change. */
  protected void fireMapChanged() {
    MapChangedEvent event = null;
    // clone mapChangeListeners first, because otherwise we'll get
    // concurrent modification exceptions if a listener calls something
    // that add or removes listeners
    Iterable<MapChangeListener> mapChangeListenersClone =
        new Vector<MapChangeListener>(mapChangeListeners);

    for (MapChangeListener l : mapChangeListenersClone) {
      if (event == null) event = new MapChangedEvent(this);
      l.mapChanged(event);
    }
  }