/** * EGroupware eTemplate2 - JS Groupbox object * * @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License * @package etemplate * @subpackage api * @link http://www.egroupware.org * @author Nathan Gray * @copyright Nathan Gray 2012 * @version $Id$ */ /*egw:uses et2_core_baseWidget; */ import {et2_register_widget, WidgetConfig} from "./et2_core_widget"; import {et2_baseWidget} from "./et2_core_baseWidget"; import {ClassWithAttributes} from "./et2_core_inheritance"; /** * Class which implements the groupbox tag * * @augments et2_baseWidget */ class et2_groupbox extends et2_baseWidget { /** * Constructor * * @memberOf et2_groupbox */ constructor(_parent, _attrs? : WidgetConfig, _child? : object) { // Call the inherited constructor super(_parent, _attrs, ClassWithAttributes.extendAttributes(et2_groupbox._attributes, _child || {})); this.setDOMNode(document.createElement("fieldset")); } } et2_register_widget(et2_groupbox, ["groupbox"]); /** * @augments et2_baseWidget */ class et2_groupbox_legend extends et2_baseWidget { static readonly _attributes : any = { "label": { "name": "Label", "type": "string", "default": "", "description": "Label for group box", "translate" : true } }; /** * Constructor * * @memberOf et2_groupbox_legend */ constructor(_parent, _attrs? : WidgetConfig, _child? : object) { // Call the inherited constructor super(_parent, _attrs, ClassWithAttributes.extendAttributes(et2_groupbox_legend._attributes, _child || {})); let legend = jQuery(document.createElement("legend")).text(this.options.label); this.setDOMNode(legend[0]); } } et2_register_widget(et2_groupbox_legend, ["caption"]);