📄 group.js
字号:
function uiHtml_Group(domObjects, optHandler) { this._super(); this.__items = domObjects; this.__handler = optHandler; if (this.__handler == null) { var firstItem = domObjects[0]; if (firstItem == null) { throw new uiUtil_IllegalStateException( "A group should contain at least one item."); } this.__handler = uiHtml_Group.__getWrapper(firstItem); }}uiHtml_Group = uiUtil_Object.declareClass(uiHtml_Group, uiUtil_Object);uiHtml_Group.prototype.prependEventHandler = function( eventName, eventHandler) { throw new uiUtil_IllegalStateException("Currently not supported", new Error());};uiHtml_Group.prototype.appendEventHandler = function(event, handler) { for (var i = 0; i < this.__items.length; ++i) { this.__handler.appendEventHandler(this.__items[i], event, handler); } return 0;};uiHtml_Group.prototype.removeEventHandler = function( eventName, startIndex) { throw new uiUtil_IllegalStateException("Currently not supported", new Error());};uiHtml_Group.prototype.clearEventHandlerExtension = function(eventName) { throw new uiUtil_IllegalStateException("Currently not supported", new Error());};uiHtml_Group.prototype.executeAggregateEventHandler = function( eventName, optDomEvent) { for (var i = 0; i < this.__items.length; ++i) { this.__handler.executeAggregateEventHandler( this.__items[i], eventName, optDomEvent); }};uiHtml_Group.prototype.__constructItemArgs = function(item, args) { var argArray = new Array(); var outputIndex = 0; argArray[outputIndex++] = item; var start = args.callee.length - 1; for (var i = start; i < args.length; ++i) { argArray[outputIndex++] = args[i]; } return argArray;};uiHtml_Group.prototype.traverse = function( handlerOwner, handlerFunction, optArgN) { var argArray = this.__constructItemArgs(null, arguments); var results = new Array(this.__items.length); for (var i = 0; i < this.__items.length; ++i) { argArray[0] = this.__items[i]; results[i] = handlerFunction.apply(handlerOwner, argArray); } return results;};uiHtml_Group.prototype.getItemHandler = function() { return this.__handler;};uiHtml_Group.prototype.size = function() { return this.__items.length;};uiHtml_Group.prototype.getItemAt = function(index) { return this.__items[index];};uiHtml_Group.prototype.setItemAt = function(index, item) { this.__items = uiUtil_ArrayUtils.toArrayIfNotAlready(this.__items); this.__items[index] = item;};uiHtml_Group.prototype.addItem = function(item) { this.__items = uiUtil_ArrayUtils.toArrayIfNotAlready(this.__items); this.__items.push(item);};uiHtml_Group.prototype._getItems = function() { return this.__items;};uiHtml_Group.prototype.hasValue = function(value) { for (var i = 0; i < this.__items.length; ++i) { if (this.__handler.getLogicalValue(this.__items[i]) == value) { return true; } } return false;};uiHtml_Group.prototype.getValues = function() { var values = new Array(); for (var i = 0; i < this.__items.length; ++i) { var value = this.__handler.getLogicalValue(this.__items[i]); if (value != null) { values.push(value); } } return values;};uiHtml_Group.prototype.handleItemAtIndex = function( index, handlerOwner, handlerFunction, optArgN) { if (index < 0 || index >= this.__items.length) { throw new uiUtil_IllegalArgumentException("Invalid index " + index); } var argArray = this.__constructItemArgs(this.__items[index], arguments); return handlerFunction.apply(handlerOwner, argArray);};uiHtml_Group.prototype.handleItemWithValue = function( value, handlerOwner, handlerFunction, optArgN) { for (var i = 0; i < this.__items.length; ++i) { if (this.__items[i].value == value) { var argArray = this.__constructItemArgs(this.__items[i], arguments); return handlerFunction.apply(handlerOwner, argArray); } } throw new uiUtil_IllegalArgumentException("Invalid value " + value);};uiHtml_Group.__getDomObjectsByEither = function(id, name) { var domObjects; var domObject = uiHtml_Document.getInstance().getDomObjectById(id, false); if (domObject == null) { domObjects = uiHtml_Document.getInstance().getDomObjectsByName(name, false); } else { domObjects = new Array(domObject); } if (domObjects[0] == null) { throw new uiUtil_IllegalArgumentException( "Invalid element ID: " + id + " and name: " + name); } return domObjects;};uiHtml_Group.createByEither = function(id, name) { var domObjects = uiHtml_Group.__getDomObjectsByEither(id, name); try { if (uiHtml_Element.getWidgetType(domObjects[0]) == "select") { return new uiHtml_Select(domObjects[0]); } else { return new uiHtml_Group(domObjects); } } catch (e) { if (e instanceof uiUtil_Exception) { throw new uiUtil_CreateException("[" + name + "] " + e.getMessage()); } }};uiHtml_Group.__getWrapper = function(domElement) { switch(uiHtml_Element.getWidgetType(domElement)) { case "checkbox" : return uiHtml_CheckBoxWrapper.getInstance(); case "radio" : return uiHtml_RadioWrapper.getInstance(); default : return uiHtml_ElementWrapper.getInstance(); }};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -