只读模式
group, 分享
评论更多问题
博客标签总是存在一个
This commit is contained in:
lealife
2015-06-15 18:01:48 +08:00
parent 7e458bb433
commit 6987a38820
1453 changed files with 114561 additions and 91536 deletions

66
public/tinymce/classes/ui/ListBox.js Normal file → Executable file
View File

@ -29,17 +29,34 @@ define("tinymce/ui/ListBox", [
* @setting {Array} values Array with values to add to list box.
*/
init: function(settings) {
var self = this, values, i, selected, selectedText, lastItemCtrl;
var self = this, values, selected, selectedText, lastItemCtrl;
function setSelected(menuValues) {
// Try to find a selected value
for (var i = 0; i < menuValues.length; i++) {
selected = menuValues[i].selected || settings.value === menuValues[i].value;
if (selected) {
selectedText = selectedText || menuValues[i].text;
self._value = menuValues[i].value;
break;
}
// If the value has a submenu, try to find the selected values in that menu
if (menuValues[i].menu) {
setSelected(menuValues[i].menu);
}
}
}
self._values = values = settings.values;
if (values) {
for (i = 0; i < values.length; i++) {
selected = values[i].selected || settings.value === values[i].value;
setSelected(values);
if (selected) {
selectedText = selectedText || values[i].text;
self._value = values[i].value;
}
// Default with first item
if (!selected && values.length > 0) {
selectedText = values[0].text;
self._value = values[0].value;
}
settings.menu = values;
@ -67,7 +84,6 @@ define("tinymce/ui/ListBox", [
});
},
/**
* disable/enable 某一list的item
* leanote ace life ace
@ -92,6 +108,7 @@ define("tinymce/ui/ListBox", [
}
}
},
/**
* Getter/setter function for the control value.
*
@ -100,10 +117,10 @@ define("tinymce/ui/ListBox", [
* @return {Boolean/tinymce.ui.ListBox} Value or self if it's a set operation.
*/
value: function(value) {
var self = this, active, selectedText, menu, i;
var self = this, active, selectedText, menu;
function activateByValue(menu, value) {
menu.items().each(function(ctrl) {// menuitem
menu.items().each(function(ctrl) {
active = ctrl.value() === value;
if (active) {
@ -118,24 +135,33 @@ define("tinymce/ui/ListBox", [
});
}
if (typeof(value) != "undefined") {
function setActiveValues(menuValues) {
for (var i = 0; i < menuValues.length; i++) {
active = menuValues[i].value == value;
if (active) {
selectedText = selectedText || menuValues[i].text;
}
menuValues[i].active = active;
if (menuValues[i].menu) {
setActiveValues(menuValues[i].menu);
}
}
}
if (typeof value != "undefined") {
if (self.menu) {
activateByValue(self.menu, value);
} else {
menu = self.settings.menu;
for (i = 0; i < menu.length; i++) {
active = menu[i].value == value;
if (active) {
selectedText = selectedText || menu[i].text;
}
menu[i].active = active;
}
setActiveValues(menu);
}
self.text(selectedText || this.settings.text);
}
return self._super(value);
}
});