View Javadoc

1   package org.vectomatic.svg.chess;
2   
3   import com.google.gwt.core.client.GWT;
4   import com.google.gwt.event.dom.client.ClickEvent;
5   import com.google.gwt.uibinder.client.UiBinder;
6   import com.google.gwt.uibinder.client.UiField;
7   import com.google.gwt.uibinder.client.UiHandler;
8   import com.google.gwt.user.client.ui.Button;
9   import com.google.gwt.user.client.ui.DialogBox;
10  import com.google.gwt.user.client.ui.VerticalPanel;
11  
12  /**
13   * UI panel to ask for confirmation upon game restart
14   */
15  public class ConfirmBox {
16  	interface RestartBinder extends UiBinder<VerticalPanel, ConfirmBox> {
17  	}
18  	private static RestartBinder restartBinder = GWT.create(RestartBinder.class);
19  	
20  	@UiField(provided=true)
21  	ChessConstants constants = ChessConstants.INSTANCE;
22  	@UiField
23  	Button confirmYesButton;
24  	@UiField
25  	Button confirmNoButton;
26  	DialogBox confirmBox;
27  	Main main;
28  	
29  	public static DialogBox createConfirmBox(Main main) {
30  		return new ConfirmBox(main).confirmBox;
31  	}
32  	
33  	private ConfirmBox(Main main) {
34  		this.main = main;
35  		confirmBox = new DialogBox();
36  		confirmBox.setTitle(constants.restart());
37  		confirmBox.setWidget(restartBinder.createAndBindUi(this));
38  	}
39  	
40  	@UiHandler("confirmYesButton")
41  	public void confirmYes(ClickEvent event) {
42  		confirmBox.hide();
43          main.restart();
44  	}
45  	
46  	@UiHandler("confirmNoButton")
47  	public void confirmNo(ClickEvent event) {
48  		confirmBox.hide();
49  	}
50  
51  }