public void componentRemoved(ContainerEvent e) {
   if (extListener != null && extListener.accept(e.getChild())) {
     extListener.stopListeningTo(e.getChild());
     listenedTo.remove(e.getChild());
   } else if (accept(e.getChild())) {
     detachFrom(e.getChild());
   }
 }
 public void componentAdded(ContainerEvent e) {
   //        if (extListener != null && extListener.accept(e.getChild())) {
   //            extListener.startListeningTo(e.getChild(), extNotifier);
   //            listenedTo.add (e.getChild());
   //        } else if (accept(e.getChild())) {
   if (accept(e.getChild())) {
     attachTo(e.getChild());
   }
 }
 public void componentRemoved(ContainerEvent e) {
   if (e.getChild() instanceof QueryResultPanel) {
     // finalize QueryResultPanel
     ((QueryResultPanel) e.getChild()).close();
   }
 }
 @Override
 public void componentRemoved(ContainerEvent evt) {
   componentRemoved(evt.getChild());
 }