next.i.view.Utils.java Source code

Java tutorial

Introduction

Here is the source code for next.i.view.Utils.java

Source

/*
 * Copyright 2011 Vancouver Ywebb Consulting Ltd
 * 
 * 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 next.i.view;

import static com.google.gwt.dom.client.Style.Unit.PX;

import com.google.gwt.dom.client.Style;
import com.google.gwt.dom.client.Style.Position;
import com.google.gwt.dom.client.Style.Unit;
import com.google.gwt.user.client.Element;
import com.google.gwt.user.client.Window;

/**
 * Utility class
 */
class Utils {

    // refer to *.gwt.xml file for all mobile UserAgents
    native boolean isMobile() /*-{
                              var ua = $wnd.navigator.userAgent.toLowerCase();
                              if (ua.indexOf("webkit") != -1 && ua.indexOf("mobile") != -1) {
                              return "mobilesafari";
                              }
                              return "none";
                              }-*/;

    static void fillParent(Element elem) {
        Style style = elem.getStyle();
        style.setPosition(Position.ABSOLUTE);
        style.setLeft(0, PX);
        style.setTop(0, PX);
        style.setRight(0, PX);
        style.setBottom(0, PX);
        style.setWidth(100, Unit.PCT);
        style.setHeight(100, Unit.PCT);
    }

    static boolean isVisible(Element element) {

        int left = element.getAbsoluteLeft();
        int top = element.getAbsoluteTop();
        int winH = Window.getClientHeight();
        int winW = Window.getClientWidth();
        boolean isVisible = (left >= 0 && left < winW) && (top >= 0 && top < winH);
        // Log.info("top=" + top + ", left=" + left);

        return isVisible;
    }

    native static void disableTextSelect(Element e, boolean disable)/*-{
                                                                    if (disable) {
                                                                    e.ondrag = function() {
                                                                    return false;
                                                                    };
                                                                    e.onselectstart = function() {
                                                                    return false;
                                                                    };
                                                                    e.style.MozUserSelect = "none"
                                                                    } else {
                                                                    e.ondrag = null;
                                                                    e.onselectstart = null;
                                                                    e.style.MozUserSelect = "text"
                                                                    }
                                                                    }-*/;

    static String noNull(String str) {
        return noNull(str, "");
    }

    static String noNull(String str, String default_) {
        if (null == str) {
            return default_;
        }
        return str;
    }

    static boolean isEmpty(String str) {
        if (null == str || str.trim().length() < 1) {
            return true;
        }
        return false;
    }

}