private void removeSongs() {
   if (QMessageBox.question(
           this,
           Translations.get("dialog_remove_filter_record_title"),
           Translations.get("dialog_remove_filter_record_text"),
           QMessageBox.StandardButton.Yes,
           QMessageBox.StandardButton.No)
       != QMessageBox.StandardButton.Yes.value()) {
     return;
   }
   Vector<SearchRecord> selectedRecords = getSelectedRecords();
   Vector<SongRecord> selectedSongs = new Vector<SongRecord>(selectedRecords.size());
   FilterRecord filterRecord =
       ((FilterProfile) ProfileWidgetUI.instance.getCurrentProfile()).getFilterRecord();
   if (log.isDebugEnabled())
     log.debug("removeSongs(): removing songs=" + selectedSongs + ", from filter=" + filterRecord);
   for (SearchRecord record : selectedRecords) selectedSongs.add((SongRecord) record);
   boolean containsInternal = false;
   boolean containsExternal = false;
   for (SongRecord song : selectedSongs) {
     if (song.isExternalItem()) containsExternal = true;
     else containsInternal = true;
   }
   filterRecord.removeSongRecords(selectedSongs);
   if (containsInternal) filterRecord.computeNumSongRecords();
   if (containsExternal) filterRecord.computeNumExternalSongRecords();
   filterRecord.update();
 }