com.github.gwtbootstrap.client.ui.base.HtmlWidget.java Source code

Java tutorial

Introduction

Here is the source code for com.github.gwtbootstrap.client.ui.base.HtmlWidget.java

Source

/*
 *  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.base;

import com.github.gwtbootstrap.client.ui.constants.Device;
import com.google.gwt.user.client.ui.HTMLPanel;

/**
 * Widget with support for HTML.
 * 
 * <p>
 * When extendind this class, the child class should always expose a constructor
 * with a String argument. This argument is HTML text. The constructor is used
 * by the {@link com.google.gwt.uibinder.elementparsers.HTMLPanelParser
 * HTMLPanelParser} to parse UiBinder XML.
 * </p>
 * <h3>Child Class Constructor Example</h3>
 * 
 * <pre>
 * public ChildPanel extends HtmlWidget {
 *     public ChildPanel(String html) {
 *         super("label", html); //"label" is the HTML tag used for the child class.
 *     }
 * }
 * </pre>
 * 
 * @since 2.0.4.0
 * 
 * @author ohashi keisuke
 */
public class HtmlWidget extends HTMLPanel implements HasStyle, IsResponsive {

    /**
     * Creates an empty widget.
     * 
     * @param tag
     *            the tag of the root element
     */
    protected HtmlWidget(String tag) {
        super(tag, "");
    }

    /**
     * Creates an HTML panel whose root element has the given tag, and with the
     * specified HTML contents. Any element within this HTML that has a
     * specified id can contain a child widget.
     * 
     * @param tag
     *            the tag of the root element
     * @param html
     *            the panel's HTML
     */
    public HtmlWidget(String tag, String html) {
        super(tag, html);
    }

    /**
     * {@inheritDoc}
     */
    public void setShowOn(Device device) {
        ResponsiveHelper.setShowOn(this, device);
    }

    /**
     * {@inheritDoc}
     */
    public void setHideOn(Device device) {
        ResponsiveHelper.setHideOn(this, device);
    }

    /**
     * {@inheritDoc}
     */
    public void setStyle(Style style) {
        StyleHelper.setStyle(this, style);
    }

    /**
     * {@inheritDoc}
     */
    public void addStyle(Style style) {
        StyleHelper.addStyle(this, style);
    }

    /**
     * {@inheritDoc}
     */
    public void removeStyle(Style style) {
        StyleHelper.removeStyle(this, style);
    }
}