com.cooper.client.ItemListGrid.java Source code

Java tutorial

Introduction

Here is the source code for com.cooper.client.ItemListGrid.java

Source

package com.cooper.client;

/*  
 * 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.  
 */

import com.google.gwt.i18n.client.NumberFormat;
import com.smartgwt.client.data.DataSource;
import com.smartgwt.client.types.Alignment;
import com.smartgwt.client.types.SelectionStyle;
import com.smartgwt.client.widgets.form.fields.SpinnerItem;
import com.smartgwt.client.widgets.grid.*;

public class ItemListGrid extends ListGrid {

    public ItemListGrid(DataSource supplyItemDS) {

        setDataSource(supplyItemDS);
        setUseAllDataSourceFields(true);

        ListGridField itemName = new ListGridField("itemName", "Name");
        itemName.setShowHover(true);
        ListGridField unitCost = new ListGridField("unitCost");

        unitCost.setCellFormatter(new CellFormatter() {
            public String format(Object value, ListGridRecord record, int rowNum, int colNum) {
                if (value == null)
                    return null;
                try {
                    NumberFormat nf = NumberFormat.getFormat("##0.00");
                    return "$" + nf.format(((Number) value).floatValue());
                } catch (Exception e) {
                    return value.toString();
                }
            }
        });

        SpinnerItem spinnerItem = new SpinnerItem();
        spinnerItem.setStep(0.01);
        unitCost.setEditorType(spinnerItem);

        ListGridField sku = new ListGridField("SKU");
        sku.setCanEdit(false);

        ListGridField description = new ListGridField("description");
        description.setShowHover(true);

        ListGridField category = new ListGridField("category");
        category.setCanEdit(false);

        ListGridField inStock = new ListGridField("inStock");
        inStock.setWidth(55);
        inStock.setAlign(Alignment.CENTER);

        ListGridField nextShipment = new ListGridField("nextShipent");
        nextShipment.setShowIfCondition(new ListGridFieldIfFunction() {
            public boolean execute(ListGrid grid, ListGridField field, int fieldNum) {
                return false;
            }
        });

        setFields(itemName, unitCost, sku, description, category, inStock);
        setCanEdit(true);
        setCanDragRecordsOut(true);
        setHoverWidth(200);
        setHoverHeight(20);
        setSelectionType(SelectionStyle.SINGLE);
    }
}