List of usage examples for com.google.gwt.user.client.ui Image addErrorHandler
public HandlerRegistration addErrorHandler(ErrorHandler handler)
From source file:com.eduworks.russel.ds.client.handler.TileHandler.java
License:Apache License
/** * fillTile Renders the tile information in the tile display based on search type, maintaining current selection state * @param callback EventCallback//from w w w . ja v a 2s. c o m */ public void fillTile(final EventCallback callback) { if (this.getSelectState()) ((Label) PageAssembler.elementToWidget(idPrefix + "-objectState", PageAssembler.LABEL)) .setStyleName("cube file active"); else ((Label) PageAssembler.elementToWidget(idPrefix + "-objectState", PageAssembler.LABEL)) .setStyleName("cube file"); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectState", PageAssembler.LABEL)) .addStyleName(AssetExtractor.getFileType(searchRecord.getFilename())); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectRating", PageAssembler.LABEL)) .setText(searchRecord.getRating() + " stars"); long percent = 0; if (searchRecord.getRating() > 0) percent = Math.round(searchRecord.getRating() / 5.0 * 100); if (DOM.getElementById(idPrefix + "-objectRating") != null) PageAssembler.setWidth(DOM.getElementById(idPrefix + "-objectRating"), percent + "%"); Boolean fouo = searchRecord.getFOUO(); if (fouo) { ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlerts", PageAssembler.LABEL)) .setStyleName("status-alert"); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlertsBack", PageAssembler.LABEL)) .setStyleName("status-alert"); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlertText", PageAssembler.LABEL)) .setText("FOUO"); } else { ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlerts", PageAssembler.LABEL)) .setStyleName("status-alert hide"); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlertsBack", PageAssembler.LABEL)) .setStyleName("status-alert hide"); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlertText", PageAssembler.LABEL)).setText(""); } String val = searchRecord.getTitle(); if (val != null && val.trim() != "") ((Label) PageAssembler.elementToWidget(idPrefix + "-objectTitle", PageAssembler.LABEL)).setText(val); else ((Label) PageAssembler.elementToWidget(idPrefix + "-objectTitle", PageAssembler.LABEL)) .setText(searchRecord.getFilename()); if (this.tileType.contains("3DR")) { final String description = searchRecord.getDescription(); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectTitleBack", PageAssembler.LABEL)) .setText(description); //TODO fix this // Retrieve the rest of the ADL 3DR Metadata // Adl3DRApi.getADL3DRobject(searchRecord.getGuid(), new Adl3DRCallback<Adl3DRPacket> () { // @Override // public void onFailure(Throwable caught) { // ((Label)PageAssembler.elementToWidget(idPrefix + "-objectDescription", PageAssembler.LABEL)).setText(description); // callback.onEvent(null); // } // // @Override // public void onSuccess(Adl3DRPacket adlPacket) { // // merge it into the searchRecord and save it for DetailView // ESBPacket moreData = adlPacket; // //TODO figure out what adl packet looks like // //searchRecord.mergePackets(moreData); // // if (!Browser.isIE()) // DOM.getElementById(idPrefix + "-objectDescription").setAttribute("style", "background-image:url(" + searchRecord.getThumbnail() + ");"); // else { // Image thumb = new Image(); // thumb.addErrorHandler(new ErrorHandler() { // @Override // public void onError(ErrorEvent event) { // ((Label)PageAssembler.elementToWidget(idPrefix + "-objectDescription", PageAssembler.LABEL)).setText(description); // } // }); // thumb.setUrl(searchRecord.getThumbnail()); // RootPanel.get(idPrefix + "-objectDescription").add(thumb); // } // callback.onEvent(null); // // } // }); //TODO FIX THIS // Adl3DRApi.getADL3DRobjectReview(searchRecord.getGuid(), new Adl3DRCallback<Adl3DRPacket> () { // @Override // public void onFailure(Throwable caught) { //// ((Label)PageAssembler.elementToWidget(idPrefix + "-objectDescription", PageAssembler.LABEL)).setText(description); // callback.onEvent(null); // } // // @Override // public void onSuccess(Adl3DRPacket adlPacket) { //// // merge it into the searchRecord and save it for DetailView // //TODO convert adl packet to FileRecord //// searchRecord.put("feedback", adlPacket); // // FileRecord fr = new FileRecord(); // ((Label)PageAssembler.elementToWidget(idPrefix + "-objectRating", PageAssembler.LABEL)).setText(fr.getRating() + " stars"); // long percent = 0; // if (fr.getRating()>0) // percent = Math.round(fr.getRating()/5.0 * 100); // if (Document.get().getElementById(idPrefix + "-objectRating")!=null) // Document.get().getElementById(idPrefix + "-objectRating").setAttribute("style", "width:"+percent+"%"); // if (fr.getComments().size()>0) { // ((Label)PageAssembler.elementToWidget(idPrefix + "-objectComments", PageAssembler.LABEL)).setText(fr.getComments().size()+""); // ((Label)PageAssembler.elementToWidget(idPrefix + "-objectComments", PageAssembler.LABEL)).removeStyleName("hidden"); // } else // ((Label)PageAssembler.elementToWidget(idPrefix + "-objectComments", PageAssembler.LABEL)).addStyleName("hidden"); // callback.onEvent(null); // // } // }); } else { ((Label) PageAssembler.elementToWidget(idPrefix + "-objectRating", PageAssembler.LABEL)) .setText(searchRecord.getRating() + " stars"); percent = 0; if (searchRecord.getRating() > 0) percent = Math.round(searchRecord.getRating() / 5.0 * 100); if (Document.get().getElementById(idPrefix + "-objectRating") != null) Document.get().getElementById(idPrefix + "-objectRating").setAttribute("style", "width:" + percent + "%"); if (searchRecord.getComments().size() > 0) { ((Label) PageAssembler.elementToWidget(idPrefix + "-objectComments", PageAssembler.LABEL)) .setText(searchRecord.getComments().size() + ""); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectComments", PageAssembler.LABEL)) .removeStyleName("hidden"); } else ((Label) PageAssembler.elementToWidget(idPrefix + "-objectComments", PageAssembler.LABEL)) .addStyleName("hidden"); final String description = (searchRecord.getDescription() == "") ? "Click to Edit" : searchRecord.getDescription(); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectTitleBack", PageAssembler.LABEL)) .setText(searchRecord.getFilename() + " -- " + description); ESBApi.getThumbnail(searchRecord.getGuid(), new ESBCallback<ESBPacket>() { @Override public void onFailure(Throwable caught) { ((Label) PageAssembler.elementToWidget(idPrefix + "-objectDescription", PageAssembler.LABEL)) .setText(description); callback.onEvent(null); } @Override public void onSuccess(ESBPacket alfrescoPacket) { if (!Browser.isIE()) DOM.getElementById(idPrefix + "-objectDescription").setAttribute("style", "background-image:url(" + alfrescoPacket.getString("imageURL") + ");"); else { Image thumb = new Image(); thumb.addErrorHandler(new ErrorHandler() { @Override public void onError(ErrorEvent event) { ((Label) PageAssembler.elementToWidget(idPrefix + "-objectDescription", PageAssembler.LABEL)).setText(description); } }); thumb.setUrl(alfrescoPacket.getString("imageURL")); RootPanel.get(idPrefix + "-objectDescription").add(thumb); } callback.onEvent(null); } }); } }
From source file:com.eduworks.russel.ds.client.handler.TileHandler.java
License:Apache License
/** * refreshTile Retrieves the latest information pertaining to the node represented by the tile, maintaining current selection state * @param callback EventCallback//w w w .j a va 2 s .c o m */ public void refreshTile(final EventCallback callback) { if (this.getSelectState()) ((Label) PageAssembler.elementToWidget(idPrefix + "-objectState", PageAssembler.LABEL)) .setStyleName("cube file active"); else ((Label) PageAssembler.elementToWidget(idPrefix + "-objectState", PageAssembler.LABEL)) .setStyleName("cube file"); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectState", PageAssembler.LABEL)) .addStyleName(AssetExtractor.getFileType(searchRecord.getFilename())); if (this.tileType.contains("3DR")) { //TODO Fix this // Adl3DRApi.getADL3DRobjectReview(searchRecord.getGuid(), new Adl3DRCallback<Adl3DRPacket> () { // public void onFailure(Throwable caught) { // callback.onEvent(null); // } // // public void onSuccess(Adl3DRPacket adlPacket) { // // merge it into the searchRecord and save it for DetailView // //TODO more ADL 3DR crap // //searchRecord.put("feedback", adlPacket); // FileRecord fr = new FileRecord(); // ((Label)PageAssembler.elementToWidget(idPrefix + "-objectRating", PageAssembler.LABEL)).setText(fr.getRating() + " stars"); // long percent = 0; // if (fr.getRating()>0) // percent = Math.round(fr.getRating()/5.0 * 100); // if (Document.get().getElementById(idPrefix + "-objectRating")!=null) // Document.get().getElementById(idPrefix + "-objectRating").setAttribute("style", "width:"+percent+"%"); // if (fr.getComments().size()>0) { // ((Label)PageAssembler.elementToWidget(idPrefix + "-objectComments", PageAssembler.LABEL)).setText(fr.getComments().size()+""); // ((Label)PageAssembler.elementToWidget(idPrefix + "-objectComments", PageAssembler.LABEL)).removeStyleName("hidden"); // } else // ((Label)PageAssembler.elementToWidget(idPrefix + "-objectComments", PageAssembler.LABEL)).addStyleName("hidden"); // callback.onEvent(null); // } // }); } else { ESBApi.getRatings(searchRecord.getGuid(), new ESBCallback<ESBPacket>() { @Override public void onFailure(Throwable caught) { //TODO fix error message for ratings // ESBPacket errorPacket = new ESBPacket(AjaxPacket.parseJSON(caught.getMessage())); // if (errorPacket.getHttpStatus()=="404") // missingFileTile(); // else Window.alert(caught.getMessage()); if (callback != null) callback.onEvent(null); } @Override public void onSuccess(ESBPacket ratingRecord) { searchRecord.parseESBPacket(ratingRecord); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectRating", PageAssembler.LABEL)) .setText(searchRecord.getRating() + " stars"); long percent = 0; if (searchRecord.getRating() > 0) percent = Math.round(searchRecord.getRating() / 5.0 * 100); if (DOM.getElementById(idPrefix + "-objectRating") != null) PageAssembler.setWidth(DOM.getElementById(idPrefix + "-objectRating"), percent + "%"); if (callback != null) callback.onEvent(null); ESBApi.getComments(searchRecord.getGuid(), new ESBCallback<ESBPacket>() { @Override public void onSuccess(final ESBPacket commentPacket) { ESBApi.getResourceMetadata(searchRecord.getGuid(), new ESBCallback<ESBPacket>() { @Override public void onSuccess(final ESBPacket ap) { searchRecord.parseESBPacket(ap); Boolean fouo = searchRecord.getFOUO(); if (fouo) { ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlerts", PageAssembler.LABEL)).setStyleName("status-alert"); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlertsBack", PageAssembler.LABEL)).setStyleName("status-alert"); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlertText", PageAssembler.LABEL)).setText("FOUO"); } else { ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlerts", PageAssembler.LABEL)).setStyleName("status-alert hide"); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlertsBack", PageAssembler.LABEL)).setStyleName("status-alert hide"); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlertText", PageAssembler.LABEL)).setText(""); } if (searchRecord.getComments().size() > 0) { ((Label) PageAssembler.elementToWidget(idPrefix + "-objectComments", PageAssembler.LABEL)) .setText(searchRecord.getComments().size() + ""); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectComments", PageAssembler.LABEL)).removeStyleName("hidden"); } else ((Label) PageAssembler.elementToWidget(idPrefix + "-objectComments", PageAssembler.LABEL)).addStyleName("hidden"); String title = searchRecord.getTitle(); if (title != null && title.trim() != "") ((Label) PageAssembler.elementToWidget(idPrefix + "-objectTitle", PageAssembler.LABEL)).setText(title); else ((Label) PageAssembler.elementToWidget(idPrefix + "-objectTitle", PageAssembler.LABEL)).setText(searchRecord.getFilename()); final String description = searchRecord.getDescription(); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectTitleBack", PageAssembler.LABEL)) .setText(searchRecord.getFilename() + " -- " + description); ESBApi.getThumbnail(searchRecord.getGuid(), new ESBCallback<ESBPacket>() { @Override public void onFailure(Throwable caught) { mb.addMetaDataToField(idPrefix + "-objectDescription", description, true); } @Override public void onSuccess(ESBPacket alfrescoPacket) { if (!Browser.isIE()) DOM.getElementById(idPrefix + "-objectDescription") .setAttribute("style", "background-image:url(" + alfrescoPacket.getString("imageURL") + ");"); else { Image thumb = new Image(); thumb.addErrorHandler(new ErrorHandler() { @Override public void onError(ErrorEvent event) { mb.addMetaDataToField(idPrefix + "-objectDescription", description, true); } }); thumb.setUrl(alfrescoPacket.getString("imageURL")); RootPanel.get(idPrefix + "-objectDescription").add(thumb); } } }); } @Override public void onFailure(Throwable caught) { // StatusWindowHandler.createMessage(StatusWindowHandler.getMetadataMessageError(searchRecord.getFilename()), // StatusRecord.ALERT_ERROR); } }); } @Override public void onFailure(Throwable caught) { // StatusWindowHandler.createMessage(StatusWindowHandler.getCommentMessageError(searchRecord.getFilename()), // StatusRecord.ALERT_ERROR); } }); } }); } }
From source file:com.eduworks.russel.ui.client.handler.TileHandler.java
License:Apache License
/** * fillTile Renders the tile information in the tile display based on search type, maintaining current selection state * @param callback EventCallback//from w w w . j a va 2s .com */ public void fillTile(final EventCallback callback) { if (this.getSelectState()) ((Label) PageAssembler.elementToWidget(idPrefix + "-objectState", PageAssembler.LABEL)) .setStyleName("cube file active"); else ((Label) PageAssembler.elementToWidget(idPrefix + "-objectState", PageAssembler.LABEL)) .setStyleName("cube file"); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectState", PageAssembler.LABEL)) .addStyleName(AssetExtractor.getFileType(searchRecord.getFilename())); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectRating", PageAssembler.LABEL)) .setText(searchRecord.getRating() + " stars"); double percent = MathUtil.roundNumber(searchRecord.getRating() / 5.0 * 100, 2); if (DOM.getElementById(idPrefix + "-objectRating") != null) { DOM.getElementById(idPrefix + "-objectRating").setAttribute("style", "width: " + percent + "%"); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectRating", PageAssembler.LABEL)) .setText(searchRecord.getRating() + " stars"); } Boolean fouo = searchRecord.getFOUO(); if (fouo) { ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlerts", PageAssembler.LABEL)) .setStyleName("status-alert"); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlertsBack", PageAssembler.LABEL)) .setStyleName("status-alert"); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlertText", PageAssembler.LABEL)) .setText("FOUO"); } else { ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlerts", PageAssembler.LABEL)) .setStyleName("status-alert hide"); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlertsBack", PageAssembler.LABEL)) .setStyleName("status-alert hide"); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlertText", PageAssembler.LABEL)).setText(""); } String val = searchRecord.getTitle(); if (val != null && val.trim() != "") ((Label) PageAssembler.elementToWidget(idPrefix + "-objectTitle", PageAssembler.LABEL)).setText(val); else ((Label) PageAssembler.elementToWidget(idPrefix + "-objectTitle", PageAssembler.LABEL)) .setText(searchRecord.getFilename()); if (searchRecord.getCommentCount() > 0) { ((Label) PageAssembler.elementToWidget(idPrefix + "-objectComments", PageAssembler.LABEL)) .setText(searchRecord.getCommentCount() + ""); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectComments", PageAssembler.LABEL)) .removeStyleName("hidden"); } else ((Label) PageAssembler.elementToWidget(idPrefix + "-objectComments", PageAssembler.LABEL)) .addStyleName("hidden"); final String description = (searchRecord.getDescription() == "") ? "Click to Edit" : searchRecord.getDescription(); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectTitleBack", PageAssembler.LABEL)) .setText(searchRecord.getFilename() + " -- " + description); if (searchRecord.getThumbnailURL() != "") { if (!Browser.isBadIE()) DOM.getElementById(idPrefix + "-objectDescription").setAttribute("style", "background-image:url(" + searchRecord.getThumbnailURL() + ");"); else { Image thumb = new Image(); thumb.addErrorHandler(new ErrorHandler() { @Override public void onError(ErrorEvent event) { ((Label) PageAssembler.elementToWidget(idPrefix + "-objectDescription", PageAssembler.LABEL)).setText(description); } }); thumb.setUrl(searchRecord.getThumbnailURL()); RootPanel.get(idPrefix + "-objectDescription").add(thumb); } } if (callback != null) callback.onEvent(null); }
From source file:com.eduworks.russel.ui.client.handler.TileHandler.java
License:Apache License
/** * refreshTile Retrieves the latest information pertaining to the node represented by the tile, maintaining current selection state * @param callback EventCallback//from www. ja v a 2 s . c o m */ public void refreshTile(final EventCallback callback) { if (this.getSelectState()) ((Label) PageAssembler.elementToWidget(idPrefix + "-objectState", PageAssembler.LABEL)) .setStyleName("cube file active"); else ((Label) PageAssembler.elementToWidget(idPrefix + "-objectState", PageAssembler.LABEL)) .setStyleName("cube file"); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectState", PageAssembler.LABEL)) .addStyleName(AssetExtractor.getFileType(searchRecord.getFilename())); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectRating", PageAssembler.LABEL)) .setText(searchRecord.getRating() + " stars"); long percent = Math.round(searchRecord.getRating() / 5.0 * 100); if (DOM.getElementById(idPrefix + "-objectRating") != null) DOM.getElementById(idPrefix + "-objectRating").setAttribute("style", "width: " + percent + "%"); RusselApi.getResourceMetadata(searchRecord.getGuid(), false, new ESBCallback<ESBPacket>() { @Override public void onSuccess(final ESBPacket ap) { searchRecord.parseESBPacket(ap); Boolean fouo = searchRecord.getFOUO(); if (fouo) { ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlerts", PageAssembler.LABEL)) .setStyleName("status-alert"); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlertsBack", PageAssembler.LABEL)) .setStyleName("status-alert"); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlertText", PageAssembler.LABEL)) .setText("FOUO"); } else { ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlerts", PageAssembler.LABEL)) .setStyleName("status-alert hide"); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlertsBack", PageAssembler.LABEL)) .setStyleName("status-alert hide"); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectAlertText", PageAssembler.LABEL)) .setText(""); } if (searchRecord.getCommentCount() > 0) { ((Label) PageAssembler.elementToWidget(idPrefix + "-objectComments", PageAssembler.LABEL)) .setText(searchRecord.getCommentCount() + ""); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectComments", PageAssembler.LABEL)) .removeStyleName("hidden"); } else ((Label) PageAssembler.elementToWidget(idPrefix + "-objectComments", PageAssembler.LABEL)) .addStyleName("hidden"); String title = searchRecord.getTitle(); if (title != null && title.trim() != "") ((Label) PageAssembler.elementToWidget(idPrefix + "-objectTitle", PageAssembler.LABEL)) .setText(title); else ((Label) PageAssembler.elementToWidget(idPrefix + "-objectTitle", PageAssembler.LABEL)) .setText(searchRecord.getFilename()); final String description = searchRecord.getDescription(); ((Label) PageAssembler.elementToWidget(idPrefix + "-objectTitleBack", PageAssembler.LABEL)) .setText(searchRecord.getFilename() + " -- " + description); if (searchRecord.getThumbnailURL() != "") { if (!Browser.isBadIE()) DOM.getElementById(idPrefix + "-objectDescription").setAttribute("style", "background-image:url(" + searchRecord.getThumbnailURL() + ");"); else { Image thumb = new Image(); thumb.addErrorHandler(new ErrorHandler() { @Override public void onError(ErrorEvent event) { mb.addMetaDataToField(idPrefix + "-objectDescription", description, true); } }); thumb.setUrl(searchRecord.getThumbnailURL()); RootPanel.get(idPrefix + "-objectDescription").add(thumb); } } } @Override public void onFailure(Throwable caught) { StatusHandler.createMessage(StatusHandler.getMetadataMessageError(searchRecord.getFilename()), StatusRecord.ALERT_ERROR); } }); }
From source file:com.google.appinventor.client.explorer.youngandroid.GalleryPage.java
License:Open Source License
/** * Helper method called by constructor to initialize the author's info * @param container The container that author's info resides *//* w w w . j av a 2s . co m*/ private void initAppAuthor(Panel container) { // Add author's image - not when creating a new app if (editStatus != NEWAPP) { final Image authorAvatar = new Image(); authorAvatar.addStyleName("app-userimage"); authorAvatar.setUrl(gallery.getUserImageURL(app.getDeveloperId())); // If the user has provided a gallery app image, we'll load it. But if not // the error will occur and we'll load default image authorAvatar.addErrorHandler(new ErrorHandler() { public void onError(ErrorEvent event) { authorAvatar.setUrl(GalleryApp.DEFAULTUSERIMAGE); } }); authorAvatar.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { Ode.getInstance().switchToUserProfileView(app.getDeveloperId(), 1 /* 1 for public view */ ); } }); appInfo.add(authorAvatar); } // Add author's name final Label authorName = new Label(); if (editStatus == NEWAPP) { // App doesn't have author info yet, grab current user info final User currentUser = Ode.getInstance().getUser(); authorName.setText(currentUser.getUserName()); } else { authorName.setText(app.getDeveloperName()); authorName.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { Ode.getInstance().switchToUserProfileView(app.getDeveloperId(), 1 /* 1 for public view*/ ); } }); } authorName.addStyleName("app-username"); authorName.addStyleName("app-subtitle"); appInfo.add(authorName); }
From source file:com.google.gwt.examples.ImageExample.java
License:Apache License
public void onModuleLoad() { // Create an image, not yet referencing a URL. We make it final so that we // can manipulate the image object within the ClickHandlers for the buttons. final Image image = new Image(); // Hook up an error handler, so that we can be informed if the image fails // to load./*from ww w. j ava2 s . c o m*/ image.addErrorHandler(new ErrorHandler() { public void onError(ErrorEvent event) { lbl.setText("An error occurred while loading."); } }); // Point the image at a real URL. image.setUrl("http://www.google.com/images/logo.gif"); // When the user clicks this button, we want to clip the image. btn.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { image.setVisibleRect(70, 0, 47, 110); } }); btn.setWidth("120px"); // When the user clicks this button, we want to restore the image to its // unclipped state. btn2.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { image.setUrl("http://www.google.com/images/logo.gif"); } }); btn2.setWidth("120px"); // Add the image, label, and clip/restore buttons to the root panel. VerticalPanel panel = new VerticalPanel(); panel.add(lbl); panel.add(image); HorizontalPanel buttonPanel = new HorizontalPanel(); buttonPanel.add(btn); buttonPanel.add(btn2); panel.add(buttonPanel); RootPanel.get().add(panel); }
From source file:cz.fi.muni.xkremser.editor.client.view.ModifyView.java
License:Open Source License
/** * Sets the tile grid./* w w w . j av a 2 s .com*/ * * @param pages * the pages * @param model * the model * @return the tile grid */ private TileGrid getTileGrid(final boolean pages, final String model) { final TileGrid tileGrid = new TileGrid(); if (pages) { tileGrid.setTileWidth(Constants.TILEGRID_ITEM_WIDTH); tileGrid.setTileHeight(Constants.TILEGRID_ITEM_HEIGHT); } else { tileGrid.setTileWidth(105); tileGrid.setTileHeight(115); } tileGrid.setHeight100(); tileGrid.setWidth100(); tileGrid.setCanDrag(true); tileGrid.setCanAcceptDrop(true); tileGrid.setShowAllRecords(true); Menu menu = new Menu(); menu.setShowShadow(true); menu.setShadowDepth(10); MenuItem editItem = new MenuItem(lang.menuEdit(), Constants.PATH_IMG_EDIT); editItem.setAttribute(ID_NAME, ID_EDIT); editItem.setEnableIfCondition(new MenuItemIfFunction() { @Override public boolean execute(Canvas target, Menu menu, MenuItem item) { return tileGrid.getSelection() != null && tileGrid.getSelection().length == 1; } }); MenuItem selectAllItem = new MenuItem(lang.menuSelectAll(), "icons/16/document_plain_new.png"); selectAllItem.setAttribute(ID_NAME, ID_SEL_ALL); MenuItem deselectAllItem = new MenuItem(lang.menuDeselectAll(), "icons/16/document_plain_new_Disabled.png"); deselectAllItem.setAttribute(ID_NAME, ID_SEL_NONE); MenuItem invertSelectionItem = new MenuItem(lang.menuInvertSelection(), "icons/16/invert.png"); invertSelectionItem.setAttribute(ID_NAME, ID_SEL_INV); MenuItemSeparator separator = new MenuItemSeparator(); separator.setAttribute(ID_NAME, ID_SEPARATOR); MenuItem copyItem = new MenuItem(lang.menuCopySelected(), "icons/16/copy.png"); copyItem.setAttribute(ID_NAME, ID_COPY); copyItem.setEnableIfCondition(new MenuItemIfFunction() { @Override public boolean execute(Canvas target, Menu menu, MenuItem item) { return tileGrid.getSelection().length > 0; } }); MenuItem pasteItem = new MenuItem(lang.menuPaste(), "icons/16/paste.png"); pasteItem.setAttribute(ID_NAME, ID_PASTE); pasteItem.setEnableIfCondition(new MenuItemIfFunction() { @Override public boolean execute(Canvas target, Menu menu, MenuItem item) { return ModifyView.this.clipboard != null && ModifyView.this.clipboard.length > 0; } }); MenuItem removeSelectedItem = new MenuItem(lang.menuRemoveSelected(), "icons/16/close.png"); removeSelectedItem.setAttribute(ID_NAME, ID_DELETE); removeSelectedItem.setEnableIfCondition(new MenuItemIfFunction() { @Override public boolean execute(Canvas target, Menu menu, MenuItem item) { return tileGrid.getSelection().length > 0; } }); MenuItem completelyRemove = new MenuItem(lang.menuCompletelyRemove(), "icons/16/completelyRemove.png"); completelyRemove.setAttribute(ID_NAME, ID_COMPLETELY_DELETE); completelyRemove.setEnableIfCondition(new MenuItemIfFunction() { @Override public boolean execute(Canvas target, Menu menu, MenuItem item) { return tileGrid.getSelection().length > 0; } }); menu.setItems(editItem, separator, selectAllItem, deselectAllItem, invertSelectionItem, separator, copyItem, pasteItem, removeSelectedItem, completelyRemove); tileGrid.setContextMenu(menu); tileGrid.setDropTypes(model); tileGrid.setDragType(model); tileGrid.setDragAppearance(DragAppearance.TRACKER); final EditorDragMoveHandler dragHandler = new EditorDragMoveHandler(tileGrid); final DigitalObjectModel mod = DigitalObjectModel.parseString(model); final boolean isPage = DigitalObjectModel.PAGE.equals(mod); final String modelIcon = Canvas.imgHTML(mod.getIcon(), 25, 25); tileGrid.addDragMoveHandler(dragHandler); tileGrid.addDragStartHandler(new DragStartHandler() { @Override public void onDragStart(DragStartEvent event) { if (tileGrid.getDragData().length != 0) { tileGrid.setDragAppearance(DragAppearance.TRACKER); String name = tileGrid.getSelectedRecord().getAttribute(Constants.ATTR_NAME); String pageIcon = null; if (isPage) { pageIcon = Canvas.imgHTML(Constants.SERVLET_THUMBNAIL_PREFIX + "/" + tileGrid.getSelectedRecord().getAttribute(Constants.ATTR_UUID), 25, 35); } dragHandler.setMoveTracker(name + (isPage ? pageIcon : modelIcon)); } else { tileGrid.setDragAppearance(DragAppearance.NONE); } } }); tileGrid.addRecordDoubleClickHandler(new RecordDoubleClickHandler() { @Override public void onRecordDoubleClick(RecordDoubleClickEvent event) { if (pages) { getPopupPanel(); if (event.getRecord() != null) { final ModalWindow mw = new ModalWindow(layout); mw.setLoadingIcon("loadingAnimation.gif"); mw.show(true); try { final Image full = new Image( Constants.SERVLET_IMAGES_PREFIX + Constants.SERVLET_FULL_PREFIX + '/' + event.getRecord().getAttribute(Constants.ATTR_UUID)); full.setHeight(Constants.IMAGE_FULL_HEIGHT + "px"); full.addLoadHandler(new LoadHandler() { @Override public void onLoad(LoadEvent event) { mw.hide(); imagePopup.setVisible(true); imagePopup.center(); } }); full.addErrorHandler(new ErrorHandler() { @Override public void onError(ErrorEvent event) { mw.show(lang.unableToLoadImg(), true); imagePopup.setWidget(null); imagePopup.hide(); imagePopup.setVisible(false); mw.hide(); } }); imagePopup.setWidget(full); imagePopup.addCloseHandler(new CloseHandler<PopupPanel>() { @Override public void onClose(CloseEvent<PopupPanel> event) { mw.hide(); imagePopup.setWidget(null); } }); imagePopup.center(); imagePopup.setVisible(false); } catch (Throwable t) { t.printStackTrace(); mw.hide(); } } } else { String uuidToEdit = tileGrid.getSelection()[0].getAttribute(Constants.ATTR_UUID); getUiHandlers().openAnotherObject(uuidToEdit, null); } } }); DetailViewerField pictureField = new DetailViewerField(Constants.ATTR_PICTURE); pictureField.setType("image"); if (pages) { pictureField.setImageURLPrefix(Constants.SERVLET_THUMBNAIL_PREFIX + '/'); pictureField.setImageWidth(Constants.IMAGE_THUMBNAIL_WIDTH); pictureField.setImageHeight(Constants.IMAGE_THUMBNAIL_HEIGHT); } else { pictureField.setImageWidth(95); pictureField.setImageHeight(95); } DetailViewerField nameField = new DetailViewerField(Constants.ATTR_NAME); nameField.setDetailFormatter(new DetailFormatter() { @Override public String format(Object value, Record record, DetailViewerField field) { StringBuffer sb = new StringBuffer(); sb.append(lang.title()).append(": ").append(value); return sb.toString(); } }); DetailViewerField descField = new DetailViewerField(Constants.ATTR_DESC); tileGrid.setFields(pictureField, nameField, descField); getUiHandlers().onAddDigitalObject(tileGrid, menu); return tileGrid; }
From source file:cz.incad.kramerius.editor.client.view.ElementViewImpl.java
License:Open Source License
private void initPopupUI(final String url) { popupPanel = new PopupPanel(true, true); popupPanel.setAnimationEnabled(true); final Image preview = new Image(); final Label status = new Label("Loading..."); FlowPanel flowPanel = new FlowPanel(); flowPanel.add(status);//from w ww. java 2s. c o m flowPanel.add(preview); popupPanel.setWidget(flowPanel); preview.setVisible(false); preview.addLoadHandler(new LoadHandler() { @Override public void onLoad(LoadEvent event) { preview.setVisible(true); status.setVisible(false); centerUpdatedPopupWorkaround(popupPanel); } }); preview.addErrorHandler(new ErrorHandler() { @Override public void onError(ErrorEvent event) { status.setText("Cannot load image " + url); centerUpdatedPopupWorkaround(popupPanel); } }); preview.setUrl(url); }
From source file:cz.mzk.editor.client.view.ModifyView.java
License:Open Source License
/** * Sets the tile grid./*from w w w . j a v a2 s.c o m*/ * * @param pages * the pages * @param model * the model * @return the tile grid */ private TileGrid getTileGrid(final boolean pages, final String model) { final TileGrid tileGrid = new TileGrid(); if (pages) { tileGrid.setTileWidth(Constants.TILEGRID_ITEM_WIDTH); tileGrid.setTileHeight(Constants.TILEGRID_ITEM_HEIGHT); } else { tileGrid.setTileWidth(105); tileGrid.setTileHeight(115); } tileGrid.setHeight100(); tileGrid.setWidth100(); tileGrid.setCanDrag(true); tileGrid.setCanAcceptDrop(true); tileGrid.setShowAllRecords(true); Menu menu = new Menu(); menu.setShowShadow(true); menu.setShadowDepth(10); MenuItem editItem = new MenuItem(lang.menuEdit(), Constants.PATH_IMG_EDIT); editItem.setAttribute(ID_NAME, ID_EDIT); editItem.setEnableIfCondition(new MenuItemIfFunction() { @Override public boolean execute(Canvas target, Menu menu, MenuItem item) { return tileGrid.getSelection() != null && tileGrid.getSelection().length == 1; } }); MenuItem selectAllItem = new MenuItem(lang.menuSelectAll(), "icons/16/document_plain_new.png"); selectAllItem.setAttribute(ID_NAME, ID_SEL_ALL); MenuItem deselectAllItem = new MenuItem(lang.menuDeselectAll(), "icons/16/document_plain_new_Disabled.png"); deselectAllItem.setAttribute(ID_NAME, ID_SEL_NONE); MenuItem invertSelectionItem = new MenuItem(lang.menuInvertSelection(), "icons/16/invert.png"); invertSelectionItem.setAttribute(ID_NAME, ID_SEL_INV); MenuItemSeparator separator = new MenuItemSeparator(); separator.setAttribute(ID_NAME, ID_SEPARATOR); MenuItem copyItem = new MenuItem(lang.menuCopySelected(), "icons/16/copy.png"); copyItem.setAttribute(ID_NAME, ID_COPY); copyItem.setEnableIfCondition(new MenuItemIfFunction() { @Override public boolean execute(Canvas target, Menu menu, MenuItem item) { return tileGrid.getSelection().length > 0; } }); MenuItem pasteItem = new MenuItem(lang.menuPaste(), "icons/16/paste.png"); pasteItem.setAttribute(ID_NAME, ID_PASTE); pasteItem.setEnableIfCondition(new MenuItemIfFunction() { @Override public boolean execute(Canvas target, Menu menu, MenuItem item) { return ModifyView.this.clipboard != null && ModifyView.this.clipboard.length > 0; } }); MenuItem removeSelectedItem = new MenuItem(lang.menuRemoveSelected(), "icons/16/close.png"); removeSelectedItem.setAttribute(ID_NAME, ID_DELETE); removeSelectedItem.setEnableIfCondition(new MenuItemIfFunction() { @Override public boolean execute(Canvas target, Menu menu, MenuItem item) { return tileGrid.getSelection().length > 0; } }); MenuItem completelyRemove = new MenuItem(lang.menuCompletelyRemove(), "icons/16/completelyRemove.png"); completelyRemove.setAttribute(ID_NAME, ID_COMPLETELY_DELETE); completelyRemove.setEnableIfCondition(new MenuItemIfFunction() { @Override public boolean execute(Canvas target, Menu menu, MenuItem item) { return tileGrid.getSelection().length > 0; } }); MenuItem ascSortItem = new MenuItem(lang.ascending(), "icons/16/sort_ascending.png"); ascSortItem.addClickHandler(new com.smartgwt.client.widgets.menu.events.ClickHandler() { @Override public void onClick(MenuItemClickEvent event) { sortTab(false); } }); MenuItem descSortItem = new MenuItem(lang.descending(), "icons/16/sort_descending.png"); descSortItem.addClickHandler(new com.smartgwt.client.widgets.menu.events.ClickHandler() { @Override public void onClick(MenuItemClickEvent event) { sortTab(true); } }); menu.setItems(ascSortItem); menu.setItems(editItem, separator, selectAllItem, deselectAllItem, invertSelectionItem, separator, copyItem, pasteItem, removeSelectedItem, completelyRemove, descSortItem, ascSortItem); tileGrid.setContextMenu(menu); tileGrid.setDropTypes(model); tileGrid.setDragType(model); tileGrid.setDragAppearance(DragAppearance.TRACKER); final EditorDragMoveHandler dragHandler = new EditorDragMoveHandler(tileGrid); final DigitalObjectModel mod = DigitalObjectModel.parseString(model); final boolean isPage = DigitalObjectModel.PAGE.equals(mod); final String modelIcon = Canvas.imgHTML(mod.getIcon(), 25, 25); tileGrid.addDragMoveHandler(dragHandler); tileGrid.addDragStartHandler(new DragStartHandler() { @Override public void onDragStart(DragStartEvent event) { if (tileGrid.getDragData().length != 0) { tileGrid.setDragAppearance(DragAppearance.TRACKER); String name = tileGrid.getSelectedRecord().getAttribute(Constants.ATTR_NAME); String pageIcon = null; if (isPage) { pageIcon = Canvas.imgHTML(Constants.SERVLET_THUMBNAIL_PREFIX + "/" + tileGrid.getSelectedRecord().getAttribute(Constants.ATTR_UUID), 25, 35); } dragHandler.setMoveTracker(name + (isPage ? pageIcon : modelIcon)); } else { tileGrid.setDragAppearance(DragAppearance.NONE); } } }); tileGrid.addRecordDoubleClickHandler(new RecordDoubleClickHandler() { @Override public void onRecordDoubleClick(RecordDoubleClickEvent event) { if (pages) { getPopupPanel(); if (event.getRecord() != null) { final ModalWindow mw = new ModalWindow(layout); mw.setLoadingIcon("loadingAnimation.gif"); mw.show(true); try { final Image full = new Image( Constants.SERVLET_IMAGES_PREFIX + Constants.SERVLET_FULL_PREFIX + '/' + event.getRecord().getAttribute(Constants.ATTR_UUID)); full.setHeight(Constants.IMAGE_FULL_HEIGHT + "px"); full.addLoadHandler(new LoadHandler() { @Override public void onLoad(LoadEvent event) { mw.hide(); imagePopup.setVisible(true); imagePopup.center(); } }); full.addErrorHandler(new ErrorHandler() { @Override public void onError(ErrorEvent event) { mw.show(lang.unableToLoadImg(), true); imagePopup.setWidget(null); imagePopup.hide(); imagePopup.setVisible(false); mw.hide(); } }); imagePopup.setWidget(full); imagePopup.addCloseHandler(new CloseHandler<PopupPanel>() { @Override public void onClose(CloseEvent<PopupPanel> event) { mw.hide(); imagePopup.setWidget(null); } }); imagePopup.center(); imagePopup.setVisible(false); } catch (Throwable t) { t.printStackTrace(); mw.hide(); } } } else { String uuidToEdit = tileGrid.getSelection()[0].getAttribute(Constants.ATTR_UUID); getUiHandlers().openAnotherObject(uuidToEdit, null); } } }); DetailViewerField pictureField = new DetailViewerField(Constants.ATTR_PICTURE_OR_UUID); pictureField.setType("image"); if (pages) { pictureField.setImageURLPrefix(Constants.SERVLET_THUMBNAIL_PREFIX + '/'); pictureField.setImageWidth(Constants.IMAGE_THUMBNAIL_WIDTH); pictureField.setImageHeight(Constants.IMAGE_THUMBNAIL_HEIGHT); } else { pictureField.setImageWidth(95); pictureField.setImageHeight(95); } DetailViewerField nameField = new DetailViewerField(Constants.ATTR_NAME); //nameField.setDetailFormatter(new DetailFormatter() { // // @Override // public String format(Object value, Record record, DetailViewerField field) { // StringBuffer sb = new StringBuffer(); // sb.append(lang.title()).append(": ").append(value); // return sb.toString(); // } //}); DetailViewerField descField = new DetailViewerField(Constants.ATTR_DESC); tileGrid.setFields(pictureField, nameField, descField); getUiHandlers().onAddDigitalObject(tileGrid, menu); return tileGrid; }
From source file:gwt.material.design.addins.client.webp.MaterialWebpImage.java
License:Apache License
public void checkWebpSupport() { Image image = new Image(); image.setUrl(//from w w w . ja va2 s . c o m "data:image/webp;base64,UklGRjoAAABXRUJQVlA4IC4AAACyAgCdASoCAAIALmk0mk0iIiIiIgBoSygABc6WWgAA/veff/0PP8bA//LwYAAA"); image.addLoadHandler(loadEvent -> { setUrl(getUrl()); }); image.addErrorHandler(errorEvent -> { setUrl(getFallbackUrl()); }); add(image); }