protected void selectionChanged() {
   Vector<SearchRecord> selectedRecords = getSelectedRecords();
   boolean containsPlayable = false;
   for (SearchRecord searchRecord : selectedRecords) {
     if (!searchRecord.isExternalItem()) {
       containsPlayable = true;
       break;
     }
   }
   removeAction(playAction);
   removeAction(separator1);
   removeAction(mergeAction);
   removeAction(separator2);
   removeAction(removeAction);
   boolean added = false;
   if (containsPlayable) {
     addAction(playAction);
     added = true;
   }
   if (selectedRecords.size() > 1) {
     if (added) addAction(separator1);
     addAction(mergeAction);
   }
   if (selectedRecords.size() > 0) {
     if (added) addAction(separator2);
     addAction(removeAction);
   }
 }