GWT Java

/*
 * 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 java.util.HashMap;
import java.util.Map;
import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.user.client.ui.RootPanel;
import com.smartgwt.client.util.SC;
import com.smartgwt.client.widgets.Canvas;
import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.menu.Menu;
import com.smartgwt.client.widgets.menu.MenuButton;
import com.smartgwt.client.widgets.menu.MenuItem;
import com.smartgwt.client.widgets.menu.events.ItemClickEvent;
import com.smartgwt.client.widgets.menu.events.ItemClickHandler;
public class Showcase implements EntryPoint {
  public void onModuleLoad() {
    RootPanel.get().add(getViewPanel());
  }
  public Canvas getViewPanel() {
    final Menu menu = new Menu();
    menu.setShowShadow(true);
    menu.setShadowDepth(10);
    ListGridField closeField = new ListGridField();
    closeField.setName("canDismiss");
    closeField.setShowValueIconOnly(true);
        Map valueIcons = new HashMap();
        valueIcons.put("true", "icons/16/close.png");
    closeField.setValueIcons(valueIcons);
    closeField.setValueIconSize(16);
    closeField.setWidth(16);
    menu.setFields(new ListGridField("title"), closeField);
    MenuItem item1 = new MenuItem("Item 1");
    item1.setAttribute("canDismiss", false);
    MenuItem item2 = new MenuItem("Item 2");
    item2.setAttribute("canDismiss", true);
    MenuItem item3 = new MenuItem("Item 3");
    item3.setAttribute("canDismiss", true);
    menu.setData(item1, item2, item3);
    menu.addItemClickHandler(new ItemClickHandler() {
      public void onItemClick(ItemClickEvent event) {
        MenuItem clicked = event.getItem();
        if ((event.getColNum() == 1) && clicked.getAttributeAsBoolean("canDismiss")) {
                    menu.removeItem(clicked);
        } else {
          SC.say("You Selected '" + clicked.getTitle() + "'.");
        }
      }
    });
    return new MenuButton("Show Menu", menu);
  }
}
   
    
    
  
SmartGWT.zip( 9,880 k)