Example usage for com.google.gwt.user.client.ui Image addErrorHandler

List of usage examples for com.google.gwt.user.client.ui Image addErrorHandler

Introduction

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

Prototype

public HandlerRegistration addErrorHandler(ErrorHandler handler) 

Source Link

Usage

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);
}