Package io.keikai.doc.api.impl.model
Class AIDocumentModel
java.lang.Object
io.keikai.doc.api.impl.model.AIDocumentModel
- All Implemented Interfaces:
io.keikai.doc.api.DocumentModel,io.keikai.doc.api.DocumentSelectableModel,io.keikai.doc.api.DocumentUndoableModel
public class AIDocumentModel
extends Object
implements io.keikai.doc.api.DocumentModel, io.keikai.doc.api.DocumentSelectableModel, io.keikai.doc.api.DocumentUndoableModel
A document model that wraps another document model for AI assistant.
- Author:
- jumperchen
-
Constructor Summary
ConstructorsConstructorDescriptionAIDocumentModel(io.keikai.doc.api.DocumentModel model) Creates a new AI document model. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddListener(io.keikai.doc.api.DocumentModelListener listener) booleancanRedo()booleancanUndo()voidvoidfireOperation(io.keikai.doc.api.DocumentOperation operation) intList<io.keikai.doc.api.DocumentModelListener>getLock()intio.keikai.doc.api.impl.node.AbstractDocumentNode<?,?, ?> getNode(io.keikai.doc.api.Path path) io.keikai.doc.api.PathgetPath(io.keikai.doc.api.DocumentNode<?, ?, ?> node) List<io.keikai.doc.api.DocumentOperationBatch>io.keikai.doc.api.impl.node.RootNodegetRoot()io.keikai.doc.api.DocumentRangevoidloadJSON(org.zkoss.json.JSONObject json) voidredo()voidremoveListener(io.keikai.doc.api.DocumentModelListener listener) voidvoidvoidrunBatch(CompletableFuture<?> future) Runs a batch operation and adds it to the revision history.voidrunWithMergeBatch(Runnable runnable) Runs a batch operation and adds it to the revision history.voidsetMaxRevisionSize(int size) voidsetRoot(io.keikai.doc.api.DocumentNode<?, ?, ?> root) voidsetSelection(io.keikai.doc.api.DocumentRange selection) org.zkoss.json.JSONObjecttoJSON()voidundo()
-
Constructor Details
-
AIDocumentModel
public AIDocumentModel(io.keikai.doc.api.DocumentModel model) Creates a new AI document model.- Parameters:
model- the document model to wrap
-
-
Method Details
-
toJSON
public org.zkoss.json.JSONObject toJSON()- Specified by:
toJSONin interfaceio.keikai.doc.api.DocumentModel
-
loadJSON
public void loadJSON(org.zkoss.json.JSONObject json) - Specified by:
loadJSONin interfaceio.keikai.doc.api.DocumentModel
-
getRoot
public io.keikai.doc.api.impl.node.RootNode getRoot()- Specified by:
getRootin interfaceio.keikai.doc.api.DocumentModel
-
setRoot
public void setRoot(io.keikai.doc.api.DocumentNode<?, ?, ?> root) - Specified by:
setRootin interfaceio.keikai.doc.api.DocumentModel
-
getNode
public io.keikai.doc.api.impl.node.AbstractDocumentNode<?,?, getNode?> (io.keikai.doc.api.Path path) - Specified by:
getNodein interfaceio.keikai.doc.api.DocumentModel
-
getPath
public io.keikai.doc.api.Path getPath(io.keikai.doc.api.DocumentNode<?, ?, ?> node) - Specified by:
getPathin interfaceio.keikai.doc.api.DocumentModel
-
addListener
public void addListener(io.keikai.doc.api.DocumentModelListener listener) - Specified by:
addListenerin interfaceio.keikai.doc.api.DocumentModel
-
removeListener
public void removeListener(io.keikai.doc.api.DocumentModelListener listener) - Specified by:
removeListenerin interfaceio.keikai.doc.api.DocumentModel
-
getListeners
- Specified by:
getListenersin interfaceio.keikai.doc.api.DocumentModel
-
fireOperation
public void fireOperation(io.keikai.doc.api.DocumentOperation operation) - Specified by:
fireOperationin interfaceio.keikai.doc.api.DocumentModel
-
getLock
- Specified by:
getLockin interfaceio.keikai.doc.api.DocumentModel
-
getSelection
public io.keikai.doc.api.DocumentRange getSelection()- Specified by:
getSelectionin interfaceio.keikai.doc.api.DocumentSelectableModel
-
setSelection
public void setSelection(io.keikai.doc.api.DocumentRange selection) - Specified by:
setSelectionin interfaceio.keikai.doc.api.DocumentSelectableModel
-
getRevisionHistory
- Specified by:
getRevisionHistoryin interfaceio.keikai.doc.api.DocumentUndoableModel
-
getCurrentRevisionIndex
public int getCurrentRevisionIndex()- Specified by:
getCurrentRevisionIndexin interfaceio.keikai.doc.api.DocumentUndoableModel
-
getMaxRevisionSize
public int getMaxRevisionSize()- Specified by:
getMaxRevisionSizein interfaceio.keikai.doc.api.DocumentUndoableModel
-
setMaxRevisionSize
public void setMaxRevisionSize(int size) - Specified by:
setMaxRevisionSizein interfaceio.keikai.doc.api.DocumentUndoableModel
-
canUndo
public boolean canUndo()- Specified by:
canUndoin interfaceio.keikai.doc.api.DocumentUndoableModel
-
undo
public void undo()- Specified by:
undoin interfaceio.keikai.doc.api.DocumentUndoableModel
-
canRedo
public boolean canRedo()- Specified by:
canRedoin interfaceio.keikai.doc.api.DocumentUndoableModel
-
redo
public void redo()- Specified by:
redoin interfaceio.keikai.doc.api.DocumentUndoableModel
-
clearRevisionHistory
public void clearRevisionHistory()- Specified by:
clearRevisionHistoryin interfaceio.keikai.doc.api.DocumentUndoableModel
-
runBatch
- Specified by:
runBatchin interfaceio.keikai.doc.api.DocumentModel
-
runBatch
- Specified by:
runBatchin interfaceio.keikai.doc.api.DocumentModel
-
runBatch
Runs a batch operation and adds it to the revision history. UnlikerunBatch(Runnable), all the operations in thefuturewill be added to the revision history as a single batch.- Parameters:
future- the future to run
-
runWithMergeBatch
Runs a batch operation and adds it to the revision history. UnlikerunBatch(Runnable), all the operations in therunnablewill be merged to the current revision history.- Parameters:
runnable- the operation to run
-