Make behavioural actions easily extensible

This commit is contained in:
c-spencer 2011-05-22 14:34:01 +01:00
commit bc45a88928
4 changed files with 42 additions and 48 deletions

View file

@ -415,7 +415,7 @@ var Editor =function(renderer, session) {
if (this.getBehavioursEnabled()) {
// Get a transform if the current mode wants one.
var transform = mode.transformInsert(session.getState(cursor.row), this, session, text);
var transform = mode.transformAction(session.getState(cursor.row), 'insertion', this, session, text);
if (transform)
text = transform.text;
}
@ -637,7 +637,10 @@ var Editor =function(renderer, session) {
if (this.getBehavioursEnabled()) {
var session = this.session;
var state = session.getState(range.start.row);
range = session.getMode().transformRemove(state, this, session, range);
var new_range = session.getMode().transformAction(state, 'deletion', this, session, range);
if (new_range !== false) {
range = new_range;
}
}
this.session.remove(range);