Example usage for com.google.gwt.safecss.shared SafeStylesUtils forRight

List of usage examples for com.google.gwt.safecss.shared SafeStylesUtils forRight

Introduction

In this page you can find the example usage for com.google.gwt.safecss.shared SafeStylesUtils forRight.

Prototype

public static SafeStyles forRight(double value, Unit unit) 

Source Link

Document

Set the right css property.

Usage

From source file:org.otalo.ao.client.widget.chlist.client.ChosenImpl.java

License:Apache License

private void setup() {
    boolean isHidden = false;
    containerId = buildContainerId();/*from ww  w. j  a v  a  2  s.com*/
    fWidth = $selectElement.outerWidth();

    //Temporary fix. IIf the select element is inside a hidden container
    //GQuery cannot get the size of the select element.
    if (fWidth == 0) {
        $("body").append("<div id='gwt_chosen_temp_div' style='display:block;position:absolute;"
                + (isRTL ? "right" : "left") + ":-9000px; visibility:hidden'> </div>");
        GQuery tempDiv = $("#gwt_chosen_temp_div");
        tempDiv.append($selectElement.clone());

        fWidth = tempDiv.children("select").outerWidth();

        tempDiv.remove();
        isHidden = fWidth > 0;

    }

    isRTL = LocaleInfo.getCurrentLocale().isRTL() || $selectElement.hasClass("chzn-rtl");

    String cssClasses = isRTL ? css.chznContainer() + " " + css.chznRtl() : css.chznContainer();

    GQuery containerTemp = $(ChozenTemplate.templates.container(containerId, cssClasses).asString())
            .width(fWidth);

    SafeStyles horizontalOffset = isRTL ? SafeStylesUtils.forRight(HORIZONTAL_OFFSET, Style.Unit.PX)
            : SafeStylesUtils.forLeft(HORIZONTAL_OFFSET, Style.Unit.PX);

    if (isMultiple) {
        containerTemp.html(
                ChozenTemplate.templates.contentMultiple(css.chznChoices(), css.searchField(), defaultText,
                        css.defaultClass(), css.chznDrop(), css.chznResults(), horizontalOffset).asString());
    } else {
        containerTemp.html(ChozenTemplate.templates.contentSingle(css.chznSingle(), css.chznDefault(),
                defaultText, css.chznDrop(), css.chznSearch(), css.chznResults(), horizontalOffset).asString());
    }

    // insert container after the select elements
    $selectElement.hide().after(containerTemp);
    container = $("#" + containerId);
    container.addClass(isMultiple ? css.chznContainerMulti() : css.chznContainerSingle());

    dropdown = container.find("div." + css.chznDrop()).first();
    int ddTop = container.height();
    int ddWidth = fWidth - getSideBorderPadding(dropdown, isHidden);
    dropdown.css(Properties.create("{\"width\": " + ddWidth + "px, \"top\": " + ddTop + "px}"));

    searchField = container.find("input").first();
    searchResults = container.find("ul." + css.chznResults()).first();
    searchFieldScale();

    if (isMultiple) {
        searchChoices = container.find("ul." + css.chznChoices()).first();
        searchContainer = container.find("li." + css.searchField()).first();
    } else {
        searchContainer = container.find("div." + css.chznSearch()).first();
        selectedItem = container.find("." + css.chznSingle()).first();
        int searchFieldWidth = ddWidth - getSideBorderPadding(searchContainer, isHidden)
                - getSideBorderPadding(searchField, isHidden);
        searchField.css("width", searchFieldWidth + "px");
    }

    resultsBuild();

    setTabIndex();

    fireEvent(new ReadyEvent(this));

}