public void actionPerformed(ActionEvent e) {
   OWLClass selClass = getOWLWorkspace().getOWLSelectionModel().getLastSelectedClass();
   List<OWLOntologyChange> changes = new ArrayList<OWLOntologyChange>();
   Set<OWLClassExpression> operands = new HashSet<OWLClassExpression>();
   for (OWLOntology ont : getOWLModelManager().getActiveOntologies()) {
     for (OWLSubClassOfAxiom ax : ont.getSubClassAxiomsForSubClass(selClass)) {
       changes.add(new RemoveAxiom(ont, ax));
       operands.add(ax.getSuperClass());
     }
   }
   if (operands.isEmpty()) {
     return;
   }
   OWLDataFactory df = getOWLModelManager().getOWLDataFactory();
   OWLClassExpression equCls;
   if (operands.size() == 1) {
     equCls = operands.iterator().next();
   } else {
     equCls = df.getOWLObjectIntersectionOf(operands);
   }
   OWLAxiom ax = df.getOWLEquivalentClassesAxiom(CollectionFactory.createSet(selClass, equCls));
   changes.add(new AddAxiom(getOWLModelManager().getActiveOntology(), ax));
   getOWLModelManager().applyChanges(changes);
 }