From f0c8e3a9a4cf318fa7d922dc452a60497444f5ee Mon Sep 17 00:00:00 2001 From: Fabian Jakobs Date: Fri, 11 Feb 2011 12:04:08 +0100 Subject: [PATCH] multi row operations will not be used --- lib/ace/edit_session.js | 42 -------------------- lib/ace/test/edit_session_test.js | 66 ------------------------------- 2 files changed, 108 deletions(-) diff --git a/lib/ace/edit_session.js b/lib/ace/edit_session.js index 0e299141..89cb2f98 100644 --- a/lib/ace/edit_session.js +++ b/lib/ace/edit_session.js @@ -483,52 +483,10 @@ var EditSession = function(text, mode) { return this.doc.insert(position, text); }; - /** - * @param rows Array[Integer] sorted list of rows - */ - this.multiRowInsert = function(rows, column, text) { - for (var i=rows.length-1; i>=0; i--) { - var row = rows[i]; - if (row >= this.doc.getLength()) - continue; - - var diff = column - this.doc.getLine(row).length; - if ( diff > 0) { - var padded = lang.stringRepeat(" ", diff) + text; - var offset = -diff; - } - else { - padded = text; - offset = 0; - } - - var end = this.insert({row: row, column: column+offset}, padded); - } - - return { - rows: end ? end.row - rows[0] : 0, - columns: end ? end.column - column : 0 - }; - }; - this.remove = function(range) { return this.doc.remove(range); }; - this.multiRowRemove = function(rows, range) { - if (range.start.row !== rows[0]) - throw new TypeError("range must start in the first row!"); - - var height = range.end.row - rows[0]; - for (var i=rows.length-1; i>=0; i--) { - var row = rows[i]; - if (row >= this.doc.getLength()) - continue; - - var end = this.remove(new Range(row, range.start.column, row+height, range.end.column)); - } - }; - this.undoChanges = function(deltas) { if (!deltas.length) return; diff --git a/lib/ace/test/edit_session_test.js b/lib/ace/test/edit_session_test.js index 3ab24e94..8d1bbbc5 100644 --- a/lib/ace/test/edit_session_test.js +++ b/lib/ace/test/edit_session_test.js @@ -263,72 +263,6 @@ var Test = { computeAndAssert(" ぁぁ\tぁ", [1, 4], 4); }, - "test: insert text in multiple rows": function() { - var session = new EditSession(["12", "", "abcd"]); - - var inserted = session.multiRowInsert([0, 1, 2], 2, "juhu 1"); - assert.equal(inserted.rows, 0); - assert.equal(inserted.columns, 6); - - assert.equal(session.getValue(), ["12juhu 1", " juhu 1", "abjuhu 1cd"].join("\n")); - }, - - "test: undo insert text in multiple rows": function() { - var session = new EditSession(["12", "", "abcd"]); - - var undoManager = new UndoManager(); - session.setUndoManager(undoManager); - - session.multiRowInsert([0, 1, 2], 2, "juhu 1"); - session.$informUndoManager.call(); - assert.equal(session.getValue(), ["12juhu 1", " juhu 1", "abjuhu 1cd"].join("\n")); - - undoManager.undo(); - assert.equal(session.getValue(), ["12", "", "abcd"].join("\n")); - - undoManager.redo(); - assert.equal(session.getValue(), ["12juhu 1", " juhu 1", "abjuhu 1cd"].join("\n")); - }, - - "test: insert new line in multiple rows": function() { - var session = new EditSession(["12", "", "abcd"]); - - var inserted = session.multiRowInsert([0, 1, 2], 2, "\n"); - assert.equal(inserted.rows, 1); - assert.equal(session.getValue(), ["12\n", " \n", "ab\ncd"].join("\n")); - }, - - "test: insert multi line text in multiple rows": function() { - var session = new EditSession(["12", "", "abcd"]); - - var inserted = session.multiRowInsert([0, 1, 2], 2, "juhu\n12"); - assert.equal(inserted.rows, 1); - assert.equal(session.getValue(), ["12juhu\n12", " juhu\n12", "abjuhu\n12cd"].join("\n")); - }, - - "test: remove right in multiple rows" : function() { - var session = new EditSession(["12", "", "abcd"]); - - session.multiRowRemove([0, 1, 2], new Range(0, 2, 0, 3)); - assert.equal(session.getValue(), ["12", "", "abd"].join("\n")); - }, - - "test: undo remove right in multiple rows" : function() { - var session = new EditSession(["12", "", "abcd"]); - var undoManager = new UndoManager(); - session.setUndoManager(undoManager); - - session.multiRowRemove([0, 1, 2], new Range(0, 1, 0, 3)); - session.$informUndoManager.call(); - assert.equal(session.getValue(), ["1", "", "ad"].join("\n")); - - undoManager.undo(); - assert.equal(session.getValue(), ["12", "", "abcd"].join("\n")); - - undoManager.redo(); - assert.equal(session.getValue(), ["1", "", "ad"].join("\n")); - }, - "test get longest line" : function() { var session = new EditSession(["12"]); session.setTabSize(4);