Example usage for com.google.gwt.user.client Timer Timer

List of usage examples for com.google.gwt.user.client Timer Timer

Introduction

In this page you can find the example usage for com.google.gwt.user.client Timer Timer.

Prototype

Timer

Source Link

Usage

From source file:com.akjava.gwt.threetest.client.SplineDemo.java

License:Apache License

@Override
public void start(final WebGLRenderer renderer, final int width, final int height, FocusPanel panel) {
    stop();//  w w w . j  a v a  2s. com

    final Camera camera = THREE.PerspectiveCamera(35, (double) width / height, .1, 10000);
    camera.getPosition().set(0, 0, 500);

    final Scene scene = THREE.Scene();

    final List<Point> pts = new ArrayList<Point>();
    for (int i = 0; i < 10; i++) {
        double mx = Math.random() * 20 + i * 20 - 100;
        double my = Math.random() * 100;
        pts.add(Point.create(mx, my));
        final Mesh mesh = THREE.Mesh(THREE.SphereGeometry(2, 16, 16),
                THREE.MeshLambertMaterial().color(0xff0000).build());
        mesh.setPosition(mx, my, 0);
        scene.add(mesh);
    }

    final Light light = THREE.PointLight(0xffffff);
    light.setPosition(10, 0, 10);
    scene.add(light);

    final long s = System.currentTimeMillis();
    final long totalDuration = 1000 * 10;

    final Geometry geo = THREE.SphereGeometry(2, 16, 16);
    final Material material = THREE.MeshLambertMaterial().color(0x0000ff).build();
    final Clock clock = new Clock();
    final AbstractMovingXYControler moving = new AbstractMovingXYControler(pts, totalDuration) {

        @Override
        public void moveTo(double x, double y) {
            final Mesh mesh = THREE.Mesh(geo, material);
            mesh.setPosition(x, y, 0);
            //GWT.log(pt.getX()+"x"+pt.getY());
            scene.add(mesh);
        }

        @Override
        public void moveEnd() {

        }
    };
    timer = new Timer() {
        public void run() {
            MainWidget.stats.update();
            long t = clock.delta();
            if (moving.isMoving()) {
                moving.update(t);
            }
            renderer.render(scene, camera);

        }

    };
    timer.scheduleRepeating(1000 / 60);
}

From source file:com.akjava.gwt.threetest.client.TextureDemo.java

License:Apache License

@Override
public void start(final WebGLRenderer renderer, final int width, final int height, FocusPanel panel) {
    if (timer != null) {
        timer.cancel();//from w  ww  . j  av  a  2s . c o m
        timer = null;
    }

    final Camera camera = THREE.PerspectiveCamera(35, (double) width / height, .1, 10000);
    camera.getPosition().set(0, 0, 20);

    final Scene scene = THREE.Scene();
    GWT.log("xx");

    Texture texture = ImageUtils.loadTexture(Bundles.INSTANCE.rock_texture());
    Material material = THREE.MeshBasicMaterial().map(texture).build();

    Material material2 = THREE.MeshBasicMaterial().color(0x00ff00).wireFrame(true).build();
    Material[] ms = new Material[] { material2, material, material, material, material, material };

    final Mesh mesh = THREE.Mesh(THREE.Cube(5, 5, 5, 1, 1, 1, ms), THREE.MeshFaceMaterial());

    scene.add(mesh);
    GWT.log("xx2");
    final Light light = THREE.PointLight(0xffffff);
    light.setPosition(10, 0, 10);
    scene.add(light);

    timer = new Timer() {
        public void run() {
            try {

                //cancel();
                mesh.getRotation().incrementX(0.02);
                mesh.getRotation().incrementY(0.02);
                renderer.render(scene, camera);
            } catch (Exception e) {
                GWT.log(e.getMessage());
            }
        }
    };
    //timer.schedule(2000);
    timer.scheduleRepeating(1000 / 60);
}

From source file:com.algorithmstudy.visualizer.client.sort.VisualizerTimerImpl.java

License:Open Source License

public void start() {
    if (null != theTimer) {
        System.out.println("VisualizerTimer.start() called but timer is already running.");
        return;// w  w  w . j a  va  2s.  com
    }

    theTimer = new Timer() {
        public void run() {
            sendTick();
        }
    };

    schedule();
}

From source file:com.alkacon.acacia.client.ButtonBarHandler.java

License:Open Source License

/**
 * Constructor.<p>//from  w  w  w.j  ava  2s.co m
 */
private ButtonBarHandler() {

    Event.addNativePreviewHandler(new NativePreviewHandler() {

        public void onPreviewNativeEvent(NativePreviewEvent event) {

            NativeEvent nativeEvent = event.getNativeEvent();
            if (event.getTypeInt() != Event.ONMOUSEDOWN) {
                return;
            }
            if (nativeEvent == null) {
                return;
            }
            if (m_buttonBar == null) {
                return;
            }
            EventTarget target = nativeEvent.getEventTarget();

            if (Element.is(target)) {
                Element targetElement = Element.as(target);
                boolean clickedOnMenu = m_buttonBar.getElement().isOrHasChild(targetElement);
                if (!clickedOnMenu) {
                    closeAll();

                }
            }
        }
    });
    m_choiceTimer = new Timer() {

        @Override
        public void run() {

            closeAllChoices();
        }
    };
    m_buttonBarTimer = new Timer() {

        @Override
        public void run() {

            closeAll();
        }
    };
}

From source file:com.alkacon.acacia.client.EditorBase.java

License:Open Source License

/**
 * Initializes the edit overlay to be positioned around the given element.<p>
 * /*from  w  ww  . ja va 2 s .co  m*/
 * @param element the element
 */
protected void initEditOverlay(Element element) {

    InlineEditOverlay.removeAll();
    m_editOverlay = InlineEditOverlay.addOverlayForElement(element);
    if (m_resizeHandlerRegistration != null) {
        m_resizeHandlerRegistration.removeHandler();
    }
    // add a handler to ensure the edit overlays get adjusted to changed window size
    m_resizeHandlerRegistration = Window.addResizeHandler(new ResizeHandler() {

        private Timer m_resizeTimer;

        public void onResize(ResizeEvent event) {

            if (m_resizeTimer == null) {
                m_resizeTimer = new Timer() {

                    @Override
                    public void run() {

                        handleResize();
                    }
                };
                m_resizeTimer.schedule(300);
            }
        }

        /**
         * Handles the window resize.<p>
         */
        void handleResize() {

            m_resizeTimer = null;
            InlineEditOverlay.updateCurrentOverlayPosition();
        }
    });
}

From source file:com.alkacon.acacia.client.ui.InlineEntityWidget.java

License:Open Source License

/**
 * Repositions the edit overlay after the HTML has been updated.<p>
 *///  ww w  .  j  a v a 2  s.co  m
void afterHtmlUpdate() {

    if (m_overlayTimer != null) {
        m_overlayTimer.cancel();
        m_overlayTimer = null;
    }
    m_runningUpdate = false;
    List<Element> elements = Vie.getInstance().getAttributeElements(m_parentEntity,
            m_attributeHandler.getAttributeName(), m_formParent.getElement());
    if (m_popupClosed) {
        // the form popup has already been closed, reinitialize the editing widgets for updated HTML
        InlineEditOverlay.updateCurrentOverlayPosition();
        if (m_requireShowPopup) {
            if (elements.size() > m_attributeIndex) {
                m_referenceElement = elements.get(m_attributeIndex);
            }
            showEditPopup(null);
            m_hasChanges = true;
        } else {
            InlineEditOverlay.getRootOverlay().clearButtonPanel();
            m_htmlUpdateHandler.reinitWidgets(m_formParent);
        }

    } else {
        if (m_referenceElement != null) {
            InlineEditOverlay.removeLastOverlay();
        }
        if (elements.size() > m_attributeIndex) {
            m_referenceElement = elements.get(m_attributeIndex);
            InlineEditOverlay.addOverlayForElement(m_referenceElement);
        } else {
            m_referenceElement = m_formParent.getElement();
            InlineEditOverlay.addOverlayForElement(m_referenceElement);
        }
    }
    // schedule to update the ovelay position
    m_overlayTimer = new Timer() {

        /** Timer run counter. */
        private int timerRuns = 0;

        /**
         * @see com.google.gwt.user.client.Timer#run()
         */
        @Override
        public void run() {

            InlineEditOverlay.updateCurrentOverlayPosition();
            if (timerRuns > 3) {
                cancel();
            }
            timerRuns++;
        }
    };
    m_overlayTimer.scheduleRepeating(100);
}

From source file:com.alkacon.acacia.client.widgets.TinyMCEWidget.java

License:Open Source License

/**
 * Schedules to reset the focus to the main element.<p>
 *///from   ww  w.ja  v a  2  s  .c  o  m
protected void scheduleRefocus() {

    // this needs to be delayed a bit, otherwise the toolbar is not rendered properly
    Timer focusTimer = new Timer() {

        @Override
        public void run() {

            refocusInlineEditor();
        }
    };
    focusTimer.schedule(150);
}

From source file:com.alkacon.geranium.client.ui.A_HoverHandler.java

License:Open Source License

/**
 * @see com.google.gwt.event.dom.client.MouseOverHandler#onMouseOver(com.google.gwt.event.dom.client.MouseOverEvent)
 */// w  w  w .  j  a  va  2s  . c  o  m
public final void onMouseOver(final MouseOverEvent event) {

    if (m_timer != null) {
        return;
    }
    m_timer = new Timer() {

        /**
         * @see com.google.gwt.user.client.Timer#run()
         */
        @Override
        public void run() {

            m_timer = null;
            onHoverIn(event);
        }
    };
    m_timer.schedule(200);
}

From source file:com.alkacon.geranium.client.ui.A_NotificationWidget.java

License:Open Source License

/**
 * @see com.alkacon.geranium.client.ui.I_NotificationWidget#show(com.alkacon.geranium.client.ui.Notification.Mode, com.alkacon.geranium.client.ui.Notification.Type, java.lang.String)
 *//*from   w w  w. j  a  v  a2  s.co m*/
public void show(Mode mode, Type type, String message) {

    if (mode == null) {
        mode = Mode.NORMAL;
    }
    final String restoreMessage;
    if (Notification.shouldRestoreMessage(m_mode, mode, m_type, type)) {
        restoreMessage = getMessage();
    } else {
        restoreMessage = null;
    }
    // remove last notification if still shown
    hide(true);

    // keep state
    final Type oldType = m_type;
    m_type = type;
    m_mode = mode;

    // set the new notification message
    setMessage(message);

    // set the right class
    setClassForType(type);

    // show the widget
    animateShow();

    // set timer to hide non sticky messages or restore superior message
    if (Mode.NORMAL.equals(m_mode) || ClientStringUtil.isNotEmptyOrWhitespaceOnly(restoreMessage)) {
        m_timer = new Timer() {

            /**
             * @see com.google.gwt.user.client.Timer#run()
             */
            @Override
            public void run() {

                hide(false);
                if (ClientStringUtil.isNotEmptyOrWhitespaceOnly(restoreMessage)) {
                    show(Mode.STICKY, oldType, restoreMessage);
                }
            }
        };
        m_timer.schedule(3000 * (type == Type.NORMAL ? 1 : 2));
    }

}

From source file:com.alkacon.geranium.client.util.ToolTipHandler.java

License:Open Source License

/**
 * Creates the remove tool tip timer.<p>
 *///from   ww w .  j av  a2 s  .  c  o  m
private void createTimer() {

    m_removeTimer = new Timer() {

        /**
         * @see com.google.gwt.user.client.Timer#run()
         */
        @Override
        public void run() {

            clearShowing();
        }
    };
}