Subversion Repositories SmartDukaan

Rev

Rev 2209 | Rev 2352 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

package in.shop2020.hotspot.dashbaord.client.inbox;

import in.shop2020.hotspot.dashbaord.client.event.AddJacketNumberEvent;
import in.shop2020.hotspot.dashbaord.shared.actions.Order;

import org.enunes.gwt.mvp.client.EventBus;

import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.DialogBox;
import com.google.gwt.user.client.ui.HorizontalPanel;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.TextBox;
import com.google.gwt.user.client.ui.VerticalPanel;

public class JacketInfoBox extends DialogBox {
        private Label errorLabel = new Label("");
        private Label jacketNumberLabel = new Label("Jacket Number");
        private TextBox jacketNumberBox = new TextBox();
        private Button submitbutton = new Button("Submit");
        private VerticalPanel vpanel = new VerticalPanel();

        public JacketInfoBox(final EventBus eventBus, final Order order){
                vpanel.add(errorLabel);
                
                HorizontalPanel hpanel = new HorizontalPanel();
                hpanel.setSpacing(5);
                hpanel.add(jacketNumberLabel);
                hpanel.add(jacketNumberBox);
                hpanel.setCellWidth(jacketNumberLabel, "120px");
                vpanel.add(hpanel);
                
                vpanel.add(submitbutton);
                
                setWidget(vpanel);
                setAutoHideEnabled(true);
                setGlassEnabled(true);
                setText("Please put in the Jacket Number");
                setModal(true);

                submitbutton.addClickHandler(new ClickHandler() {
                        
                        @Override
                        public void onClick(ClickEvent event) {
                                try{
                                        long jacketNumber = Long.parseLong(jacketNumberBox.getText());
                                        eventBus.fireEvent(new AddJacketNumberEvent(order, jacketNumber));
                                        hide();
                                        clean();
                                }catch(NumberFormatException nfe){
                                        errorLabel.setText("Jacket number is not a number.");
                                }
                        }
                });
        }
        
        public void clean(){
                jacketNumberBox.setText("");
                errorLabel.setText("");
        }
}