@Override final void setNotifyDetached (DesignComponent component) { super.setNotifyDetached (component); if (listener != null) component.getDocument ().getListenerManager ().removeDesignListener (listener); state = State.REMOVING_DEPENDENCIES; notifyDetached (component); state = State.DISABLED; }
private void fireActiveDocumentChanged (DesignDocument deactivatedDocument, final DesignDocument activatedDocument) { Listener[] Listeners; synchronized (listeners) { Listeners = listeners.toArray (new Listener[listeners.size ()]); } for (Listener listener : Listeners) { if (listener != null) listener.activeDocumentChanged (deactivatedDocument, activatedDocument); } if (deactivatedDocument != activatedDocument) { if (deactivatedDocument != null) { if (selectionListener == null) Debug.warning ("SelectionListener does not exist but it should"); // NOI18N else deactivatedDocument.getListenerManager ().removeDesignListener (selectionListener); } if (activatedDocument != null) { activatedDocument.getTransactionManager ().readAccess (new Runnable () { public void run () { activatedDocument.getListenerManager ().addDesignListener (selectionListener = new SelectionDesignListener (activatedDocument), FILTER_SELECTION); fireActiveComponentsChanged (activatedDocument.getSelectedComponents ()); } }); } else { fireActiveComponentsChanged (Collections.<DesignComponent>emptyList ()); } } }
this.document.getListenerManager().removeDesignListener(this); this.removeListeners(designIdMap.keySet().toArray()); oldGameDesign.removeGlobalRepositoryListener(this);
public void setDesignDocument(DesignDocument document) { if (document != null) { PropertiesNodesManager.this.document = document; document.getListenerManager().addDesignListener(this, new DesignEventFilter().setGlobal(true)); ActiveDocumentSupport.getDefault().addActiveDocumentListener(this); ActiveViewSupport.getDefault().addActiveViewListener(this); } else if (this.document != null) { ActiveDocumentSupport.getDefault().removeActiveDocumentListener(this); ActiveViewSupport.getDefault().removeActiveViewListener(this); this.document.getListenerManager().removeDesignListener(this); this.document.getTransactionManager().readAccess(new Runnable() { public void run() { DesignComponent root = PropertiesNodesManager.this.document.getRootComponent(); for (DesignComponent c : root.getComponents()) { cleanUpAll(c); } } }); this.document = null; view = null; propertySupportMap = null; sheetMap = null; nodesMap = null; } }