All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.github.gwtbootstrap.client.ui.ButtonToolbar Maven / Gradle / Ivy

The newest version!
/*
 *  Copyright 2012 GWT-Bootstrap
 *
 *  Licensed under the Apache License, Version 2.0 (the "License");
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 */
package com.github.gwtbootstrap.client.ui;

import com.github.gwtbootstrap.client.ui.base.DivWidget;
import com.github.gwtbootstrap.client.ui.constants.Constants;
import com.google.gwt.user.client.ui.Widget;

//@formatter:off
/**
 * Toolbar that places different Buttons in a horizontal line.
 * 
 * 

*

UiBinder Usage:

* *
 * {@code 
 * 
 *     
 *         1
 *         2
 *         3
 *     
 *     4
 *     5
 *     
 *         Some NavLink
 *         Another NavLink
 *     
 *     
 *         Some NavLink
 *         Another NavLink
 *     
 * 
 * }
 * 
* * @since 2.0.4.0 * * @author Carlos Alexandro Becker * * @author Dominik Mayer * * @see Bootstrap documentation * @see Button * @see ButtonGroup * @see DropdownButton * @see SplitDropdownButton */ //@formatter:on public class ButtonToolbar extends DivWidget { /** * Creates an empty toolbar. */ public ButtonToolbar() { setStyleName(Constants.BTN_TOOLBAR); } /** * Adds a new widget to the toolbar. * * @param widget * the widget to be added */ @Override public void add(Widget widget) { Widget addingWidget = widget; if (!canBeAdded(widget)) throw new IllegalArgumentException("A widget of " + widget.getClass() + " cannot be added to the toolbar."); if (widget instanceof Button) addingWidget = new ButtonGroup((Button) widget); super.add(addingWidget); } /** * This method decides whether a widget can be added to the toolbar or not. *

* Override it to allow other than the default widgets. * * @param widget * the widget that should be added to the toolbar. * @return true if the widget can be added to the toolbar. */ protected boolean canBeAdded(Widget widget) { return (widget instanceof ButtonGroup) || (widget instanceof Button) || (widget instanceof DropdownButton) || (widget instanceof SplitDropdownButton); } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy