private void fireUpdate(Manip manip) { Set windows = (Set) manipToWindowMap.get(manip); assert windows != null; for (Iterator iter = windows.iterator(); iter.hasNext(); ) { windowListener.update((AWTGLAutoDrawable) iter.next()); } }
/** Remove a given manipulator from a given window. The window must be registered. */ public synchronized void removeManipFromWindow(Manip manip, AWTGLAutoDrawable window) { WindowInfo info = (WindowInfo) windowToInfoMap.get(window); if (info == null) { throw new RuntimeException("Window not registered"); } if (!info.manips.remove(manip)) { throw new RuntimeException("Manip not registered in window"); } Set windows = (Set) manipToWindowMap.get(manip); assert windows != null; windows.remove(window); }
/** * Make a given manipulator visible and active in a given window. The window must be registered. */ public synchronized void showManipInWindow(Manip manip, AWTGLAutoDrawable window) { WindowInfo info = (WindowInfo) windowToInfoMap.get(window); if (info == null) { throw new RuntimeException("Window not registered"); } info.manips.add(manip); Set windows = (Set) manipToWindowMap.get(manip); if (windows == null) { windows = new HashSet(); manipToWindowMap.put(manip, windows); } windows.add(window); }