From 0582153019bdcb3d89fc848c69ce5457680fd618 Mon Sep 17 00:00:00 2001 From: Eric Arnold Date: Fri, 9 May 2014 16:24:02 -0700 Subject: [PATCH] Turned linking.js into extension. Merged linking_handler into linking.js. --- lib/ace/ace.js | 2 - .../linking_handler.js => ext/linking.js} | 21 +++++- lib/ace/linking.js | 66 ------------------- 3 files changed, 18 insertions(+), 71 deletions(-) rename lib/ace/{mouse/linking_handler.js => ext/linking.js} (84%) delete mode 100644 lib/ace/linking.js diff --git a/lib/ace/ace.js b/lib/ace/ace.js index 850f44f6..a2261355 100644 --- a/lib/ace/ace.js +++ b/lib/ace/ace.js @@ -47,7 +47,6 @@ var EditSession = require("./edit_session").EditSession; var UndoManager = require("./undomanager").UndoManager; var Renderer = require("./virtual_renderer").VirtualRenderer; var MultiSelect = require("./multi_select").MultiSelect; -var Linking = require("ace/linking").Linking; // The following require()s are for inclusion in the built ace file require("./worker/worker_client"); @@ -88,7 +87,6 @@ exports.edit = function(el) { var editor = new Editor(new Renderer(el)); new MultiSelect(editor); - new Linking(editor); editor.setSession(doc); var env = { diff --git a/lib/ace/mouse/linking_handler.js b/lib/ace/ext/linking.js similarity index 84% rename from lib/ace/mouse/linking_handler.js rename to lib/ace/ext/linking.js index c74272e8..ccd3061e 100644 --- a/lib/ace/mouse/linking_handler.js +++ b/lib/ace/ext/linking.js @@ -3,7 +3,7 @@ * * Copyright (c) 2010, Ajax.org B.V. * All rights reserved. - * + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * Redistributions of source code must retain the above copyright @@ -14,7 +14,7 @@ * * Neither the name of Ajax.org B.V. nor the * names of its contributors may be used to endorse or promote products * derived from this software without specific prior written permission. - * + * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE @@ -30,7 +30,22 @@ define(function(require, exports, module) { -var event = require("../lib/event"); +var Editor = require("ace/editor").Editor; + +require("../config").defineOptions(Editor.prototype, "editor", { + enableLinking: { + set: function(val) { + if (val) { + this.on("mousedown", onMouseDown); + this.on("mousemove", onMouseMove); + } else { + this.off("mousedown", onMouseDown); + this.off("mousemove", onMouseMove); + } + }, + value: false + } +}) function onMouseMove(e) { var editor = e.editor; diff --git a/lib/ace/linking.js b/lib/ace/linking.js deleted file mode 100644 index cbd45d32..00000000 --- a/lib/ace/linking.js +++ /dev/null @@ -1,66 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Distributed under the BSD license: - * - * Copyright (c) 2010, Ajax.org B.V. - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of Ajax.org B.V. nor the - * names of its contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - * ***** END LICENSE BLOCK ***** */ - -define(function(require, exports, module) { - -var oop = require("./lib/oop"); -var EventEmitter = require("./lib/event_emitter").EventEmitter; -var onMouseDown = require("./mouse/linking_handler").onMouseDown; -var onMouseMove = require("./mouse/linking_handler").onMouseMove; -var Editor = require("./editor").Editor; - -// Linking(editor) -// adds linking support to the editor -function Linking(editor) { -} - -(function() { - oop.implement(this, EventEmitter); -}).call(Linking.prototype); - -exports.Linking = Linking; - -require("./config").defineOptions(Editor.prototype, "editor", { - enableLinking: { - set: function(val) { - Linking(this); - if (val) { - this.on("mousedown", onMouseDown); - this.on("mousemove", onMouseMove); - } else { - this.off("mousedown", onMouseDown); - this.off("mousemove", onMouseMove); - } - }, - value: false - } -}) - -});