Menu Custom Columns Sample (Smart GWT) : Menu « GWT « Java






Menu Custom Columns Sample (Smart GWT)

Menu Custom Columns Sample (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 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<String, String> valueIcons = new HashMap<String, String>();
        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)

Related examples in the same category

1.Menu with style
2.Drop down menu (Smart GWT)Drop down menu (Smart GWT)
3.Menu item separator (Smart GWT)Menu item separator (Smart GWT)
4.Menu item with icon (Smart GWT)Menu item with icon (Smart GWT)
5.Set shortcut key for Menu item (Smart GWT)Set shortcut key for Menu item (Smart GWT)
6.Add click handler for Menu item (Smart GWT)Add click handler for Menu item (Smart GWT)
7.Change Menu item title with customized action (Smart GWT)Change Menu item title with customized action (Smart GWT)
8.Set up sub menu item (Smart GWT)Set up sub menu item (Smart GWT)
9.Menu Tree Binding Sample (Smart GWT)Menu Tree Binding Sample (Smart GWT)
10.Custom Header Menu Sample (Smart GWT)Custom Header Menu Sample (Smart GWT)
11.Adding CheckMenuItem to ToolBar (Ext GWT)Adding CheckMenuItem to ToolBar (Ext GWT)
12.Creating submenu (Ext GWT)Creating submenu (Ext GWT)
13.Desktop in a browser (Ext GWT)