/** * Copyright 2011 ArcBees Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy of * the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. */ package com.gwtplatform.samples.hplace.client.view; import com.google.gwt.core.client.GWT; import com.google.gwt.dom.client.HeadingElement; import com.google.gwt.uibinder.client.UiBinder; import com.google.gwt.uibinder.client.UiField; import com.google.gwt.user.client.ui.Button; import com.google.gwt.user.client.ui.HTMLPanel; import com.google.gwt.user.client.ui.Hyperlink; import com.google.gwt.user.client.ui.InlineLabel; import com.google.gwt.user.client.ui.Widget; import com.gwtplatform.mvp.client.ViewImpl; import com.gwtplatform.samples.hplace.client.presenter.ProductPresenter.MyView; import com.gwtplatform.samples.hplace.shared.Product; /** * @author Philippe Beaudoin */ public class ProductView extends ViewImpl implements MyView { interface ProductViewUiBinder extends UiBinder<Widget, ProductView> { } private static ProductViewUiBinder uiBinder = GWT.create(ProductViewUiBinder.class); @UiField Hyperlink backLink; @UiField Button buyButton; @UiField InlineLabel price; @UiField HTMLPanel productDetails; @UiField InlineLabel quantity; @UiField HeadingElement title; private final Widget widget; public ProductView() { widget = uiBinder.createAndBindUi(this); } @Override public Widget asWidget() { return widget; } @Override public void setBackLinkHistoryToken(String historyToken) { backLink.setTargetHistoryToken(historyToken); } @Override public void setMessage(String string) { title.setInnerText(string); productDetails.setVisible(false); } @Override public void setProductDetails(Product product) { productDetails.setVisible(true); title.setInnerText(product.getName()); price.setText(product.getPrice()); quantity.setText(Integer.toString(product.getQuantity())); } }