Type.registerNamespace("Sys.Extended.UI.HtmlEditor.ToolbarButtons");
Sys.Extended.UI.HtmlEditor.ToolbarButtons.SelectButton = function(element) {
Sys.Extended.UI.HtmlEditor.ToolbarButtons.SelectButton.initializeBase(this, [element]);
this._onclick_option$delegate = Function.createDelegate(this, this._onclick_option);
this._onchange$delegate = Function.createDelegate(this, this._onchange);
}
Sys.Extended.UI.HtmlEditor.ToolbarButtons.SelectButton.prototype = {
initialize: function() {
var nodeId = this.get_element().id;
Sys.Extended.UI.HtmlEditor.ToolbarButtons.SelectButton.callBaseMethod(this, "initialize");
this._select = $get(nodeId + "_select");
$addHandler(this._select, "change", this._onchange$delegate);
for(var i = 0; i < this._select.options.length; i++) {
var option = this._select.options[i];
$addHandler(option, "click", this._onclick_option$delegate);
}
},
dispose: function() {
for(var i = 0; i < this._select.options.length; i++) {
var option = this._select.options[i];
$removeHandler(option, "click", this._onclick_option$delegate);
}
$removeHandler(this._select, "change", this._onchange$delegate);
Sys.Extended.UI.HtmlEditor.ToolbarButtons.SelectButton.callBaseMethod(this, "dispose");
},
isImage: function() {
return false;
},
callMethod: function(select, e) {
return true;
},
_onclick_option: function(e) {
if(!this.isEnable())
return false;
var option = e.target;
option.parentNode.value = option.value;
Sys.Extended.UI.HtmlEditor._stopEvent(e);
if(!Sys.Extended.UI.HtmlEditor.isSafari)
return false;
this.callMethod(option.parentNode, e);
return true;
},
_onchange: function(e) {
if(!this.isEnable())
return false;
var select = e.target;
Sys.Extended.UI.HtmlEditor._stopEvent(e);
this.callMethod(select, e);
return true;
}
}
Sys.Extended.UI.HtmlEditor.ToolbarButtons.SelectButton.registerClass("Sys.Extended.UI.HtmlEditor.ToolbarButtons.SelectButton", Sys.Extended.UI.HtmlEditor.ToolbarButtons.CommonButton);