X-Git-Url: https://git.mdrn.pl/fnpeditor.git/blobdiff_plain/8acf84ebc364a5a7ac6d253fc3875787f8e620b9..bb856bb163a586641fe9f6edf7723d3d905f2dfb:/src/editor/modules/sourceEditor/sourceEditor.js diff --git a/src/editor/modules/sourceEditor/sourceEditor.js b/src/editor/modules/sourceEditor/sourceEditor.js index 1930939..dadc08e 100644 --- a/src/editor/modules/sourceEditor/sourceEditor.js +++ b/src/editor/modules/sourceEditor/sourceEditor.js @@ -1,4 +1,4 @@ -define(['libs/jquery', 'libs/text!./template.html'], function($, template) { +define(['libs/jquery', 'libs/ace/ace', 'libs/text!./template.html'], function($, ace, template) { 'use strict'; @@ -15,22 +15,23 @@ return function(sandbox) { editor.gotoLine(0); documentEditedHere = false; - sandbox.publish('documentSet'); documentIsDirty = false; } }; view.onHide = function() { if(documentEditedHere) { - documentEditedHere = false; - wlxmlDocument.loadXML(editor.getValue()); + commitDocument(); } }; - - /* globals ace */ + + var commitDocument = function() { + documentEditedHere = false; + wlxmlDocument.loadXML(editor.getValue()); + }; + var editor = ace.edit(view.find('#rng-sourceEditor-editor')[0]), session = editor.getSession(); - editor.setTheme('ace/theme/chrome'); session.setMode('ace/mode/xml'); session.setUseWrapMode(true); @@ -53,6 +54,10 @@ return function(sandbox) { documentIsDirty = true; }); }, + changesCommited: function() { + return !documentEditedHere; + }, + commitChanges: commitDocument, getDocument: function() { return editor.getValue(); }