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:cc.kune.wave.client.kspecific.inboxcount.InboxCountPresenter.java

License:GNU Affero Public License

/**
 * Instantiates a new inbox count presenter.
 *
 * @param view//w w w  . ja  v  a2 s  .com
 *          the view
 * @param session
 *          the session
 * @param eventBus
 *          the event bus
 */
@Inject
public InboxCountPresenter(final InboxCountView view, final Session session, final EventBus eventBus,
        final WaveClientProvider waveView) {
    this.view = view;
    this.session = session;
    this.eventBus = eventBus;
    currentTotal = Search.UNKNOWN_SIZE;

    updateTimer = new Timer() {
        @Override
        public void run() {
            update(search);
        }
    };

    searchListener = new Listener() {
        private void log(final int index, final Digest diggest, final String msg) {
            // Log.info(msg + index + " - " + diggest.getTitle() + ": unread: " +
            // diggest.getUnreadCount());
        }

        @Override
        public void onDigestAdded(final int index, final Digest diggest) {
            log(index, diggest, "Diggest added: ");
            shouldUpdate();
        }

        @Override
        public void onDigestReady(final int index, final Digest diggest) {
            log(index, diggest, "Diggest ready: ");
            shouldUpdate();
        }

        @Override
        public void onDigestRemoved(final int index, final Digest diggest) {
            log(index, diggest, "Diggest removed: ");
            shouldUpdate();
        }

        @Override
        public void onStateChanged() {
            shouldUpdate();
        }

        @Override
        public void onTotalChanged(final int total) {
            shouldUpdate();
        }

        private void shouldUpdate() {
            updateTimer.schedule(3000);
        }

    };

    session.onUserSignInOrSignOut(true, new UserSignInOrSignOutHandler() {
        @Override
        public void onUserSignInOrSignOut(final UserSignInOrSignOutEvent event) {
            final boolean logged = event.isLogged();
            view.showCount(logged);
            if (logged) {
                search = waveView.get().getSearch();
                search.addListener(searchListener);
                update(search);
            } else {
                if (search != null)
                    search.removeListener(searchListener);
            }

        }
    });

    eventBus.addHandler(NewUserRegisteredEvent.getType(),
            new NewUserRegisteredEvent.NewUserRegisteredHandler() {
                @Override
                public void onNewUserRegistered(final NewUserRegisteredEvent event) {
                    sendNoticeToUser();
                }
            });
}

From source file:ccc.client.gwt.core.GWTTimers.java

License:Open Source License

/** {@inheritDoc} */
@Override//from ww  w .j  a  v  a2s. c  om
public void scheduleRepeating(final Runnable r, final int periodMillis) {
    new Timer() {
        /** {@inheritDoc} */
        @Override
        public void run() {
            r.run();
        }
    }.scheduleRepeating(periodMillis);
}

From source file:ch.eaternity.client.Search.java

License:Apache License

private void selectRowMeals(final int row) {

    if (FoundRezepte.size() < row) {
        return;//from www .  j  a va 2  s.c o  m
    }
    Recipe item = FoundRezepte.get(row);
    if (item == null) {
        return;
    }

    styleRowMeals(selectedRow, false);
    styleRowMeals(row, true);

    Timer t = new Timer() {
        public void run() {
            styleRowMeals(row, false);
        }
    };

    superDisplay.cloneRecipe(item);
    t.schedule(200);

    selectedRow = row;
    if (listenerMeals != null) {
        listenerMeals.onItemSelected(item);
    }

}

From source file:ch.eaternity.client.Search.java

License:Apache License

private void selectRowMealsYours(final int row) {

    if (FoundRezepteYours.size() < row) {
        return;//from   ww w.  java 2  s  . c  o  m
    }
    Recipe item = FoundRezepteYours.get(row);
    if (item == null) {
        return;
    }

    styleRowMealsYours(selectedRow, false);
    styleRowMealsYours(row, true);

    Timer t = new Timer() {
        public void run() {
            styleRowMealsYours(row, false);
        }
    };

    superDisplay.cloneRecipe(item);
    t.schedule(200);

    selectedRow = row;
    if (listenerMeals != null) {
        listenerMeals.onItemSelected(item);
    }

}

From source file:ch.eaternity.client.Search.java

License:Apache License

private void selectRow(final int row) {

    // get the grams from the input
    // if 2 valid numbers exist, take the first valid one
    int grams = 0;

    searchString = SearchInput.getText().trim();
    String[] searches = searchString.split(" ");

    for (String search : searches) {
        try {//from  w w  w . j  av  a 2  s .c  o m
            int x = Integer.parseInt(search);
            grams = x;
            break;
        } catch (NumberFormatException nFE) {
        }
    }

    if (FoundIngredient.size() + FoundAlternativeIngredients.size() < row) {
        return;
    }

    Ingredient item;
    if (row >= 0 && row < FoundIngredient.size()) {
        item = FoundIngredient.get(row);
    } else if (row >= FoundIngredient.size()
            && row < FoundIngredient.size() + FoundAlternativeIngredients.size()) {
        item = FoundAlternativeIngredients.get(row - FoundIngredient.size());
    } else
        return;

    if (item == null) {
        return;
    }

    styleRow(selectedRow, false);
    styleRow(row, true);

    //TODO uncomment this: idea is to animate some effects
    //infoZutat.setZutat(item);

    //      leftSplitPanel.setHeight("500px");
    //      leftSplitPanel.addSouth( new InfoZutat(), 500);

    //      leftSplitPanel.setWidgetTopHeight(infoZutat, 0, PX, 0, PX);
    //      leftSplitPanel.forceLayout();
    //      leftSplitPanel.setWidgetTopHeight(infoZutat, 0, PX, 2, EM);
    //      leftSplitPanel.animate(500);

    //TODO uncomment this: idea is to provide a tooltip with more informations

    //infoZutat.stylePanel(true);

    // infotext ber angeklickte zutat
    // Gro:Name, Foto, Liste:Labels: Text:Beschreibung Wikipedia klein:Alternativen
    //

    Timer t = new Timer() {
        public void run() {
            styleRow(row, false);
        }
    };

    final RecipeView rezeptView;
    int selectedRecipe = superDisplay.getSelectedRecipeNumber();
    if (selectedRecipe != -1) {
        rezeptView = superDisplay.getSelectedRecipeView();
    } else {
        rezeptView = superDisplay.createNewRecipeView();
    }
    superDisplay.addOneIngredientToMenu(item, rezeptView, grams);
    rezeptView.showRezept(rezeptView.recipe);
    superDisplay.displayRecipeEditView(rezeptView);

    superDisplay.adjustStickyEditLayout();

    t.schedule(200);
    selectedRow = row;
    markedRow = 0;

    if (listener != null) {
        listener.onItemSelected(item);
    }
}

From source file:ch.heftix.mailxel.client.MailxelMainToolBar.java

License:Open Source License

public void startDownloadTimer(int delay) {
    // schedule mail download
    if (delay > 0) {
        Timer timer = new Timer() {

            public void run() {
                ScanMailFolderCommand cmd = new ScanMailFolderCommand(mailxelService, mailxelPanel, null, null);
                cmd.execute();/*from   w ww.jav a2 s .  c  o  m*/
            }
        };
        timer.scheduleRepeating(delay * 60 * 1000);
    }

}

From source file:ch.heftix.mailxel.client.StatusItem.java

License:Open Source License

public void done(final String message, final int autoHideAfterMs) {
    working.setUrl("img/tick.png");
    // working.setVisible(false);
    lDone.setText(message);//from w  w w.j a  v  a 2s . com
    isDone = true;
    if (autoHideAfterMs > 0) {
        Timer timer = new Timer() {

            public void run() {
                statusInfoBar.removeDones();
            }
        };
        timer.schedule(autoHideAfterMs);
    }
}

From source file:ch.systemsx.cisd.openbis.generic.client.web.client.application.CommonViewContext.java

License:Apache License

CommonViewContext(final ICommonClientServiceAsync service, final IMessageProvider messageProvider,
        final IGenericImageBundle imageBundle, final IPageController pageController) {
    this.service = service;
    this.messageProvider = new DictonaryBasedMessageProvider(TECHNOLOGY_NAME);
    this.imageBundle = imageBundle;
    this.pageController = pageController;
    viewModel = new GenericViewModel();
    timer = new Timer() {
        @Override//  w  w  w .j a v  a  2 s  .com
        public void run() {
            DisplaySettings displaySettings = viewModel.getSessionContext().getDisplaySettings();
            AbstractAsyncCallback<Void> callback = new AbstractAsyncCallback<Void>(CommonViewContext.this) {
                @Override
                public final void process(final Void result) {
                }
            };
            service.updateDisplaySettings(displaySettings, callback);
        }
    };
}

From source file:ch.takoyaki.email.html.client.ui.generic.ClosableTabLayoutPanel.java

License:Open Source License

@Override
public void add(final IsWidget content, String title) {
    final FlowPanel hpanel = new FlowPanel();
    final InlineHTML titlew = new InlineHTML(title);

    final Widget closeButton = newCloseButton(content);

    titlew.addClickHandler(new ClickHandler() {
        private long last = System.currentTimeMillis();
        private Timer timer = new Timer() {

            @Override//from   w w w .j a  va2 s. co m
            public void run() {

                if (isSelected()) {
                    renameAction(content, hpanel, titlew, closeButton);
                }

            }
        };

        private boolean isSelected() {
            int selected = getTab().getSelectedIndex();
            return getTab().getWidgetIndex(content) == selected;
        }

        @Override
        public void onClick(ClickEvent event) {

            long now = System.currentTimeMillis();
            if ((now - last) < 250) { // double
                timer.cancel();
                event.stopPropagation();
                markTabEventHandler.onMark(ClosableTabLayoutPanel.this, getTab().getWidgetIndex(content));
            } else {
                if (isSelected()) {
                    timer.schedule(250);
                }
            }
            last = now;

        }
    });

    hpanel.setStyleName("closable_tab");
    hpanel.add(titlew);
    hpanel.add(closeButton);

    getTab().add(content, hpanel);

    getTab().selectTab(getTab().getWidgetCount() - 1);
}

From source file:ch.unifr.pai.twice.comm.serverPush.client.RemoteEventing.java

License:Apache License

/**
 * Fires the event to the local event bus after a specific delay
 * //from   w  w w . ja  va 2 s. c  o m
 * @param event
 * @param source
 * @param localEvent
 */
private void fireEventToTheLocalBusWithDelay(final Event<?> event, final Object source, boolean localEvent) {
    if (event instanceof RemoteEvent) {
        if (((RemoteEvent<?>) event).isFireLocally()) {
            int delay = localEvent ? Math.max(localEventDeliveryDelay, eventDeliveryDelay) : eventDeliveryDelay;
            if (delay == 0) {
                if (source == null)
                    fireEventLocally(event);
                else
                    fireEventFromSourceLocally(event, source);
            } else {
                Timer t = new Timer() {

                    @Override
                    public void run() {
                        if (source == null)
                            fireEventLocally(event);
                        else
                            fireEventFromSourceLocally(event, source);
                    }
                };
                t.schedule(delay);
            }
        }

    }

}