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

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

Introduction

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

Prototype

public synchronized void schedule(int delayMs) 

Source Link

Document

Schedules a timer to elapse in the future.

Usage

From source file:cz.fi.muni.xkremser.editor.client.view.window.RemoveDigitalObjectWindow.java

License:Open Source License

@SuppressWarnings("static-access")
private RemoveDigitalObjectWindow(final String uuid, final LangConstants lang, final DispatchAsync dispatcher,
        EventBus eventBus) {//  w ww .  j av  a2 s. c o m
    super(180, 570, lang.removeItem() + ": " + uuid, eventBus, 60);
    this.lang = lang;
    this.uuid = uuid;
    this.dispatcher = dispatcher;
    this.eventBus = eventBus;
    this.countOfThreeDots = 0;
    this.isDeleting = false;
    setEdgeOffset(15);
    itemList = new ArrayList<RemoveDigitalObjectWindow.ItemImgButton>();
    lowestLevel = 1;
    setShowMaximizeButton(true);

    HTMLFlow removeWarning = new HTMLFlow(
            HtmlCode.bold(lang.deleteWarningWant() + ": " + uuid + " " + lang.deleteWarningExplore()));
    removeWarning.setExtraSpace(5);

    Button explore = new Button();
    explore.setTitle(lang.explore());
    explore.setLayoutAlign(Alignment.CENTER);

    warningLayout.addMember(removeWarning);

    Layout rootItemLayout = new HLayout();
    rootItemLayout.addMember(explore);
    warningLayout.addMember(rootItemLayout);

    explore.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            mw.setLoadingIcon("loadingAnimation.gif");
            mw.show(true);
            Timer timer = new Timer() {

                @Override
                public void run() {
                    callServer();
                }
            };
            timer.schedule(25);
        }
    });

    warningLayout.addMember(new ButtonsLayout(true));

    mainLayout.addMember(warningLayout);
    mainLayout.setAutoHeight();
    mainLayout.setAutoWidth();

    addItem(mainLayout);
    centerInPage();
    show();
    explore.focus();
}

From source file:cz.fi.muni.xkremser.editor.client.view.window.UniversalWindow.java

License:Open Source License

public UniversalWindow(int height, int width, String title, EventBus eventBus, final int milisToWait) {
    this.eventBus = eventBus;
    setMembersMargin(10);//w  ww. ja  va2s  . co m
    setHeight(height);
    setWidth(width);
    setCanDragResize(true);
    setShowEdges(true);
    setTitle(title);
    setShowMinimizeButton(false);
    setIsModal(true);
    setShowModalMask(true);
    addCloseClickHandler(new CloseClickHandler() {

        @Override
        public void onCloseClick(CloseClientEvent event) {
            hide();
        }
    });
    eventBus.addHandler(EscKeyPressedEvent.getType(), new EscKeyPressedHandler() {

        @Override
        public void onEscKeyPressed(final EscKeyPressedEvent event) {
            Timer t = new Timer() {

                @Override
                public void run() {
                    if (UniversalWindow.this != null && UniversalWindow.this.isCreated()
                            && !event.isCancelled()) {
                        UniversalWindow.this.hide();
                        event.cancel();
                    }
                }
            };
            t.schedule(milisToWait);
        }
    });
}

From source file:cz.mzk.editor.client.presenter.CreateStructurePresenter.java

License:Open Source License

/**
  * /*from w  ww .  j av  a 2  s. c  om*/
  */

private void processImages() {
    String title = null;
    if (bundle != null && bundle.getDc() != null && bundle.getDc().getTitle() != null
            && bundle.getDc().getTitle().size() > 0) {
        title = bundle.getDc().getTitle().get(0);
    }

    final ScanFolderAction action = new ScanFolderAction(model, inputPath, title);
    final DispatchCallback<ScanFolderResult> callback = new DispatchCallback<ScanFolderResult>() {

        private volatile int done = 0;
        private int total = 0;
        private volatile boolean isDone = false;

        @Override
        public void callback(final ScanFolderResult result) {
            getEventBus().fireEvent(new RefreshTreeEvent(Constants.NAME_OF_TREE.INPUT_QUEUE));

            ServerActionResult serverActionResult = result.getServerActionResult();
            if (serverActionResult.getServerActionResult() == Constants.SERVER_ACTION_RESULT.OK) {
                if (result != null && result.getToAdd() != null && !result.getToAdd().isEmpty()) {
                    initializeConversion(result);
                } else if (result != null && result.getItems() != null && !result.getItems().isEmpty()) {
                    doTheRest(result.getItems());
                } else {
                    EditorSC.operationFailed(lang, "");
                }

            } else if (serverActionResult
                    .getServerActionResult() == Constants.SERVER_ACTION_RESULT.WRONG_FILE_NAME) {
                SC.ask(lang.wrongFileName() + serverActionResult.getMessage(), new BooleanCallback() {

                    @Override
                    public void execute(Boolean value) {
                        if (value != null && value && result != null && result.getToAdd() != null
                                && !result.getToAdd().isEmpty()) {
                            initializeConversion(result);
                        }
                    }
                });
            } else if (serverActionResult.getServerActionResult() == Constants.SERVER_ACTION_RESULT.OK_PDF) {
                handlePdf(result);
            }
        }

        private void initializeConversion(final ScanFolderResult result) {
            final DispatchCallback<InitializeConversionResult> callback = new DispatchCallback<InitializeConversionResult>() {

                @Override
                public void callback(InitializeConversionResult initResult) {
                    if (initResult != null && initResult.isSuccess()) {
                        convert(result);
                    } else {
                        SC.ask("Someone else is now running the conversion task. Please wait a second. Do you want to try it again?",
                                new BooleanCallback() {

                                    @Override
                                    public void execute(Boolean value) {
                                        if (value != null && value) {
                                            initializeConversion(result);
                                        }
                                    }
                                });
                    }
                }

                @Override
                public void callbackError(Throwable t) {
                    SC.say("Someone else is now running the conversion task.");
                }
            };
            dispatcher.execute(new InitializeConversionAction(true), callback);
        }

        private void endConversion() {
            final DispatchCallback<InitializeConversionResult> callback = new DispatchCallback<InitializeConversionResult>() {

                @Override
                public void callback(InitializeConversionResult result) {
                    if (result != null && !result.isSuccess()) {
                        SC.warn("Some images were not converted.");
                    }
                }

                @Override
                public void callbackError(Throwable t) {
                    SC.say("Someone else is now running the conversion task.");
                }
            };
            dispatcher.execute(new InitializeConversionAction(false), callback);
        }

        private void convert(ScanFolderResult result) {
            final List<ImageItem> itemList = result == null ? null : result.getItems();
            final List<ImageItem> toAdd = result == null ? null : result.getToAdd();
            if (toAdd != null && !toAdd.isEmpty()) {
                SetEnabledHotKeysEvent.fire(CreateStructurePresenter.this, false);
                int lastItem = toAdd.size();
                boolean progressbar = lastItem > 5;
                final Progressbar hBar1 = progressbar ? new Progressbar() : null;
                if (progressbar) {
                    done = 0;
                    total = lastItem;
                    hBar1.setHeight(24);
                    hBar1.setVertical(false);
                    hBar1.setPercentDone(0);
                    getView().getPopupPanel().setAutoHideEnabled(false);
                    getView().getPopupPanel().setWidget(hBar1);
                    getView().getPopupPanel().setVisible(true);
                    getView().getPopupPanel().center();
                    Timer timer = new Timer() {

                        @Override
                        public void run() {
                            for (ImageItem item : toAdd) {
                                convertItem(item, hBar1, itemList);
                            }
                        }
                    };
                    timer.schedule(40);
                } else {
                    for (ImageItem item : toAdd) {
                        convertItem(item, hBar1, itemList);
                    }
                }

            } else {
                doTheRest(itemList);
            }
        }

        @Override
        public void callbackError(final Throwable t) {
            if (t.getMessage() != null && t.getMessage().length() > 0
                    && t.getMessage().charAt(0) == Constants.SESSION_EXPIRED_FLAG) {
                SC.confirm(lang.sessionExpired(), new BooleanCallback() {

                    @Override
                    public void execute(Boolean value) {
                        if (value != null && value) {
                            ClientUtils.redirect(t.getMessage().substring(1));
                        }
                    }
                });
            } else {
                SC.ask(t.getMessage() + " " + lang.mesTryAgain(), new BooleanCallback() {

                    @Override
                    public void execute(Boolean value) {
                        if (value != null && value) {
                            processImages();
                        }
                    }
                });
            }
            getView().getPopupPanel().setAutoHideEnabled(true);
            getView().getPopupPanel().setVisible(false);
            getView().getPopupPanel().hide();
        }

        private void doTheRest(List<ImageItem> itemList) {
            ScanRecord[] items = null;
            if (itemList != null && itemList.size() > 0) {
                items = new ScanRecord[itemList.size()];
                for (int i = 0, total = itemList.size(); i < total; i++) {
                    ScanRecord record = new ScanRecord(String.valueOf(i + 1), model,
                            itemList.get(i).getIdentifier(), Constants.PAGE_TYPES.NP.toString());
                    if (itemList.get(i).getMimeType() != null) {
                        record.setAttribute(Constants.ATTR_ADITIONAL_INFO_OR_OCR,
                                itemList.get(i).getMimeType());
                        record.setAttribute(Constants.ATTR_MODEL_ID, "track");
                        record.setAttribute(Constants.ATTR_NOTE_OR_INT_SUBTITLE, itemList.get(i).getLength());
                        record.setAttribute(Constants.ATTR_NAME, itemList.get(i).getName());
                    }
                    items[i] = record;
                }

                if (config.getHostname() == null || "".equals(config.getHostname().trim())) {
                    EditorSC.compulsoryConfigFieldWarn(EditorClientConfiguration.Constants.HOSTNAME,
                            EditorSC.ConfigFieldType.STRING, lang);
                }
                getView().onAddImages(DigitalObjectModel.PAGE.getValue(), items, config.getHostname(), false,
                        false);

            }

            if (!"icons/16/structure.png"
                    .equals(leftPresenter.getView().getSubelementsGrid().getFolderIcon())) {
                leftPresenter.getView().getSubelementsGrid().setFolderIcon("icons/16/structure.png");
                leftPresenter.getView().getSubelementsGrid().redraw();
            }
            leftPresenter.getView().getSectionStack().getSection(1).setTitle(lang.createSubStructure());
            getView().getPopupPanel().setAutoHideEnabled(true);
            getView().getPopupPanel().setWidget(null);
            getView().getPopupPanel().setVisible(false);
            getView().getPopupPanel().hide();
            SetEnabledHotKeysEvent.fire(CreateStructurePresenter.this, true);

            getView().getPagesTabSet().addTabSelectedHandler(new TabSelectedHandler() {

                @Override
                public void onTabSelected(TabSelectedEvent event) {
                    if (event.getTab().getAttributeAsString(Constants.ATTR_TAB_ID)
                            .equals(Constants.SELECTED_PAGES_TAB)) {

                        pages = getView().getTileGrid().getData();
                        setSelectedTreePages();
                        getView().setUndoRedoButtonsDisabled(true);
                        createAtOnceButton.disable();
                        ChangeFocusedTabSetEvent.fire(CreateStructurePresenter.this, null, false);

                    } else {
                        getView().getTileGrid().setData(pages);
                        getView().setUndoRedoButtonsDisabled(false);
                        createAtOnceButton.enable();
                        ChangeFocusedTabSetEvent.fire(CreateStructurePresenter.this, null, true);
                    }
                }
            });
        }

        private void convertItem(ImageItem item, final Progressbar hBar1, final List<ImageItem> itemList) {
            ConvertToJPEG2000Action action = new ConvertToJPEG2000Action(item);
            final DispatchCallback<ConvertToJPEG2000Result> callback = new DispatchCallback<ConvertToJPEG2000Result>() {

                @Override
                public void callback(ConvertToJPEG2000Result result) {
                    done++;
                    if (hBar1 != null) {
                        hBar1.setPercentDone(((100 * (done + 1)) / total));
                    }
                    if (done >= total && !isDone) {
                        synchronized (LOCK) {
                            if (done >= total && !isDone) {
                                endConversion();
                                doTheRest(itemList);
                                isDone = true;
                            }
                        }
                    }
                }

                @Override
                public void callbackError(Throwable t) {
                    // unable to convert images to JPEG 2000 install the libraries bitch!
                    if (!isDone) {
                        synchronized (LOCK) {
                            if (!isDone) {
                                endConversion();
                                doTheRest(itemList);
                                isDone = true;
                            }
                        }
                    }
                }
            };
            dispatcher.execute(action, callback);
        }
    };
    Image loader = new Image("images/loadingAnimation3.gif");
    getView().getPopupPanel().setWidget(loader);
    getView().getPopupPanel().setVisible(true);
    getView().getPopupPanel().center();
    dispatcher.execute(action, callback);
}

From source file:cz.mzk.editor.client.presenter.CreateStructurePresenter.java

License:Open Source License

@Override
public void onAddImages(final TileGrid tileGrid, final Menu menu) {
    MenuItem[] items = menu.getItems();
    if (!CreateStructureView.ID_SEL_ALL.equals(items[3].getAttributeAsObject(CreateStructureView.ID_NAME))) {
        throw new IllegalStateException("Inconsistent gui.");
    }/*from   w  ww .  jav  a2 s .com*/
    items[3].addClickHandler(new com.smartgwt.client.widgets.menu.events.ClickHandler() {

        @Override
        public void onClick(MenuItemClickEvent event) {
            tileGrid.selectAllRecords();
        }
    });
    if (!CreateStructureView.ID_SEL_NONE.equals(items[4].getAttributeAsObject(CreateStructureView.ID_NAME))) {
        throw new IllegalStateException("Inconsistent gui.");
    }
    items[4].addClickHandler(new com.smartgwt.client.widgets.menu.events.ClickHandler() {

        @Override
        public void onClick(MenuItemClickEvent event) {
            tileGrid.deselectAllRecords();
        }
    });
    if (!CreateStructureView.ID_SEL_INV.equals(items[5].getAttributeAsObject(CreateStructureView.ID_NAME))) {
        throw new IllegalStateException("Inconsistent gui.");
    }
    items[5].addClickHandler(new com.smartgwt.client.widgets.menu.events.ClickHandler() {

        @Override
        public void onClick(MenuItemClickEvent event) {
            Record[] selected = tileGrid.getSelection();
            tileGrid.selectAllRecords();
            tileGrid.deselectRecords(selected);
        }
    });
    if (!CreateStructureView.ID_COPY.equals(items[7].getAttributeAsObject(CreateStructureView.ID_NAME))) {
        throw new IllegalStateException("Inconsistent gui.");
    }
    items[7].addClickHandler(new com.smartgwt.client.widgets.menu.events.ClickHandler() {

        @Override
        public void onClick(MenuItemClickEvent event) {
            getView().toClipboard(tileGrid.getSelection());
        }
    });
    if (!CreateStructureView.ID_PASTE.equals(items[8].getAttributeAsObject(CreateStructureView.ID_NAME))) {
        throw new IllegalStateException("Inconsistent gui.");
    }
    items[8].addClickHandler(new com.smartgwt.client.widgets.menu.events.ClickHandler() {

        @Override
        public void onClick(MenuItemClickEvent event) {
            getView().addUndoRedo(getView().getTileGrid().getData(), true, false);
            final Record[] data = getView().fromClipboard();
            final boolean progressbar = data.length > Constants.CLIPBOARD_MAX_WITHOUT_PROGRESSBAR;
            final Progressbar hBar1 = progressbar ? new Progressbar() : null;
            if (progressbar) {
                hBar1.setHeight(24);
                hBar1.setVertical(false);
                hBar1.setPercentDone(0);
                getView().getPopupPanel().setWidget(hBar1);
                getView().getPopupPanel().setVisible(true);
                getView().getPopupPanel().center();
                alreadyDone = 0;
                Timer timer = new Timer() {

                    @Override
                    public void run() {
                        hBar1.setPercentDone(((100 * (alreadyDone + 1)) / data.length));
                        tileGrid.addData(getView().deepCopyScanRecord(data[alreadyDone]));//((ScanRecord) data[alreadyDone]).deepCopy());
                        if (++alreadyDone != data.length) {
                            schedule(15);
                        } else {
                            getView().getPopupPanel().setVisible(false);
                            getView().getPopupPanel().hide();
                        }
                    }
                };
                timer.schedule(40);
            } else {
                for (int i = 0; i < data.length; i++) {
                    tileGrid.addData(getView().deepCopyScanRecord(data[i]));//((ScanRecord) data[i]).deepCopy());
                }
            }
        }
    });
    if (!CreateStructureView.ID_DELETE.equals(items[9].getAttributeAsObject(CreateStructureView.ID_NAME))) {
        throw new IllegalStateException("Inconsistent gui.");
    }

    items[9].addClickHandler(new com.smartgwt.client.widgets.menu.events.ClickHandler() {

        @Override
        public void onClick(MenuItemClickEvent event) {
            getView().addUndoRedo(getView().getTileGrid().getData(), true, false);

            if (getView().isChosenSelectedPagesTab()) {
                Map<String, Integer> recordIdAndItsNewValue = new HashMap<String, Integer>();
                for (Record recToDel : tileGrid.getSelection()) {
                    recordIdAndItsNewValue.put(recToDel.getAttribute(Constants.ATTR_ID), 0);
                }
                getEventBus().fireEvent(new ChangeStructureTreeItemEvent(
                        STRUCTURE_TREE_ITEM_ACTION.DELETE_RECORD, recordIdAndItsNewValue));
            }
            tileGrid.removeSelectedData();
        }
    });

    if (!leftPresenter.getSequentialCreateLayout().hasCreateButtonAClickHandler()) {
        leftPresenter.getSequentialCreateLayout().getCreateButton().addClickHandler(new ClickHandler() {

            @Override
            public void onClick(ClickEvent event) {
                String message = leftPresenter.getSequentialCreateLayout().verify();
                if (message == null) {
                    addNewStructure();
                } else {
                    SC.warn(message);
                }
            }
        });
        leftPresenter.getSequentialCreateLayout().setCreateButtonHasAClickHandler();
    }
}

From source file:cz.mzk.editor.client.presenter.HomePresenter.java

License:Open Source License

@Override
protected void onBind() {
    super.onBind();
    checkAvailability();/*from   ww w.j  ava2 s .  c  o m*/
    getView().getCheckAvailability().addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            getView().setLoading();
            Timer timer = new Timer() {

                @Override
                public void run() {
                    checkAvailability();
                }
            };
            timer.schedule(100);
        }
    });
    getView().getOpen().addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            evaluateUuid();
        }
    });
    getView().getUuid().addKeyPressHandler(new KeyPressHandler() {

        @Override
        public void onKeyPress(KeyPressEvent event) {
            if (event.getKeyName().equals("Enter") && !getView().getOpen().getDisabled()) {
                evaluateUuid();
            }
        }
    });
    getView().getUuidItem().addChangedHandler(new ChangedHandler() {

        @Override
        public void onChanged(ChangedEvent event) {
            String text = (String) event.getValue();
            if (text != null && !"".equals(text)) {
                getView().getOpen().setDisabled(false);
            } else {
                getView().getOpen().setDisabled(true);
            }
        }
    });

    dispatcher.execute(new HasUserRightsAction(new EDITOR_RIGHTS[] { EDITOR_RIGHTS.LONG_RUNNING_PROCESS }),
            new DispatchCallback<HasUserRightsResult>() {

                @Override
                public void callback(HasUserRightsResult result) {
                    if (result.getOk()[0]) {
                        getView().showSheduler();
                        getView().getScheduler().addClickHandler(new ClickHandler() {

                            @Override
                            public void onClick(ClickEvent event) {
                                new SchedulerWindow(getEventBus(), lang, dispatcher, messageBus);

                            }
                        });
                    }
                }
            });
}

From source file:cz.mzk.editor.client.presenter.ModifyPresenter.java

License:Open Source License

@Override
public void onAddDigitalObject(final TileGrid tileGrid, final Menu menu) {
    MenuItem[] items = menu.getItems();
    if (!ModifyView.ID_EDIT.equals(items[0].getAttributeAsObject(ModifyView.ID_NAME))) {
        throw new IllegalStateException("Inconsistent gui.");
    }//from w  w  w  .  ja  v  a 2 s .  co  m
    items[0].addClickHandler(new com.smartgwt.client.widgets.menu.events.ClickHandler() {

        @Override
        public void onClick(MenuItemClickEvent event) {
            String uuidToEdit = tileGrid.getSelection()[0].getAttribute(Constants.ATTR_UUID);
            placeManager.revealRelativePlace(new PlaceRequest.Builder().nameToken(NameTokens.MODIFY)
                    .with(Constants.URL_PARAM_UUID, uuidToEdit).build());
        }
    });
    if (!ModifyView.ID_SEL_ALL.equals(items[2].getAttributeAsObject(ModifyView.ID_NAME))) {
        throw new IllegalStateException("Inconsistent gui.");
    }
    items[2].addClickHandler(new com.smartgwt.client.widgets.menu.events.ClickHandler() {

        @Override
        public void onClick(MenuItemClickEvent event) {
            tileGrid.selectAllRecords();
        }
    });
    if (!ModifyView.ID_SEL_NONE.equals(items[3].getAttributeAsObject(ModifyView.ID_NAME))) {
        throw new IllegalStateException("Inconsistent gui.");
    }
    items[3].addClickHandler(new com.smartgwt.client.widgets.menu.events.ClickHandler() {

        @Override
        public void onClick(MenuItemClickEvent event) {
            tileGrid.deselectAllRecords();
        }
    });
    if (!ModifyView.ID_SEL_INV.equals(items[4].getAttributeAsObject(ModifyView.ID_NAME))) {
        throw new IllegalStateException("Inconsistent gui.");
    }
    items[4].addClickHandler(new com.smartgwt.client.widgets.menu.events.ClickHandler() {

        @Override
        public void onClick(MenuItemClickEvent event) {
            Record[] selected = tileGrid.getSelection();
            tileGrid.selectAllRecords();
            tileGrid.deselectRecords(selected);
        }
    });
    if (!ModifyView.ID_COPY.equals(items[6].getAttributeAsObject(ModifyView.ID_NAME))) {
        throw new IllegalStateException("Inconsistent gui.");
    }
    items[6].addClickHandler(new com.smartgwt.client.widgets.menu.events.ClickHandler() {

        @Override
        public void onClick(MenuItemClickEvent event) {
            getView().toClipboard(tileGrid.getSelection());
        }
    });
    if (!ModifyView.ID_PASTE.equals(items[7].getAttributeAsObject(ModifyView.ID_NAME))) {
        throw new IllegalStateException("Inconsistent gui.");
    }
    items[7].addClickHandler(new com.smartgwt.client.widgets.menu.events.ClickHandler() {

        @Override
        public void onClick(MenuItemClickEvent event) {
            final Record[] data = getView().fromClipboard();
            final boolean progressbar = data.length > Constants.CLIPBOARD_MAX_WITHOUT_PROGRESSBAR;
            final Progressbar hBar1 = progressbar ? new Progressbar() : null;
            if (progressbar) {
                hBar1.setHeight(24);
                hBar1.setVertical(false);
                hBar1.setPercentDone(0);
                getView().getPopupPanel().setWidget(hBar1);
                getView().getPopupPanel().setVisible(true);
                getView().getPopupPanel().center();
                done = 0;
                Timer timer = new Timer() {

                    @Override
                    public void run() {
                        hBar1.setPercentDone(((100 * (done + 1)) / data.length));
                        tileGrid.addData(((ContainerRecord) data[done]).deepCopy());
                        if (++done != data.length) {
                            schedule(15);
                        } else {
                            getView().getPopupPanel().setVisible(false);
                            getView().getPopupPanel().hide();
                        }
                    }
                };
                timer.schedule(40);
            } else {
                for (int i = 0; i < data.length; i++) {
                    tileGrid.addData(((ContainerRecord) data[i]).deepCopy());
                }
            }
        }
    });
    if (!ModifyView.ID_DELETE.equals(items[8].getAttributeAsObject(ModifyView.ID_NAME))) {
        throw new IllegalStateException("Inconsistent gui.");
    }

    items[8].addClickHandler(new com.smartgwt.client.widgets.menu.events.ClickHandler() {

        @Override
        public void onClick(MenuItemClickEvent event) {
            tileGrid.removeSelectedData();
        }
    });
    items[9].addClickHandler(new com.smartgwt.client.widgets.menu.events.ClickHandler() {

        @Override
        public void onClick(MenuItemClickEvent event) {
            if (tileGrid.getSelection().length > 1) {
                SC.warn(lang.deleteOne());
            } else {
                removeDigitalObject(tileGrid.getSelection()[0].getAttribute(Constants.ATTR_UUID));
            }
        }
    });
}

From source file:cz.mzk.editor.client.view.ModifyView.java

License:Open Source License

@Override
public void addDigitalObject(final String uuid, DigitalObjectDetail detail, boolean refresh,
        boolean storedDigitalObject) {
    final DublinCore dc = detail.getDc();
    final ModsCollectionClient mods = detail.getMods();
    String foxmlString = detail.getFoxmlString();
    String ocr = detail.getOcr();
    DigitalObjectModel model = detail.getModel();

    final EditorTabSet topTabSet = new EditorTabSet();
    topTabSet.setModel(model);/*from w ww . j a v a 2  s. c o  m*/
    topTabSet.setTabBarPosition(Side.TOP);
    topTabSet.setWidth100();
    topTabSet.setHeight100();
    topTabSet.setAnimateTabScrolling(true);
    topTabSet.setShowPaneContainerEdges(false);
    topTabSet.setPdf(detail.isPdf());
    int insertPosition = -1;
    topTabSet.setStoredDigitalObject(storedDigitalObject);

    topTabSet.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            isSecondFocused = (topTabSet == topTabSet2);
            changeFocus();
        }
    });

    if (refresh) {
        EditorTabSet toDelete = openedObjectsTabsets.get(uuid);
        if (toDelete != null) {
            insertPosition = layout.getMemberNumber(toDelete);
            layout.removeMember(toDelete);
            removeTuple(toDelete);
            toDelete.destroy();
        } else {
            refresh = false;
        }
    }
    makeTuple(uuid, topTabSet);
    topTabSet.setLockInfo(detail.getLockInfo());

    List<DigitalObjectModel> models = NamedGraphModel.getChildren(model);
    List<Tab> containerTabs = new ArrayList<Tab>();
    if (models != null) { // has any containers (if not, it is a page)
        Map<String, String> labels = new HashMap<String, String>();
        labels.put(DigitalObjectModel.ARTICLE.getValue(), lang.article());
        labels.put(DigitalObjectModel.INTERNALPART.getValue(), lang.internalparts());
        labels.put(DigitalObjectModel.MONOGRAPHUNIT.getValue(), lang.monographunits());
        labels.put(DigitalObjectModel.PERIODICALITEM.getValue(), lang.periodicalitems());
        labels.put(DigitalObjectModel.PERIODICALVOLUME.getValue(), lang.periodicalvolumes());
        labels.put(DigitalObjectModel.SOUNDRECORDING.getValue(), lang.soundrecording());
        labels.put(DigitalObjectModel.SOUND_UNIT.getValue(), lang.soundUnit());
        labels.put(DigitalObjectModel.TRACK.getValue(), lang.track());
        int i = 0;
        for (DigitalObjectModel md : models) {
            Tab containerTab = null;
            if (md.equals(DigitalObjectModel.PAGE)) {
                containerTab = new Tab(lang.pages(), "pieces/16/pawn_red.png");
                containerTab.setWidth(lang.pages().length() * 6 + 35);
            } else {
                containerTab = new Tab(labels.get(md.getValue()),
                        "pieces/16/cubes_" + (i == 0 ? "green" : i == 1 ? "blue" : "yellow") + ".png");
                containerTab.setWidth(((labels.get(md.getValue())).length() * 6) + 30);
            }
            containerTab.setAttribute(TAB_INITIALIZED, topTabSet.isStoredDigitalObject());
            containerTab.setAttribute(ID_MODEL, md.getValue());
            containerTabs.add(containerTab);
            i++;
        }
        topTabSet.setItemTab(containerTabs);
    }

    Map<String, String> labelsSingular = new HashMap<String, String>();
    labelsSingular.put(DigitalObjectModel.INTERNALPART.getValue(), lang.internalpart());
    labelsSingular.put(DigitalObjectModel.MONOGRAPH.getValue(), lang.monograph());
    labelsSingular.put(DigitalObjectModel.MONOGRAPHUNIT.getValue(), lang.monographunit());
    labelsSingular.put(DigitalObjectModel.PAGE.getValue(), lang.page());
    labelsSingular.put(DigitalObjectModel.PERIODICAL.getValue(), lang.periodical());
    labelsSingular.put(DigitalObjectModel.PERIODICALITEM.getValue(), lang.periodicalitem());
    labelsSingular.put(DigitalObjectModel.PERIODICALVOLUME.getValue(), lang.periodicalvolume());
    labelsSingular.put(DigitalObjectModel.ARTICLE.getValue(), lang.article());
    labelsSingular.put(DigitalObjectModel.MANUSCRIPT.getValue(), lang.manuscript());
    labelsSingular.put(DigitalObjectModel.ARCHIVE.getValue(), lang.archive());
    labelsSingular.put(DigitalObjectModel.MAP.getValue(), lang.map());
    labelsSingular.put(DigitalObjectModel.SUPPLEMENT.getValue(), lang.supplement());
    labelsSingular.put(DigitalObjectModel.GRAPHIC.getValue(), lang.graphic());
    labelsSingular.put(DigitalObjectModel.SOUNDRECORDING.getValue(), lang.soundrecording());
    labelsSingular.put(DigitalObjectModel.SOUND_UNIT.getValue(), lang.soundUnit());
    labelsSingular.put(DigitalObjectModel.TRACK.getValue(), lang.track());
    String previewPID = DigitalObjectModel.PAGE.equals(model) ? uuid : detail.getFirstPageURL();
    topTabSet.setModsCollection(mods);
    topTabSet.setDc(dc);
    // grr, defensive
    String pageType = (DigitalObjectModel.PAGE.equals(model) && mods != null && mods.getMods() != null
            && mods.getMods().size() > 0 && mods.getMods().get(0) != null
            && mods.getMods().get(0).getPart() != null && mods.getMods().get(0).getPart().size() > 0
            && mods.getMods().get(0).getPart().get(0) != null
            && mods.getMods().get(0).getPart().get(0).getType() != null
            && !"".equals(mods.getMods().get(0).getPart().get(0).getType().trim()))
                    ? mods.getMods().get(0).getPart().get(0).getType()
                    : null;
    final InfoTab infoTab = new InfoTab("Info", "pieces/16/cubes_all.png", lang, detail,
            labelsSingular.get(model.getValue()), pageType, previewPID) {

        @Override
        protected void getCurrentLockInfo() {
            getUiHandlers().getLockDigitalObjectInformation(topTabSet, false);
        }
    };
    topTabSet.setInfoTab(infoTab);
    infoTab.getQuickEdit().addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            showBasicModsWindow(topTabSet);
        }
    });

    final Tab dublinTab = new DCTab("DC", "pieces/16/piece_green.png");
    dublinTab.setAttribute(TAB_INITIALIZED, topTabSet.isStoredDigitalObject());
    dublinTab.setAttribute(ID_TAB, ID_DC);
    topTabSet.setDcTab((DCTab) dublinTab);

    final Tab moTab = new Tab("MODS", "pieces/16/piece_blue.png");
    moTab.setAttribute(TAB_INITIALIZED, topTabSet.isStoredDigitalObject());
    moTab.setAttribute(ID_TAB, ID_MODS);
    topTabSet.setModsTab(moTab);

    final Tab descriptionTab = new Tab(lang.description(), "pieces/16/pieces.png");
    descriptionTab.setAttribute(TAB_INITIALIZED, false);
    descriptionTab.setAttribute(ID_TAB, ID_DESC);
    descriptionTab.setWidth(100);

    Tab thumbTab = null;
    boolean picture = model.equals(DigitalObjectModel.PAGE);
    Tab ocTab = picture ? new Tab("OCR", "pieces/16/pawn_white.png") : null;

    Tab fullTab = null;
    if (picture) {
        DynamicForm form = new DynamicForm();
        form.setWidth100();
        form.setHeight100();
        TextAreaItem ocrItem = new TextAreaItem();
        ocrItem.setWidth("600");
        ocrItem.setHeight("*");
        ocrItem.setShowTitle(false);
        ocrItem.setValue(ocr != null ? ocr : "");
        topTabSet.setOriginalOcrContent(ocr != null ? ocr : "");
        form.setItems(ocrItem);
        ocTab.setPane(form);
        topTabSet.setOcrContent(ocrItem);

        thumbTab = new Tab(lang.thumbnail(), "pieces/16/pawn_yellow.png");
        thumbTab.setWidth((lang.thumbnail().length() * 6) + 30);
        final Image full2 = new Image(
                Constants.SERVLET_IMAGES_PREFIX + Constants.SERVLET_THUMBNAIL_PREFIX + "/" + uuid);
        final Img image = new Img(Constants.SERVLET_THUMBNAIL_PREFIX + "/" + uuid, full2.getWidth(),
                full2.getHeight());
        image.setAnimateTime(500);
        image.addClickHandler(new ClickHandler() {

            private boolean turn = false;

            @Override
            public void onClick(ClickEvent event) {
                if (turn) {
                    image.animateRect(5, 5, full2.getWidth(), full2.getHeight());
                } else {
                    image.animateRect(5, 5, full2.getWidth() * 2, full2.getHeight() * 2);
                }
                turn = !turn;
            }
        });
        thumbTab.setPane(image);
        fullTab = new Tab(lang.fullImg(), "pieces/16/pawn_yellow.png");
        fullTab.setWidth((lang.fullImg().length() * 6) + 30);
        fullTab.setAttribute(ID_TAB, ID_FULL);
    }

    Tab foxmlTab = null;
    boolean fox = foxmlString != null && !"".equals(foxmlString);
    if (fox) {
        foxmlTab = new Tab("FOXML", "pieces/16/cube_frame.png");
        HTMLFlow l = new HTMLFlow("<code>" + foxmlString + "</code>");
        l.setCanSelectText(true);
        foxmlTab.setPane(l);
    }

    List<Tab> tabList = new ArrayList<Tab>();
    tabList.add(infoTab);
    if (containerTabs != null && containerTabs.size() > 0)
        tabList.addAll(containerTabs);
    tabList.addAll(Arrays.asList(dublinTab, moTab, descriptionTab));
    if (picture) {
        tabList.add(ocTab);
        tabList.add(thumbTab);
        tabList.add(fullTab);
    }
    if (fox)
        tabList.add(foxmlTab);

    topTabSet.setTabs(tabList.toArray(new Tab[] {}));

    topTabSet.addTabSelectedHandler(new TabSelectedHandler() {

        @Override
        public void onTabSelected(final TabSelectedEvent event) {
            isSecondFocused = topTabSet == topTabSet2;
            changeFocus();
            // TODO: string(ID_MODS) -> int
            if (ID_MODS.equals(event.getTab().getAttribute(ID_TAB)) && event.getTab().getPane() == null) {
                final ModalWindow mw = new ModalWindow(topTabSet);
                mw.setLoadingIcon("loadingAnimation.gif");
                mw.show(true);
                Timer timer = new Timer() {

                    @Override
                    public void run() {
                        ModsTab t = new ModsTab(1, mods);
                        VLayout modsLayout = t.getModsLayout();
                        topTabSet.setModsTab(t);
                        TabSet ts = event.getTab().getTabSet();
                        ts.setTabPane(event.getTab().getID(), modsLayout);
                        t.setAttribute(TAB_INITIALIZED, true);
                        mw.hide();
                    }
                };
                timer.schedule(25);
            } else if (ID_DC.equals(event.getTab().getAttribute(ID_TAB)) && event.getTab().getPane() == null) {
                final ModalWindow mw = new ModalWindow(topTabSet);
                mw.setLoadingIcon("loadingAnimation.gif");
                mw.show(true);
                Timer timer = new Timer() {

                    @Override
                    public void run() {
                        DCTab t = new DCTab(dc);
                        topTabSet.setDcTab(t);
                        TabSet ts = event.getTab().getTabSet();
                        ts.setTabPane(event.getTab().getID(), t.getPane());
                        t.setAttribute(TAB_INITIALIZED, true);
                        mw.hide();
                    }
                };
                timer.schedule(25);
            } else if (event.getTab().getAttribute(ID_MODEL) != null && event.getTab().getPane() == null) {
                final ModalWindow mw = new ModalWindow(topTabSet);
                mw.setLoadingIcon("loadingAnimation.gif");
                mw.show(true);
                Timer timer = new Timer() {

                    @Override
                    public void run() {
                        EditorTabSet tabSet = (EditorTabSet) event.getTab().getTabSet();
                        if (!tabSet.isStoredDigitalObject()) {
                            DigitalObjectModel selectedTabModel = DigitalObjectModel
                                    .parseString(event.getTab().getAttribute(ID_MODEL));
                            if (selectedTabModel != DigitalObjectModel.PAGE || !tabSet.isPdf()) {
                                getUiHandlers().getStream(uuid, selectedTabModel, tabSet);
                            } else {
                                event.getTab().setPane(new PdfViewerPane(uuid, true));
                            }
                        }
                        mw.hide();
                    }
                };
                timer.schedule(25);
            } else if (ID_FULL.equals(event.getTab().getAttribute(ID_TAB))
                    && event.getTab().getPane() == null) {
                final ModalWindow mw = new ModalWindow(topTabSet);
                mw.setLoadingIcon("loadingAnimation.gif");
                mw.show(true);
                ImagePreloader.load(Constants.SERVLET_IMAGES_PREFIX + Constants.SERVLET_FULL_PREFIX + '/' + uuid
                        + "?" + Constants.URL_PARAM_NOT_SCALE + "=true", new ImageLoadHandler() {

                            @Override
                            public void imageLoaded(final ImageLoadEvent event1) {
                                if (!event1.isLoadFailed()) {
                                    final int width = event1.getDimensions().getWidth();
                                    final int height = event1.getDimensions().getHeight();
                                    Timer timer = new Timer() {

                                        @Override
                                        public void run() {
                                            final Img full = new Img(
                                                    Constants.SERVLET_FULL_PREFIX + '/' + uuid + "?"
                                                            + Constants.URL_PARAM_NOT_SCALE + "=true",
                                                    width, height);
                                            full.draw();
                                            full.addClickHandler(new ClickHandler() {

                                                private boolean turn = true;

                                                @Override
                                                public void onClick(final ClickEvent event2) {
                                                    if (turn) {
                                                        full.animateRect(5, 5, width / 2, height / 2);
                                                    } else {
                                                        full.animateRect(5, 5, width, height);
                                                    }
                                                    turn = !turn;
                                                }
                                            });
                                            TabSet ts = event.getTab().getTabSet();
                                            ts.setTabPane(event.getTab().getID(), full);
                                            mw.hide();
                                        }
                                    };
                                    timer.schedule(20);
                                }
                            }
                        });

            } else if (ID_DESC.equals(event.getTab().getAttribute(ID_TAB))
                    && event.getTab().getPane() == null) {
                getUiHandlers().getDescription(uuid, event.getTab().getTabSet(), event.getTab().getID());
                event.getTab().setAttribute(TAB_INITIALIZED, true);
            }
        }
    });

    // MENU
    final Menu menu = getMenu(topTabSet, dc, mods, model);
    IMenuButton menuButton = new IMenuButton("Menu", menu);
    menuButton.setWidth(60);
    menuButton.setHeight(16);
    menuButton.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            IMenuButton eventButton = (IMenuButton) event.getSource();

            EditorTabSet ts = null;
            for (MenuItem item : eventButton.getMenu().getItems()) {
                if (ts == null) {
                    ts = (EditorTabSet) item.getAttributeAsObject(ID_TABSET);
                }

                if (item.getAttributeAsObject(ID_MENU_ITEM) instanceof ATTR_MENU_ITEM) {

                    ATTR_MENU_ITEM attrItem = (ATTR_MENU_ITEM) item.getAttributeAsObject(ID_MENU_ITEM);

                    String lockOwner = ts.getLockInfo().getLockOwner();
                    if (lockOwner != null) {

                        if ("".equals(lockOwner)) {
                            if (ATTR_MENU_ITEM.LOCK == attrItem) {
                                item.setTitle(lang.updateLock());
                            } else
                                item.setEnabled(true);
                        } else {
                            if (ATTR_MENU_ITEM.LOCK == attrItem) {
                                item.setTitle(lang.lockItem());
                            }
                            item.setEnabled(false);
                        }

                    } else {
                        if (ATTR_MENU_ITEM.UNLOCK == attrItem) {
                            item.setEnabled(false);
                        } else {
                            if (ATTR_MENU_ITEM.LOCK == attrItem) {
                                item.setTitle(lang.lockItem());
                            }
                            item.setEnabled(true);
                        }
                    }
                    if (ATTR_MENU_ITEM.REFRESH == attrItem) {
                        if (ts.isStoredDigitalObject()) {
                            item.setEnabled(false);
                        } else
                            item.setEnabled(true);
                    }
                }
            }
            eventButton.getMenu().redraw();
        }
    });

    final ImgButton closeButton = new ImgButton();
    closeButton.setSrc("[SKIN]headerIcons/close.png");
    closeButton.setSize(16);
    // closeButton.setShowFocused(false);
    closeButton.setShowRollOver(true);
    closeButton.setCanHover(true);
    closeButton.setShowDownIcon(false);
    closeButton.setShowDown(false);
    closeButton.setHoverOpacity(75);
    closeButton.setHoverStyle("interactImageHover");
    closeButton.addHoverHandler(new HoverHandler() {

        @Override
        public void onHover(HoverEvent event) {
            closeButton.setPrompt(lang.closeHoover() + " Ctrl+Alt+C");
        }
    });

    closeButton.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            close(topTabSet);
        }
    });
    topTabSet.setTabBarControls(TabBarControls.TAB_SCROLLER, TabBarControls.TAB_PICKER, menuButton,
            closeButton);
    topTabSet.setAnimateTabScrolling(true);

    layout.setMembersMargin(15);
    if (!refresh) {
        if (isSecondFocused || topTabSet1 == null) {

            if (topTabSet1 != null) {
                EditorTabSet toDelete = topTabSet1;
                layout.removeMember(toDelete);
                removeTuple(toDelete);
                toDelete.destroy();
            }
            topTabSet1 = topTabSet;
            layout.addMember(topTabSet1, 0);
        } else {
            if (topTabSet2 != null) {
                EditorTabSet toDelete = topTabSet2;
                layout.removeMember(toDelete);
                removeTuple(toDelete);
                toDelete.destroy();
            }
            topTabSet2 = topTabSet;
            layout.addMember(topTabSet2, 1);
        }
        isSecondFocused = !isSecondFocused;
        changeFocus();
    } else if (insertPosition != -1) {
        if (insertPosition == 0) {
            topTabSet1 = topTabSet;
            layout.addMember(topTabSet1, 0);
        } else if (insertPosition == 1) {
            topTabSet2 = topTabSet;
            layout.addMember(topTabSet2, 1);
        }
    }
    if (storedDigitalObject) {
        for (List<DigitalObjectDetail> childrenDetails : detail.getAllItems()) {
            addAllStreams(childrenDetails, uuid);
        }
    }
    layout.redraw();
    getUiHandlers().onAddDigitalObject(uuid, closeButton);
}

From source file:cz.mzk.editor.client.view.other.UserStatisticsLayout.java

License:Open Source License

private void showChartAndTable(final String[] intervalsOrNames, final Integer[] values,
        final HashMap<String, Integer[]> userValues, final boolean showCharts) {

    final Runnable runnable = new Runnable() {

        @Override/*from   w ww .  j  av  a  2 s  . c o m*/
        public void run() {

            if (showCharts) {
                int pieIndex = chartsLayout.getMemberNumber(htmlPieFlow);
                htmlPieFlow.removeFromParent();
                if (pieIndex < 0) {
                    chartsLayout.addMember(htmlPieFlow);
                } else {
                    chartsLayout.addMember(htmlPieFlow, pieIndex);
                }

                int index = chartsLayout.getMemberNumber(htmlLineFlow);
                htmlLineFlow.removeFromParent();
                if (index < 0) {
                    chartsLayout.addMember(htmlLineFlow);
                } else {
                    chartsLayout.addMember(htmlLineFlow, index);
                }
            } else {
                removeMember(chartsLayout);
            }

            setWidth100();

            if (userValues == null) {
                if (showCharts) {
                    ChartUtils.drawPieChart(JSOHelper.convertToJavaScriptArray(intervalsOrNames),
                            JSOHelper.convertToJavaScriptArray(values), values.length,
                            PIE_CHART_NESTED_DIV_ID + userId,
                            (int) (UserStatisticsLayout.this.getWidth() * PIE_SIZE_CONVERSION));

                    ChartUtils.drawLineChart(JSOHelper.convertToJavaScriptArray(intervalsOrNames),
                            JSOHelper.convertToJavaScriptArray(values), values.length,
                            LINE_CHART_NESTED_DIV_ID + userId,
                            (int) (UserStatisticsLayout.this.getWidth() * LINE_BAR_SIZE_CONVERSION));
                } else {
                    setHeight(100);
                    redraw();
                }
                HashMap<String, Integer[]> userVal = new HashMap<String, Integer[]>();
                userVal.put(userName, values);
                if (table == null) {
                    table = new TableListGrid(intervalsOrNames, userVal);
                    addMember(table);
                }
            } else {
                drawUnifyingChartsAndTables(intervalsOrNames, userValues, showCharts);
            }
        }
    };

    VisualizationUtils.loadVisualizationApi(runnable, PieChart.PACKAGE);

    Window.addResizeHandler(new ResizeHandler() {

        @Override
        public void onResize(ResizeEvent event) {
            com.google.gwt.user.client.Timer timer = new com.google.gwt.user.client.Timer() {

                @Override
                public void run() {
                    VisualizationUtils.loadVisualizationApi(runnable,
                            com.google.gwt.visualization.client.visualizations.PieChart.PACKAGE);
                }
            };
            timer.schedule(1);
        }
    });
}

From source file:cz.mzk.editor.client.view.other.UserStatisticsLayout.java

License:Open Source License

private void drawUnifyingChartsAndTables(final String[] intervals, final HashMap<String, Integer[]> userValues,
        final boolean showCharts) {

    final String[] allNames = new String[userValues.size()];
    final Integer[] allValues = new Integer[userValues.size()];

    int index = 0;
    for (String user : userValues.keySet()) {

        allNames[index] = user;/*from   ww w  .  ja va  2 s  . co m*/

        int sumCount = 0;
        for (int value : userValues.get(user)) {
            sumCount += value;
        }
        allValues[index++] = sumCount;
    }

    if (showCharts) {
        setHeight(userValues.size() * 30 + 280);
    } else {
        setHeight(userValues.size() * 25 + 30);
        redraw();
    }

    Timer timer = new Timer() {

        @Override
        public void run() {
            if (showCharts) {
                ChartUtils.drawPieChart(JSOHelper.convertToJavaScriptArray(allNames),
                        JSOHelper.convertToJavaScriptArray(allValues), allNames.length,
                        PIE_CHART_NESTED_DIV_ID + userId,
                        (int) (UserStatisticsLayout.this.getWidth() * PIE_SIZE_CONVERSION));

                ChartUtils.drawBarChart(JSOHelper.convertToJavaScriptArray(allNames),
                        JSOHelper.convertToJavaScriptArray(allValues), allNames.length,
                        LINE_CHART_NESTED_DIV_ID + userId,
                        (int) (UserStatisticsLayout.this.getWidth() * LINE_BAR_SIZE_CONVERSION));
            }
            if (table == null) {
                table = new TableListGrid(intervals, userValues);
                addMember(table);
            }
        }
    };
    timer.schedule(100);

}

From source file:cz.mzk.editor.client.view.window.UniversalWindow.java

License:Open Source License

public UniversalWindow(int height, int width, String title, EventBus eventBus, final int milisToWait) {
    this.eventBus = eventBus;
    setMembersMargin(10);// w ww  .  j ava 2  s. c  o m
    setHeight(height);
    setWidth(width);
    setCanDragResize(true);
    setShowEdges(true);
    setTitle(title);
    setShowMinimizeButton(false);
    setIsModal(true);
    setShowModalMask(true);
    addCloseClickHandler(new CloseClickHandler() {

        @Override
        public void onCloseClick(CloseClickEvent event) {
            hide();
        }
    });
    eventBus.addHandler(EscKeyPressedEvent.getType(), new EscKeyPressedHandler() {

        @Override
        public void onEscKeyPressed(final EscKeyPressedEvent event) {
            Timer t = new Timer() {

                @Override
                public void run() {
                    if (UniversalWindow.this != null && UniversalWindow.this.isCreated()
                            && !event.isCancelled()) {
                        UniversalWindow.this.hide();
                        event.cancel();
                    }
                }
            };
            t.schedule(milisToWait);
        }
    });
}