diff options
| author | Ben Beltran <ben@nsovocal.com> | 2015-07-10 11:12:25 -0500 |
|---|---|---|
| committer | Ben Beltran <ben@nsovocal.com> | 2015-07-10 11:12:25 -0500 |
| commit | 24c7594d62d8d7fbbcdb64b11ce4adc5d8e6991a (patch) | |
| tree | ded312222bb108923da1820ba40b04d710d20e5b /atom/packages/vim-mode/lib/view-models/view-model.coffee | |
| parent | eb786e82d170e2abc351a432ade616d6ecdeeb6b (diff) | |
Adds atom
Diffstat (limited to 'atom/packages/vim-mode/lib/view-models/view-model.coffee')
| -rw-r--r-- | atom/packages/vim-mode/lib/view-models/view-model.coffee | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/atom/packages/vim-mode/lib/view-models/view-model.coffee b/atom/packages/vim-mode/lib/view-models/view-model.coffee new file mode 100644 index 0000000..9cc63e1 --- /dev/null +++ b/atom/packages/vim-mode/lib/view-models/view-model.coffee @@ -0,0 +1,24 @@ +VimCommandModeInputElement = require './vim-command-mode-input-element' + +class ViewModel + constructor: (@operation, opts={}) -> + {@editor, @vimState} = @operation + @view = new VimCommandModeInputElement().initialize(this, opts) + @editor.commandModeInputView = @view + @vimState.onDidFailToCompose => @view.remove() + + confirm: (view) -> + @vimState.pushOperations(new Input(@view.value)) + + cancel: (view) -> + if @vimState.isOperatorPending() + @vimState.pushOperations(new Input('')) + +class Input + constructor: (@characters) -> + isComplete: -> true + isRecordable: -> true + +module.exports = { + ViewModel, Input +} |