Turned linking.js into extension. Merged linking_handler into linking.js.
This commit is contained in:
parent
ca170b5d3d
commit
0582153019
3 changed files with 18 additions and 71 deletions
|
|
@ -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 = {
|
||||
|
|
|
|||
|
|
@ -30,27 +30,11 @@
|
|||
|
||||
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;
|
||||
var Editor = require("ace/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", {
|
||||
require("../config").defineOptions(Editor.prototype, "editor", {
|
||||
enableLinking: {
|
||||
set: function(val) {
|
||||
Linking(this);
|
||||
if (val) {
|
||||
this.on("mousedown", onMouseDown);
|
||||
this.on("mousemove", onMouseMove);
|
||||
|
|
@ -63,4 +47,35 @@ require("./config").defineOptions(Editor.prototype, "editor", {
|
|||
}
|
||||
})
|
||||
|
||||
function onMouseMove(e) {
|
||||
var editor = e.editor;
|
||||
var ctrl = e.getAccelKey();
|
||||
|
||||
if (ctrl) {
|
||||
var editor = e.editor;
|
||||
var docPos = e.getDocumentPosition();
|
||||
var session = editor.session;
|
||||
var token = session.getTokenAt(docPos.row, docPos.column);
|
||||
|
||||
editor._emit("link_hover", {position: docPos, token: token});
|
||||
}
|
||||
}
|
||||
|
||||
function onMouseDown(e) {
|
||||
var ctrl = e.getAccelKey();
|
||||
var button = e.getButton();
|
||||
|
||||
if (button == 0 && ctrl) {
|
||||
var editor = e.editor;
|
||||
var docPos = e.getDocumentPosition();
|
||||
var session = editor.session;
|
||||
var token = session.getTokenAt(docPos.row, docPos.column);
|
||||
|
||||
editor._emit("link", {position: docPos, token: token});
|
||||
}
|
||||
}
|
||||
|
||||
exports.onMouseMove = onMouseMove;
|
||||
exports.onMouseDown = onMouseDown;
|
||||
|
||||
});
|
||||
Loading…
Reference in a new issue