/*! * UI development toolkit for HTML5 (OpenUI5) * (c) Copyright 2009-2018 SAP SE or an SAP affiliate company. * Licensed under the Apache License, Version 2.0 - see LICENSE.txt. */ // Provides control sap.m.QuickViewGroup sap.ui.define([ './library', 'sap/ui/core/Element'], function(library, Element) { "use strict"; /** * Constructor for a new QuickViewGroup. * * @param {string} [sId] ID for the new control, generated automatically if no ID is given * @param {object} [mSettings] Initial settings for the new control * * @class QuickViewGroup consists of a title (optional) and an entity of group elements. * * @extends sap.ui.core.Element * * @author SAP SE * @version 1.60.23 * * @constructor * @public * @since 1.28.11 * @alias sap.m.QuickViewGroup * @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel */ var Group = Element.extend("sap.m.QuickViewGroup", /** @lends sap.m.QuickViewGroup.prototype */ { metadata: { library: "sap.m", properties: { /** * Determines whether the group is visible on the screen. */ visible : { type: "boolean", group : "Appearance", defaultValue: true }, /** * The title of the group */ heading: { type: "string", group: "Misc", defaultValue: "" } }, defaultAggregation: "elements", aggregations: { /** * A combination of one label and another control (Link or Text) associated to this label. */ elements: { type: "sap.m.QuickViewGroupElement", multiple: true, singularName: "element", bindable: "bindable" } } } }); ["setModel", "bindAggregation", "setAggregation", "insertAggregation", "addAggregation", "removeAggregation", "removeAllAggregation", "destroyAggregation"].forEach(function (sFuncName) { Group.prototype["_" + sFuncName + "Old"] = Group.prototype[sFuncName]; Group.prototype[sFuncName] = function () { var result = Group.prototype["_" + sFuncName + "Old"].apply(this, arguments); var oPage = this.getParent(); if (oPage) { oPage._updatePage(); } if (["removeAggregation", "removeAllAggregation"].indexOf(sFuncName) !== -1) { return result; } return this; }; }); Group.prototype.setProperty = function (sName, oValue) { Element.prototype.setProperty.call(this, sName, oValue, true); var oPage = this.getParent(); if (oPage) { oPage._updatePage(); } }; return Group; });