/*
* GWT-Ext Widget Library
* Copyright 2007 - 2008, GWT-Ext LLC., and individual contributors as indicated
* by the @authors tag. See the copyright.txt in the distribution for a
* full listing of individual contributors.
*
* This is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as
* published by the Free Software Foundation; either version 3 of
* the License, or (at your option) any later version.
*
* 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.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this software; if not, write to the Free
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
*/
package com.gwtext.client.widgets;
import com.google.gwt.core.client.JavaScriptObject;
import com.gwtext.client.widgets.event.ButtonListener;
import com.gwtext.client.widgets.menu.Menu;
//toolbar button doesnt get rendered and even created when a new object is instantiated. it is rendered at the point it
//is added to the toolbar. so we cant register the event handlers with the underlying widget until it is rendered
//ie. after it has been added to the toolbar
/**
* A button that renders into a toolbar.
*
* @author Sanjiv Jivan
*/
public class ToolbarButton extends Button {
private static JavaScriptObject configPrototype;
static {
init();
}
private static native void init()/*-{
var c = new $wnd.Ext.Toolbar.Button();
@com.gwtext.client.widgets.ToolbarButton::configPrototype = c.initialConfig;
}-*/;
protected JavaScriptObject getConfigPrototype() {
return configPrototype;
}
public String getXType() {
return "tbbutton";
}
/**
* Create a new ToolbarButton.
*/
public ToolbarButton() {
}
/**
* Create a new ToolbarButton.
*
* @param text the button text
*/
public ToolbarButton(String text) {
super(text);
}
/**
* Create a new ToolbarButton.
*
* @param text the button text
* @param menu the button menu
*/
public ToolbarButton(String text, Menu menu) {
super(text, menu);
}
/**
* Create a new ToolbarButton.
*
* @param text the button text
* @param listener the button listner
*/
public ToolbarButton(String text, ButtonListener listener) {
super(text, listener);
}
/**
* Create a new ToolbarButton.
*
* @param text the button text
* @param listener the button listner
* @param icon the button icon image path
*/
public ToolbarButton(String text, ButtonListener listener, String icon) {
super(text, listener, icon);
}
public ToolbarButton(JavaScriptObject jsObj) {
super(jsObj);
}
protected native JavaScriptObject create(JavaScriptObject config) /*-{
return new $wnd.Ext.Toolbar.Button(config);
}-*/;
}
|