| /** |
| * @class button - justify text |
| * |
| * @param elRTE rte объект-редактор |
| * @param String name название кнопки |
| * |
| * |
| * @author: Dmitry Levashov (dio) dio@std42.ru |
| * @copyright: Studio 42, http://www.std42.ru |
| **/ |
| (function($) { |
| elRTE.prototype.ui.prototype.buttons.justifyleft = function(rte, name) { |
| this.constructor.prototype.constructor.call(this, rte, name); |
| this.align = this.name == 'justifyfull' ? 'justify' : this.name.replace('justify', ''); |
| |
| this.command = function() { |
| var s = this.rte.selection.selected({collapsed:true, blocks : true, tag : 'div'}), |
| l = s.length; |
| l && this.rte.history.add(); |
| while (l--) { |
| this.rte.dom.filter(s[l], 'textNodes') && $(s[l]).css('text-align', this.align); |
| } |
| this.rte.ui.update(); |
| } |
| |
| this.update = function() { |
| var s = this.rte.selection.getNode(), |
| n = s.nodeName == 'BODY' ? s : this.rte.dom.selfOrParent(s, 'textNodes')||(s.parentNode && s.parentNode.nodeName == 'BODY' ? s.parentNode : null); |
| if (n) { |
| this.domElem.removeClass('disabled').toggleClass('active', $(n).css('text-align') == this.align); |
| } else { |
| this.domElem.addClass('disabled'); |
| } |
| } |
| |
| } |
| |
| elRTE.prototype.ui.prototype.buttons.justifycenter = elRTE.prototype.ui.prototype.buttons.justifyleft; |
| elRTE.prototype.ui.prototype.buttons.justifyright = elRTE.prototype.ui.prototype.buttons.justifyleft; |
| elRTE.prototype.ui.prototype.buttons.justifyfull = elRTE.prototype.ui.prototype.buttons.justifyleft; |
| |
| })(jQuery); |