lib/gollum/frontend/public/gollum/livepreview/js/ace/lib/ace/split.js in gollum-2.4.4 vs lib/gollum/frontend/public/gollum/livepreview/js/ace/lib/ace/split.js in gollum-2.4.5

- old
+ new

@@ -1,41 +1,33 @@ -/* vim:ts=4:sts=4:sw=4: - * ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ + * 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. * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Julian Viereck <julian.viereck@gmail.com> - * - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * * ***** END LICENSE BLOCK ***** */ define(function(require, exports, module) { "use strict"; @@ -45,26 +37,17 @@ var Editor = require("./editor").Editor; var Renderer = require("./virtual_renderer").VirtualRenderer; var EditSession = require("./edit_session").EditSession; -/** internal, hide - * class Split +/** + * @class Split * * * **/ -/** internal, hide - * new Split(container, theme, splits) - * - container (Document): The document to associate with the split - * - theme (String): The name of the initial theme - * - splits (Number): The number of initial splits - * - * - * - **/ var Split = function(container, theme, splits) { this.BELOW = 1; this.BESIDE = 0; @@ -102,17 +85,10 @@ this.$editors.push(editor); editor.setFontSize(this.$fontSize); return editor; }; - /** internal, hide - * Split.setSplits(splits) -> Void - * - splits (Number): The new number of splits - * - * - * - **/ this.setSplits = function(splits) { var editor; if (splits < 1) { throw "The number of splits have to be > 0!"; } @@ -139,104 +115,99 @@ } this.resize(); }; /** - * Split.getSplits() -> Number - * + * * Returns the number of splits. - * + * @returns {Number} **/ this.getSplits = function() { return this.$splits; }; /** - * Split.getEditor(idx) -> Editor - * -idx (Number): The index of the editor you want + * @param {Number} idx The index of the editor you want * * Returns the editor identified by the index `idx`. * **/ this.getEditor = function(idx) { return this.$editors[idx]; }; /** - * Split.getCurrentEditor() -> Editor - * + * * Returns the current editor. - * + * @returns {Editor} **/ this.getCurrentEditor = function() { return this.$cEditor; }; - /** related to: Editor.focus - * Split.focus() -> Void - * + /** * Focuses the current editor. - * + * @related Editor.focus **/ this.focus = function() { this.$cEditor.focus(); }; - /** related to: Editor.blur - * Split.blur() -> Void - * + /** * Blurs the current editor. - * + * @related Editor.blur **/ this.blur = function() { this.$cEditor.blur(); }; - /** related to: Editor.setTheme - * Split.setTheme(theme) -> Void - * - theme (String): The name of the theme to set + /** * + * @param {String} theme The name of the theme to set + * * Sets a theme for each of the available editors. + * @related Editor.setTheme **/ this.setTheme = function(theme) { this.$editors.forEach(function(editor) { editor.setTheme(theme); }); }; - /** internal, hide - * Split.setKeyboardHandler(keybinding) -> Void - * - keybinding (String): + /** * - * + * @param {String} keybinding + * + * Sets the keyboard handler for the editor. + * @related editor.setKeyboardHandler **/ this.setKeyboardHandler = function(keybinding) { this.$editors.forEach(function(editor) { editor.setKeyboardHandler(keybinding); }); }; - /** internal, hide - * Split.forEach(callback, scope) -> Void - * - callback (Function): A callback function to execute - * - scope (String): + /** * + * @param {Function} callback A callback function to execute + * @param {String} scope The default scope for the callback + * * Executes `callback` on all of the available editors. * **/ this.forEach = function(callback, scope) { this.$editors.forEach(callback, scope); }; - /** related to: Editor.setFontSize - * Split.setFontSize(size) -> Void - * - size (Number): The new font size + + this.$fontSize = ""; + /** + * @param {Number} size The new font size * * Sets the font size, in pixels, for all the available editors. * **/ - this.$fontSize = ""; this.setFontSize = function(size) { this.$fontSize = size; this.forEach(function(editor) { editor.setFontSize(size); }); @@ -267,17 +238,17 @@ s.$foldData = session.$cloneFoldData(); return s; }; - /** related to: Editor.setSession - * Split.setSession(session, idx) -> Void - * - session (EditSession): The new edit session - * - idx (Number): The editor's index you're interested in + /** * + * @param {EditSession} session The new edit session + * @param {Number} idx The editor's index you're interested in + * * Sets a new [[EditSession `EditSession`]] for the indicated editor. - * + * @related Editor.setSession **/ this.setSession = function(session, idx) { var editor; if (idx == null) { editor = this.$cEditor; @@ -301,23 +272,22 @@ // Return the session set on the editor. This might be a cloned one. return session; }; - /** internal, hide - * Split.getOrientation() -> Number + /** * * Returns the orientation. - * + * @returns Number **/ this.getOrientation = function() { return this.$orientation; }; - /** internal, hide - * Split.setOrientation(oriantation) -> Void - * - oriantation (Number): + /** + * + * @param {Number} orientation The new orientation value * * Sets the orientation. * **/ this.setOrientation = function(orientation) { @@ -326,15 +296,12 @@ } this.$orientation = orientation; this.resize(); }; - /** internal - * Split.resize() -> Void - * - * - * + /** + * Resizes the editor. **/ this.resize = function() { var width = this.$container.clientWidth; var height = this.$container.clientHeight; var editor; @@ -362,15 +329,10 @@ } }; }).call(Split.prototype); - /** internal - * Split.UndoManagerProxy() -> Void - * - * - * - **/ + function UndoManagerProxy(undoManager, session) { this.$u = undoManager; this.$doc = session; }