Source Code : ComboBox databinding with DataSource (Smart GWT)

Java Is Open Source Programming Language You Can Download From Java and Java Libraries From http://www.oracle.com. Click Here to download
We provide this code related to title for you to solve your developing problem easily. Libraries which is import in this program you can download from http://www.oracle.com. Click Here or search from google with Libraries Name you get jar file related it

ComboBox databinding with DataSource (Smart GWT)

ComboBox databinding with DataSource (Smart GWT)
   
/*
 * SmartGWT (GWT for SmartClient)
 * Copyright 2008 and beyond, Isomorphic Software, Inc.
 *
 * SmartGWT is free software; you can redistribute it and/or modify it
 * under the terms of the GNU Lesser General Public License version 3
 * as published by the Free Software Foundation.  SmartGWT is also
 * available under typical commercial license terms - see
 * http://smartclient.com/license
 * This software is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 * Lesser General Public License for more details.
 */

package com.smartgwt.sample.showcase.client;

import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.user.client.ui.RootPanel;
import com.smartgwt.client.data.DataSource;
import com.smartgwt.client.data.fields.DataSourceBooleanField;
import com.smartgwt.client.data.fields.DataSourceDateField;
import com.smartgwt.client.data.fields.DataSourceEnumField;
import com.smartgwt.client.data.fields.DataSourceFloatField;
import com.smartgwt.client.data.fields.DataSourceIntegerField;
import com.smartgwt.client.data.fields.DataSourceTextField;
import com.smartgwt.client.types.Alignment;
import com.smartgwt.client.widgets.Canvas;
import com.smartgwt.client.widgets.Label;
import com.smartgwt.client.widgets.form.DynamicForm;
import com.smartgwt.client.widgets.form.fields.HeaderItem;
import com.smartgwt.client.widgets.form.fields.SelectItem;
import com.smartgwt.client.widgets.form.fields.SpinnerItem;
import com.smartgwt.client.widgets.form.fields.events.ChangeEvent;
import com.smartgwt.client.widgets.form.fields.events.ChangeHandler;
import com.smartgwt.client.widgets.form.validator.FloatPrecisionValidator;
import com.smartgwt.client.widgets.form.validator.FloatRangeValidator;
import com.smartgwt.client.widgets.grid.ListGridField;

public class Showcase implements EntryPoint {

  public void onModuleLoad() {
    RootPanel.get().add(getViewPanel());
  }

  public Canvas getViewPanel() {
    Canvas canvas = new Canvas();

    DataSource supplyItemDS = ItemSupplyXmlDS.getInstance();

    final Label label = new Label();
    label.setAlign(Alignment.CENTER);
    label.setBorder("1px solid blue");
    label.setTop(75);
    label.setHeight(50);
    label.setWidth(250);
    label.setMargin(10);
    label.setContents("Select an item to order");
    canvas.addChild(label);

    DynamicForm form = new DynamicForm();

    HeaderItem headerItem = new HeaderItem();
    headerItem.setDefaultValue("Order Supply Item");

    SelectItem selectItem = new SelectItem();
    selectItem.setDefaultToFirstOption(true); 
    selectItem.setTitle("Item");
    selectItem.setDisplayField("itemName");
    selectItem.setPickListWidth(250);
    selectItem.setOptionDataSource(supplyItemDS);
    selectItem.addChangeHandler(new ChangeHandler() {
        public void onChange(ChangeEvent event) {
            label.setContents("Selected itemID : " + event.getValue());
        }
    });

    SpinnerItem spinnerItem = new SpinnerItem();
    spinnerItem.setName("Quantity");
    spinnerItem.setDefaultValue(1);
    spinnerItem.setMin(1);

    form.setItems(headerItem, selectItem, spinnerItem);
    canvas.addChild(form);

    final Label label2 = new Label();
    label2.setAlign(Alignment.CENTER);
    label2.setBorder("1px solid blue");
    label2.setTop(75);
    label2.setLeft(300);
    label2.setHeight(50);
    label2.setWidth(250);
    label2.setMargin(10);
    label2.setContents("Select an item to order");
    canvas.addChild(label2);

    DynamicForm form2 = new DynamicForm();
    form2.setLeft(300);

    HeaderItem headerItem2 = new HeaderItem();
    headerItem2.setDefaultValue("Order Supply Item");

    ListGridField itemField = new ListGridField("itemName");
    ListGridField unitsField = new ListGridField("units");
    ListGridField unitCostField = new ListGridField("unitCost");

    SelectItem selectItem2 = new SelectItem();
    selectItem2.setTitle("Item");
    selectItem2.setOptionDataSource(supplyItemDS);
    selectItem2.setDisplayField("itemName");
    selectItem2.setValueField("SKU");
    selectItem2.addChangeHandler(new ChangeHandler() {
        public void onChange(ChangeEvent event) {
            label2.setContents("Selected Item SKU: " + event.getValue());
        }
    });
    selectItem2.setPickListWidth(450);
    selectItem2.setPickListFields(itemField, unitsField, unitCostField);

    SpinnerItem spinnerItem2 = new SpinnerItem();
    spinnerItem2.setName("Quantity");
    spinnerItem2.setDefaultValue(1);
    spinnerItem2.setMin(1);

    form2.setItems(headerItem2, selectItem2, spinnerItem2);
    canvas.addChild(form2);

    return canvas;
  }

}
class ItemSupplyXmlDS extends DataSource {

  private static ItemSupplyXmlDS instance = null;

  public static ItemSupplyXmlDS getInstance() {
      if (instance == null) {
          instance = new ItemSupplyXmlDS("supplyItemDS");
      }
      return instance;
  }

  public ItemSupplyXmlDS(String id) {

      setID(id);
      setRecordXPath("/List/supplyItem");
      DataSourceIntegerField pkField = new DataSourceIntegerField("itemID");
      pkField.setHidden(true);
      pkField.setPrimaryKey(true);

      DataSourceTextField itemNameField = new DataSourceTextField("itemName", "Item Name", 128, true);
      DataSourceTextField skuField = new DataSourceTextField("SKU", "SKU", 10, true);

      DataSourceTextField descriptionField = new DataSourceTextField("description", "Description", 2000);
      DataSourceTextField categoryField = new DataSourceTextField("category", "Category", 128, true);
      categoryField.setForeignKey("supplyCategoryDS.categoryName");

      DataSourceEnumField unitsField = new DataSourceEnumField("units", "Units", 5);
      unitsField.setValueMap("Roll", "Ea", "Pkt", "Set", "Tube", "Pad", "Ream", "Tin", "Bag", "Ctn", "Box");

      DataSourceFloatField unitCostField = new DataSourceFloatField("unitCost", "Unit Cost", 5);
      FloatRangeValidator rangeValidator = new FloatRangeValidator();
      rangeValidator.setMin(0);
      rangeValidator.setErrorMessage("Please enter a valid (positive) cost");

      FloatPrecisionValidator precisionValidator = new FloatPrecisionValidator();
      precisionValidator.setPrecision(2);
      precisionValidator.setErrorMessage("The maximum allowed precision is 2");

      unitCostField.setValidators(rangeValidator, precisionValidator);

      DataSourceBooleanField inStockField = new DataSourceBooleanField("inStock", "In Stock");

      DataSourceDateField nextShipmentField = new DataSourceDateField("nextShipment", "Next Shipment");

      setFields(pkField, itemNameField, skuField, descriptionField, categoryField, unitsField,
                unitCostField, inStockField, nextShipmentField);

      setDataURL("ds/test_data/supplyItem.data.xml");
      setClientOnly(true);        
  }
}

   
    
    
  

Thank with us