/** Disposes all resources allocated by this library manager. */
  public void dispose() {
    if (preferenceStoreChangeListener != null) {
      IPreferenceStoreWrapper prefStoreWrapper = LibraryPlugin.getDefault().getPreferenceStore();

      if (prefStoreWrapper != null) {
        prefStoreWrapper.removePropertyChangeListener(preferenceStoreChangeListener);
      }
    }

    if (libraryChangedListeners.size() > 0) {
      libraryChangedListeners.clear();
    }

    //		if (detachedLibraryChangedListeners.size() > 0) {
    //			detachedLibraryChangedListeners.clear();
    //		}

    if (resourceChangeListeners.size() > 0) {
      resourceChangeListeners.clear();
    }
    if (editingDomain != null) {
      unregisterEditingDomain(editingDomain);
      editingDomain = null;
    }
    library = null;
  }
Exemple #2
0
 /**
  * Removes the given help listener from this viewer. Has no effect if an identical listener is not
  * registered.
  *
  * @param listener a help listener
  */
 public void removeHelpListener(HelpListener listener) {
   helpListeners.remove(listener);
   if (helpListeners.size() == 0) {
     Control control = getControl();
     if (control != null && !control.isDisposed()) {
       control.removeHelpListener(this.helpListener);
       helpHooked = false;
     }
   }
 }
 /** {@inheritDoc} */
 public void removePropertyChangeListener(IPropertyChangeListener listener) {
   fListeners.remove(listener);
   if (fListeners.size() == 0) {
     getNode().removePreferenceChangeListener(fListener);
   }
 }
 /** {@inheritDoc} */
 public void addPropertyChangeListener(IPropertyChangeListener listener) {
   if (fListeners.size() == 0) getNode().addPreferenceChangeListener(fListener);
   fListeners.add(listener);
 }