ChooseAvatarDialogUI.java 文件源码

java
阅读 25 收藏 0 点赞 0 评论 0

项目:x-cure-chat 作者:
private Widget initAvatarPanel( final int index, final PresetAvatarImages.AvatarDescriptor descriptor ){
    Widget avatarWidget;

    //Initialize the avatar image
    final String avatarURLBase = ServerSideAccessManager.getPresetAvatarImagesBase();
    Image image = new Image( avatarURLBase + descriptor.relativeURL );
    image.setStyleName( CommonResourcesContainer.AVATAR_IMAGE_CHOICE_DEFAULT_STYLE );
    image.setTitle( titlesI18N.clickToChooseToolTip() );

    //Sort out what the avatar widget is.
    if( descriptor.price > 0 ) {
        //If there is a price tag then the avatar is a special object
        FocusPanel focusPanel = new FocusPanel();
        VerticalPanel verticalPanel = new VerticalPanel();
        verticalPanel.setHorizontalAlignment( HasHorizontalAlignment.ALIGN_CENTER );
        verticalPanel.setVerticalAlignment( HasVerticalAlignment.ALIGN_BOTTOM );
        verticalPanel.add( image );
        verticalPanel.add( new PriceTagWidget( null, descriptor.price, false, true ));
        focusPanel.add( verticalPanel );
        avatarWidget = focusPanel;
    } else {
        //If there is no price then the avatar is the image widget itself
        avatarWidget = image;
    }

    //Add the floading style and the click handler
    avatarWidget.addStyleName( CommonResourcesContainer.AVATAR_IMAGE_IN_LIST_STYLE );
    ((HasClickHandlers) avatarWidget).addClickHandler( new ClickHandler() {
        public void onClick(ClickEvent e) {
            if( isChooseEnabled ) {
                //Initiate the avatar selection, do the RPC call
                doChooseAvatarServerCall( index );
            }
            //Just in case stop the event here
            e.preventDefault(); e.stopPropagation();
        }
    });

    return (Widget) avatarWidget;
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号