ExtKit Design View
Completion Design View
Status: designing...
Entry Point Handlers
User types a character ("UT") :position, character
UT -> AWT/Swing -> kit.ExtDefaultKeyAction
lockDocument
detachCompletionDocumentHandler
detachCompletionCaretHandler
updateDocument
switch lexsupport.codeCompletion
cc.autoShow
cc.refresh
cc.hide
attachCompletionCaretHandler
attachCompletionDocumentHandler
unlockDocument
User moves caret ("UM") (navigation keys or mouse click) :position
UM -> AWT/Swing -> cc.CaretListener
cc.cancel()
User invokes code assistent ("UC") :position
UC -> AWT/Swing -> kit.AssistantAction
cc.show
User invokes kill assistant action
UC -> AWT/Swing -> kit.AssistantAction
cc.hide
User invokes select assistant action
UC -> AWT/Swing -> kit.AssistantAction
cc.hide
cc.perform ??? [order is pending]
Module modifies document ("MM") :documentEvent
MM -> unknown thread -> cc.DocumentListener
cc.refresh
Completion API
+ Completion:
+ autoShow(position, character) instruct completion to open sometimes
+ show(position, character) instruct completion to open in limited time
+ refresh(position, character) if open then update content
+ refresh(documentEvent) if open then update content
+ hide() hide view
+ CompletionEnvironment implements DocumentListener, CaretListener
disableDocumentListener
enableDocumentListener
disableCaretListener
enableCaretListener
|