Subversion Repositories SmartDukaan

Rev

Rev 306 | Blame | Last modification | View Log | RSS feed

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

import in.shop2020.hotspot.dashbaord.client.event.ShippedOrderEvent;
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.Random;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.DialogBox;
import com.google.gwt.user.client.ui.DockPanel;
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;
import com.google.gwt.user.client.ui.DockPanel.DockLayoutConstant;

public class ShipmentInfoBox extends DialogBox{
        
        private Label billNumberLabel = new Label("Airway Bill Number");
        private Label billGeneratedByLabel = new Label("Tracker");
        
        private Label providerLabel = new Label("Provider");
        
        private TextBox billNumber = new TextBox();
        private TextBox generatedBy = new TextBox();
        private TextBox provider = new TextBox();
        
        private Button submitbutton = new Button("Submit");
        
        private EventBus eventBus;
        
        private HorizontalPanel hpanel;
        
        private VerticalPanel vpanel = new VerticalPanel();
        
        private final Order order;
        
        public ShipmentInfoBox(final EventBus eventBus, final Order order){
                this.eventBus = eventBus;
                this.order = order;
                hpanel = new HorizontalPanel();
                hpanel.setSpacing(5);
                hpanel.add(billNumberLabel);
                hpanel.add(billNumber);
                
                
                billNumber.setText(order.getAirwayBillNo());
                billNumber.setEnabled(false);
                hpanel.setCellWidth(billNumberLabel, "120px");
                vpanel.add(hpanel);
                
                hpanel = new HorizontalPanel();
                hpanel.setSpacing(5);
                hpanel.add(billGeneratedByLabel);
                hpanel.add(generatedBy);
                
                generatedBy.setText(order.getBilledBy());
                generatedBy.setEnabled(false);
                hpanel.setCellWidth(billGeneratedByLabel, "120px");
                vpanel.add(hpanel);
                hpanel = new HorizontalPanel();
                hpanel.setSpacing(5);
                providerLabel.setVisible(false);
                provider.setVisible(false);
                hpanel.add(providerLabel);
                hpanel.add(provider);
                hpanel.setCellWidth(providerLabel, "120px");
                vpanel.add(hpanel);
                
                
                vpanel.add(submitbutton);
                /*
                billGeneratedByLabel.setWidth("100px");
                billNumberLabel.setWidth("100px");
                providerLabel.setWidth("100px");
                
                billNumber.setWidth("100px");
                generatedBy.setWidth("100px");
                provider.setWidth("100px");
                */
        
                setWidget(vpanel);
                setAutoHideEnabled(true);
                setGlassEnabled(true);
                setText("Please enter shipment details");
                //setSize("500px", "400px");
                                
                setModal(true);
                
                
                submitbutton.addClickHandler(new ClickHandler() {
                        
                        @Override
                        public void onClick(ClickEvent event) {
                                // TODO Auto-generated method stub
                                hide();
                                eventBus.fireEvent(new ShippedOrderEvent(order, billNumber.getText(), generatedBy.getText(), provider.getText(),true));
                                clear();
                        }
                });
        }
        
        public void clear(){
                billNumber.setText("");
                provider.setText("");
                generatedBy.setText("");
        }

}