Mega Code Archive

 
Categories / Java / GWT
 

Buttons can automatically size to accomodate the title and icon, and resize automatically when the title is changed (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.widgets.Canvas; import com.smartgwt.client.widgets.IButton; import com.smartgwt.client.widgets.events.ClickEvent; import com.smartgwt.client.widgets.events.ClickHandler; import com.smartgwt.client.widgets.layout.HStack; public class Showcase implements EntryPoint{     public void onModuleLoad() {        RootPanel.get().add(getViewPanel());     }     public Canvas getViewPanel() {       Canvas canvas = new Canvas();       final IButton findButton = new IButton("Find Related");       findButton.setAutoFit(true);       findButton.setIcon("icons/16/find.png");       final IButton searchButton = new IButton("Search within results");       searchButton.setAutoFit(true);       searchButton.setIcon("icons/16/icon_add_files.png");              HStack stack = new HStack();       stack.setMembersMargin(20);       stack.setHeight(24);       stack.setBorder("1px solid blue");       stack.addMember(findButton);       stack.addMember(searchButton);       canvas.addChild(stack);       final IButton button = new IButton("Change Title");       button.setLeft(60);       button.setTop(45);       button.addClickHandler(new ClickHandler() {           public void onClick(ClickEvent event) {               String saveTitle = findButton.getTitle();               findButton.setTitle(searchButton.getTitle());               searchButton.setTitle(saveTitle);           }       });       canvas.addChild(button);       return canvas;   } }             SmartGWT.zip( 9,880 k)