/** * Remove these verses from the rankings, ie, set their rank to zero. * * @param that * The verses to remove/decrement */ public void remove(Key that) { optimizeWrites(); for (Key aKey : that) { Verse verse = (Verse) aKey; kill(verse.getOrdinal()); } fireIntervalRemoved(this, null, null); }
@Override public void removeAll(Key key) { optimizeWrites(); if (key instanceof PassageTally) { PassageTally tally = (PassageTally) key; int vib = getVersification().maximumOrdinal(); for (int i = 0; i <= vib; i++) { if (tally.board[i] != 0) { kill(i); } } } else { for (Key aKey : key) { Verse verse = (Verse) aKey; kill(verse.getOrdinal()); } } fireIntervalRemoved(this, null, null); // Just because we've decremented some doesn't // change the max. So we don't need to do: // incrementMax(-1); }