forked from Botanical/BotanJS
externs
This commit is contained in:
parent
ee26a7dcc8
commit
b7c693be07
@ -19,9 +19,7 @@
|
||||
INSERT.prototype.handler = function( e )
|
||||
{
|
||||
e.preventDefault();
|
||||
if( e.key.length == "1" )
|
||||
{
|
||||
}
|
||||
var inputChar = e.key;
|
||||
};
|
||||
|
||||
INSERT.prototype.getMessage = function()
|
||||
|
@ -5,19 +5,29 @@
|
||||
|
||||
var Controls = function( sender, e )
|
||||
{
|
||||
// Action Mode handled by the actions themselves
|
||||
var cfeeder = sender.contentFeeder;
|
||||
if( cfeeder.cursor.action )
|
||||
{
|
||||
cfeeder.cursor.action.handler( e );
|
||||
return;
|
||||
}
|
||||
|
||||
// Neve capture these keys
|
||||
if( e.altKey
|
||||
// F2 - F12
|
||||
|| ( 112 < e.keyCode && e.keyCode < 124 )
|
||||
) return;
|
||||
|
||||
// Action Mode handled by the actions themselves
|
||||
var cfeeder = sender.contentFeeder;
|
||||
if( cfeeder.cursor.action )
|
||||
{
|
||||
// Esc OR Ctrl+c
|
||||
if( e.keyCode == 27 || ( e.ctrlKey && e.keyCode == 67 ) )
|
||||
{
|
||||
e.preventDefault();
|
||||
cfeeder.cursor.closeAction();
|
||||
}
|
||||
else
|
||||
{
|
||||
cfeeder.cursor.action.handler( e );
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
e.preventDefault();
|
||||
|
||||
if( e.ctrlKey )
|
||||
@ -50,7 +60,7 @@
|
||||
|
||||
// Insert
|
||||
case 65: // a
|
||||
cfeeder.cursor.openInsert();
|
||||
cfeeder.cursor.openAction( "INSERT" );
|
||||
break;
|
||||
|
||||
case 1065: // A, append at the line end
|
||||
|
@ -71,7 +71,6 @@
|
||||
// The resulting position
|
||||
this.P = 0;
|
||||
|
||||
/** @type {Components.Vim.IAction} */
|
||||
this.action = null;
|
||||
};
|
||||
|
||||
@ -207,13 +206,21 @@
|
||||
this.updatePosition();
|
||||
};
|
||||
|
||||
Cursor.prototype.openInsert = function()
|
||||
Cursor.prototype.openAction = function( name )
|
||||
{
|
||||
var feeder = this.feeder;
|
||||
if( this.action ) this.action.dispose();
|
||||
this.action = new (Actions[ "INSERT" ])( this );
|
||||
this.action = new (Actions[ name ])( this );
|
||||
|
||||
feeder.dispatcher.dispatchEvent( new BotanEvent( "VisualUpdate" ) );
|
||||
this.feeder.dispatcher.dispatchEvent( new BotanEvent( "VisualUpdate" ) );
|
||||
};
|
||||
|
||||
Cursor.prototype.closeAction = function()
|
||||
{
|
||||
if( !this.action ) return;
|
||||
this.action.dispose();
|
||||
this.action = null;
|
||||
|
||||
this.feeder.dispatcher.dispatchEvent( new BotanEvent( "VisualUpdate" ) );
|
||||
};
|
||||
|
||||
Cursor.prototype.getLine = function()
|
||||
|
@ -49,9 +49,6 @@
|
||||
this.rows = element.rows;
|
||||
this.cols = element.cols;
|
||||
|
||||
this.PosX = 1;
|
||||
this.PosY = 1;
|
||||
|
||||
this.__active = false;
|
||||
|
||||
var _self = this;
|
||||
@ -64,10 +61,6 @@
|
||||
this.VisualizeVimFrame( element.value );
|
||||
};
|
||||
|
||||
VimArea.prototype.startInput = function( mode )
|
||||
{
|
||||
};
|
||||
|
||||
VimArea.prototype.select = function( sel )
|
||||
{
|
||||
if( !this.__active ) return;
|
||||
|
43
botanjs/src/externs/Components.Vim.Cursor.js
Normal file
43
botanjs/src/externs/Components.Vim.Cursor.js
Normal file
@ -0,0 +1,43 @@
|
||||
/** @constructor */
|
||||
Components.Vim.Cursor = function(){};
|
||||
|
||||
/** @type {Components.Vim.LineFeeder} */
|
||||
Components.Vim.Cursor.feeder;
|
||||
/** @type {Components.Vim.IAction} */
|
||||
Components.Vim.Cursor.action;
|
||||
|
||||
/** @type Function */
|
||||
Components.Vim.Cursor.moveX;
|
||||
/** @type Function */
|
||||
Components.Vim.Cursor.moveY;
|
||||
/** @type Function */
|
||||
Components.Vim.Cursor.lineStart;
|
||||
/** @type Function */
|
||||
Components.Vim.Cursor.lineEnd;
|
||||
/** @type Function */
|
||||
Components.Vim.Cursor.updatePosition;
|
||||
/** @type Function */
|
||||
Components.Vim.Cursor.openAction;
|
||||
/** @type Function */
|
||||
Components.Vim.Cursor.closeAction;
|
||||
|
||||
/** @type {Array} */
|
||||
Components.Vim.Cursor.lineBuffers;
|
||||
/** @type Number */
|
||||
Components.Vim.Cursor.pX;
|
||||
/** @type Number */
|
||||
Components.Vim.Cursor.P;
|
||||
/** @type Number */
|
||||
Components.Vim.Cursor.X;
|
||||
/** @type Number */
|
||||
Components.Vim.Cursor.Y;
|
||||
/** @type Number */
|
||||
Components.Vim.Cursor.cols;
|
||||
/** @type message */
|
||||
Components.Vim.Cursor.string;
|
||||
/** @type Object */
|
||||
Components.Vim.Cursor.position;
|
||||
/** @type Number */
|
||||
Components.Vim.Cursor.position.start;
|
||||
/** @type Number */
|
||||
Components.Vim.Cursor.position.end;
|
9
botanjs/src/externs/Components.Vim.IAction.js
Normal file
9
botanjs/src/externs/Components.Vim.IAction.js
Normal file
@ -0,0 +1,9 @@
|
||||
/** @constructor */
|
||||
Components.Vim.IAction = function(){};
|
||||
|
||||
/** @type Function */
|
||||
Components.Vim.IAction.dispose;
|
||||
/** @type Function */
|
||||
Components.Vim.IAction.handler;
|
||||
/** @type Function */
|
||||
Components.Vim.IAction.getMessage;
|
42
botanjs/src/externs/Components.Vim.LineBuffer.js
Normal file
42
botanjs/src/externs/Components.Vim.LineBuffer.js
Normal file
@ -0,0 +1,42 @@
|
||||
/** @constructor */
|
||||
Components.Vim.LineBuffer = function(){};
|
||||
|
||||
/** @type {Components.Vim.LineBuffer} */
|
||||
Components.Vim.LineBuffer.next;
|
||||
/** @type {Components.Vim.LineBuffer} */
|
||||
Components.Vim.LineBuffer.prev;
|
||||
/** @type {Components.Vim.LineBuffer} */
|
||||
Components.Vim.LineBuffer.nextLine;
|
||||
|
||||
/** @type EventDispatcher */
|
||||
Components.Vim.LineBuffer.dispatcher;
|
||||
|
||||
/** @type Function */
|
||||
Components.Vim.LineBuffer.softReset;
|
||||
/** @type Function */
|
||||
Components.Vim.LineBuffer.pan;
|
||||
/** @type Function */
|
||||
Components.Vim.LineBuffer.render;
|
||||
/** @type Function */
|
||||
Components.Vim.LineBuffer.setRender;
|
||||
/** @type Function */
|
||||
Components.Vim.LineBuffer.init;
|
||||
/** @type Function */
|
||||
Components.Vim.LineBuffer.setWrap;
|
||||
|
||||
/** @type Array */
|
||||
Components.Vim.LineBuffer.visualLines;
|
||||
/** @type Boolean */
|
||||
Components.Vim.LineBuffer.placeholder;
|
||||
/** @type Boolean */
|
||||
Components.Vim.LineBuffer.br;
|
||||
/** @type Number */
|
||||
Components.Vim.LineBuffer.cols;
|
||||
/** @type Number */
|
||||
Components.Vim.LineBuffer.lineNum;
|
||||
/** @type Number */
|
||||
Components.Vim.LineBuffer.tabWidth;
|
||||
/** @type Number */
|
||||
Components.Vim.LineBuffer.linesOccupied;
|
||||
/** @type String */
|
||||
Components.Vim.LineBuffer.content;
|
44
botanjs/src/externs/Components.Vim.LineFeeder.js
Normal file
44
botanjs/src/externs/Components.Vim.LineFeeder.js
Normal file
@ -0,0 +1,44 @@
|
||||
/** @constructor */
|
||||
Components.Vim.LineFeeder = function(){};
|
||||
|
||||
/** @type {Components.Vim.Cursor} */
|
||||
Components.Vim.LineFeeder.cursor;
|
||||
/** @type {Components.Vim.LineBuffer} */
|
||||
Components.Vim.LineFeeder.firstBuffer;
|
||||
/** @type {Components.Vim.LineBuffer} */
|
||||
Components.Vim.LineFeeder.lastBuffer;
|
||||
|
||||
/** @type EventDispatcher */
|
||||
Components.Vim.LineFeeder.dispatcher;
|
||||
|
||||
/** @type Function */
|
||||
Components.Vim.LineFeeder.softReset;
|
||||
/** @type Function */
|
||||
Components.Vim.LineFeeder.pan;
|
||||
/** @type Function */
|
||||
Components.Vim.LineFeeder.render;
|
||||
/** @type Function */
|
||||
Components.Vim.LineFeeder.setRender;
|
||||
/** @type Function */
|
||||
Components.Vim.LineFeeder.init;
|
||||
/** @type Function */
|
||||
Components.Vim.LineFeeder.setWrap;
|
||||
|
||||
/** @type {Array} */
|
||||
Components.Vim.LineFeeder.lineBuffers;
|
||||
/** @type Boolean */
|
||||
Components.Vim.LineFeeder.EOF;
|
||||
/** @type Number */
|
||||
Components.Vim.LineFeeder.panX;
|
||||
/** @type Number */
|
||||
Components.Vim.LineFeeder.panY;
|
||||
/** @type Number */
|
||||
Components.Vim.LineFeeder.moreAt;
|
||||
/** @type Number */
|
||||
Components.Vim.LineFeeder.linesOccupied;
|
||||
/** @type String */
|
||||
Components.Vim.LineFeeder.docPos;
|
||||
/** @type String */
|
||||
Components.Vim.LineFeeder.lineStat;
|
||||
/** @type {String} */
|
||||
Components.Vim.LineFeeder.content;
|
7
botanjs/src/externs/Components.Vim.StatusBar.js
Normal file
7
botanjs/src/externs/Components.Vim.StatusBar.js
Normal file
@ -0,0 +1,7 @@
|
||||
/** @constructor */
|
||||
Components.Vim.StatusBar = function(){};
|
||||
|
||||
/** @type Function */
|
||||
Components.Vim.StatusBar.stamp;
|
||||
/** @type String */
|
||||
Components.Vim.StatusBar.statusText;
|
14
botanjs/src/externs/Components.Vim.VimArea.js
Normal file
14
botanjs/src/externs/Components.Vim.VimArea.js
Normal file
@ -0,0 +1,14 @@
|
||||
/** @constructor */
|
||||
Components.Vim.VimArea = function(){};
|
||||
|
||||
/** @type {Components.Vim.LineFeeder} */
|
||||
Components.Vim.VimArea.contentFeeder;
|
||||
/** @type {Components.Vim.LineFeeder} */
|
||||
Components.Vim.VimArea.statusFeeder;
|
||||
/** @type {Components.Vim.StatusBar} */
|
||||
Components.Vim.VimArea.statusBar;
|
||||
|
||||
/** @type {Number} */
|
||||
Components.Vim.VimArea.rows;
|
||||
/** @type {Number} */
|
||||
Components.Vim.VimArea.cols;
|
2
botanjs/src/externs/Components.Vim.js
Normal file
2
botanjs/src/externs/Components.Vim.js
Normal file
@ -0,0 +1,2 @@
|
||||
/** @object */
|
||||
Components.Vim = {};
|
Loading…
Reference in New Issue
Block a user