Package org.fxmisc.undo.impl
Class UnlimitedChangeQueue<C>
- java.lang.Object
-
- org.fxmisc.undo.impl.UnlimitedChangeQueue<C>
-
- All Implemented Interfaces:
ChangeQueue<C>
public class UnlimitedChangeQueue<C> extends java.lang.Object implements ChangeQueue<C>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private classUnlimitedChangeQueue.QueuePositionImpl-
Nested classes/interfaces inherited from interface org.fxmisc.undo.impl.ChangeQueue
ChangeQueue.QueuePosition
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.ArrayList<RevisionedChange<C>>changesprivate intcurrentPositionprivate intforgottenCountprivate longrevisionprivate longzeroPositionRevision
-
Constructor Summary
Constructors Constructor Description UnlimitedChangeQueue()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidforgetHistory()ChangeQueue.QueuePositiongetCurrentPosition()booleanhasNext()booleanhasPrev()Cnext()Returns the next item and increases the current position by 1.CpeekNext()Returns the next item.CpeekPrev()Returns the previous item.Cprev()Returns the previous item and decreases the current position by 1.voidpush(C... changes)private longrevisionForPosition(int position)
-
-
-
Field Detail
-
changes
private final java.util.ArrayList<RevisionedChange<C>> changes
-
currentPosition
private int currentPosition
-
revision
private long revision
-
zeroPositionRevision
private long zeroPositionRevision
-
forgottenCount
private int forgottenCount
-
-
Method Detail
-
hasNext
public final boolean hasNext()
- Specified by:
hasNextin interfaceChangeQueue<C>
-
hasPrev
public final boolean hasPrev()
- Specified by:
hasPrevin interfaceChangeQueue<C>
-
peekNext
public final C peekNext()
Description copied from interface:ChangeQueueReturns the next item. Current position stays unchanged.- Specified by:
peekNextin interfaceChangeQueue<C>
-
next
public final C next()
Description copied from interface:ChangeQueueReturns the next item and increases the current position by 1.- Specified by:
nextin interfaceChangeQueue<C>
-
peekPrev
public final C peekPrev()
Description copied from interface:ChangeQueueReturns the previous item. Current position stays unchanged.- Specified by:
peekPrevin interfaceChangeQueue<C>
-
prev
public final C prev()
Description copied from interface:ChangeQueueReturns the previous item and decreases the current position by 1.- Specified by:
previn interfaceChangeQueue<C>
-
forgetHistory
public void forgetHistory()
- Specified by:
forgetHistoryin interfaceChangeQueue<C>
-
push
@SafeVarargs public final void push(C... changes)
- Specified by:
pushin interfaceChangeQueue<C>
-
getCurrentPosition
public ChangeQueue.QueuePosition getCurrentPosition()
- Specified by:
getCurrentPositionin interfaceChangeQueue<C>
-
revisionForPosition
private long revisionForPosition(int position)
-
-