[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/lib/editor/atto/plugins/superscript/yui/build/moodle-atto_superscript-button/ -> moodle-atto_superscript-button-debug.js (source)

   1  YUI.add('moodle-atto_superscript-button', function (Y, NAME) {
   2  
   3  // This file is part of Moodle - http://moodle.org/
   4  //
   5  // Moodle is free software: you can redistribute it and/or modify
   6  // it under the terms of the GNU General Public License as published by
   7  // the Free Software Foundation, either version 3 of the License, or
   8  // (at your option) any later version.
   9  //
  10  // Moodle is distributed in the hope that it will be useful,
  11  // but WITHOUT ANY WARRANTY; without even the implied warranty of
  12  // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  13  // GNU General Public License for more details.
  14  //
  15  // You should have received a copy of the GNU General Public License
  16  // along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
  17  
  18  /*
  19   * @package    atto_superscript
  20   * @copyright  2014 Rosiana Wijaya <rwijaya@moodle.com>
  21   * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
  22   */
  23  
  24  /**
  25   * @module     moodle-atto_superscript-button
  26   */
  27  
  28  /**
  29   * Atto text editor superscript plugin.
  30   *
  31   * @namespace M.atto_superscript
  32   * @class button
  33   * @extends M.editor_atto.EditorPlugin
  34   */
  35  
  36  Y.namespace('M.atto_superscript').Button = Y.Base.create('button', Y.M.editor_atto.EditorPlugin, [], {
  37      /**
  38       * A rangy object to alter CSS classes.
  39       *
  40       * @property _subscriptApplier
  41       * @type Object
  42       * @private
  43       */
  44      _subscriptApplier: null,
  45  
  46      /**
  47       * A rangy object to alter CSS classes.
  48       *
  49       * @property _superscriptApplier
  50       * @type Object
  51       * @private
  52       */
  53      _superscriptApplier: null,
  54  
  55      initializer: function() {
  56          this.addButton({
  57              buttonName: 'superscript',
  58              callback: this.toggleSuperscript,
  59              icon: 'e/superscript',
  60              inlineFormat: true,
  61  
  62              // Watch the following tags and add/remove highlighting as appropriate:
  63              tags: 'sup'
  64          });
  65          this._subscriptApplier = window.rangy.createClassApplier("editor-subscript");
  66          this._superscriptApplier = window.rangy.createClassApplier("editor-superscript");
  67      },
  68  
  69      /**
  70       * Toggle superscripts in selection
  71       *
  72       * @method toggleSuperscript
  73       */
  74      toggleSuperscript: function() {
  75          // Replace all the sub and sup tags.
  76          this.get('host').changeToCSS('sub', 'editor-subscript');
  77          this.get('host').changeToCSS('sup', 'editor-superscript');
  78  
  79          // Remove all subscripts inselection and toggle superscript.
  80          this._superscriptApplier.toggleSelection();
  81          this._subscriptApplier.undoToSelection();
  82  
  83          // Replace CSS classes with tags.
  84          this.get('host').changeToTags('editor-superscript', 'sup');
  85          this.get('host').changeToTags('editor-subscript', 'sub');
  86      }
  87  });
  88  
  89  
  90  }, '@VERSION@', {"requires": ["moodle-editor_atto-plugin"]});


Generated: Thu Aug 11 10:00:09 2016 Cross-referenced by PHPXref 0.7.1