UNPKG

@qooxdoo/framework

Version:

The JS Framework for Coders

108 lines (84 loc) 2.75 kB
/* ************************************************************************ qooxdoo - the new era of web development http://qooxdoo.org Copyright: 2004-2008 1&1 Internet AG, Germany, http://www.1und1.de License: MIT: https://opensource.org/licenses/MIT See the LICENSE file in the project's top-level directory for details. Authors: * Jonathan Weiß (jonathan_rass) ************************************************************************ */ qx.Class.define("qxl.demobrowser.demo.widget.CheckBox", { extend : qx.application.Standalone, members : { main: function() { this.base(arguments); var label = new qx.ui.basic.Label("What do you need for the beach?"); // create the main layout var mainLayout = new qx.ui.layout.VBox(); mainLayout.setSpacing(10); // add the main layout to a container widget and to the document root var container = new qx.ui.container.Composite(mainLayout); container.setPadding(20); this.getRoot().add(container, {left:0,top:0}); container.add(label); // Create some radio buttons var cbOil = new qx.ui.form.CheckBox("Sun Oil"); var cbTowel = new qx.ui.form.CheckBox("Towel"); var cbBeer = new qx.ui.form.CheckBox("Beer"); var cbBT = new qx.ui.form.CheckBox("Bathing togs"); this._checkBoxes = [ cbOil, cbTowel, cbBeer, cbBT ]; // Add them to the container container.add(cbOil); container.add(cbTowel); container.add(cbBeer); container.add(cbBT); var btOk = new qx.ui.form.Button("OK"); btOk.addListener("execute", this._onExecute, this); btOk.setAllowGrowX(false); container.add(btOk); }, /** * Reads the labels of all checked checkboxes and raises an * alert box with these values in it. * @param e {qx.event.type.Data} The incoming data event * @lint ignoreDeprecated(alert) */ _onExecute : function(e) { var cbs = this._checkBoxes; var count = 0; var str = ""; for (var i=0; i<cbs.length; i++) { if (cbs[i].getValue()) { count++; str += (cbs[i].getLabel() + ", "); } } if (count > 0) { str = str.substring(0, str.length-2); alert("You need these things for the beach: " + str); } else { alert("Are you sure you need nothing for the beach?"); } } }, /* ***************************************************************************** DESTRUCT ***************************************************************************** */ destruct : function() { this._disposeArray("_checkBoxes"); } });