| Server IP : 209.209.40.120 / Your IP : 216.73.217.112 Web Server : Microsoft-IIS/10.0 System : Windows NT NEWWWW 10.0 build 17763 (Windows Server 2019) i586 User : NEWWWW$ ( 0) PHP Version : 8.3.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/SolidCP/Portal/tinymce/themes/inlite/src/main/js/tinymce/inlite/ui/ |
Upload File : |
/**
* Toolbar.js
*
* Released under LGPL License.
* Copyright (c) 1999-2016 Ephox Corp. All rights reserved
*
* License: http://www.tinymce.com/license
* Contributing: http://www.tinymce.com/contributing
*/
define('tinymce/inlite/ui/Toolbar', [
'global!tinymce.util.Tools',
'global!tinymce.ui.Factory'
], function (Tools, Factory) {
var setActiveItem = function (item, name) {
return function(state, args) {
var nodeName, i = args.parents.length;
while (i--) {
nodeName = args.parents[i].nodeName;
if (nodeName == 'OL' || nodeName == 'UL') {
break;
}
}
item.active(state && nodeName == name);
};
};
var getSelectorStateResult = function (itemName, item) {
var result = function (selector, handler) {
return {
selector: selector,
handler: handler
};
};
var activeHandler = function(state) {
item.active(state);
};
var disabledHandler = function (state) {
item.disabled(state);
};
if (itemName == 'bullist') {
return result('ul > li', setActiveItem(item, 'UL'));
}
if (itemName == 'numlist') {
return result('ol > li', setActiveItem(item, 'OL'));
}
if (item.settings.stateSelector) {
return result(item.settings.stateSelector, activeHandler);
}
if (item.settings.disabledStateSelector) {
return result(item.settings.disabledStateSelector, disabledHandler);
}
return null;
};
var bindSelectorChanged = function (editor, itemName, item) {
return function () {
var result = getSelectorStateResult(itemName, item);
if (result !== null) {
editor.selection.selectorChanged(result.selector, result.handler);
}
};
};
var create = function (editor, name, items) {
var toolbarItems = [], buttonGroup;
if (!items) {
return;
}
Tools.each(items.split(/[ ,]/), function(item) {
var itemName;
if (item == '|') {
buttonGroup = null;
} else {
if (Factory.has(item)) {
item = {type: item};
toolbarItems.push(item);
buttonGroup = null;
} else {
if (!buttonGroup) {
buttonGroup = {type: 'buttongroup', items: []};
toolbarItems.push(buttonGroup);
}
if (editor.buttons[item]) {
itemName = item;
item = editor.buttons[itemName];
if (typeof item == 'function') {
item = item();
}
item.type = item.type || 'button';
item = Factory.create(item);
item.on('postRender', bindSelectorChanged(editor, itemName, item));
buttonGroup.items.push(item);
}
}
}
});
return Factory.create({
type: 'toolbar',
layout: 'flow',
name: name,
items: toolbarItems
});
};
return {
create: create
};
});