// Path: webwozwizard/src/com/webwoz/wizard/client/ComponentFactory.java
// @RemoteServiceRelativePath("componentFactory")
// public interface ComponentFactory extends RemoteService {
// 
// 	void pushComponents(int[][] components, int expid, String path,
// 			String ssLang, String mtsrc, String mttrg, String mtosrc,
// 			String mtotrg, String asrl, int wiz);
// 
// 	String pushOutput(String output, int user, String mode);
// 
// 	Vector<String> getInput(String input, String uttid, String mode);
// 
// 	void clearComponents();
// 
// }
// 
// Path: webwozwizard/src/com/webwoz/wizard/client/ComponentFactoryAsync.java
// public interface ComponentFactoryAsync {
// 
// 	void clearComponents(AsyncCallback<Void> callback);
// 
// 	void pushComponents(int[][] components, int expid, String path,
// 			String ssLang, String mtsrc, String mttrg, String mtosrc,
// 			String mtotrg, String asrl, int wiz, AsyncCallback<Void> callback);
// 
// 	void pushOutput(String output, int user, String mode,
// 			AsyncCallback<String> callback);
// 
// 	void getInput(String input, String uttid, String mode,
// 			AsyncCallback<Vector<String>> callback);
// 
// }
// 
// Path: webwozwizard/src/com/webwoz/wizard/client/DatabaseAccess.java
// @RemoteServiceRelativePath("databaseAccess")
// public interface DatabaseAccess extends RemoteService {
// 
// 	String storeData(String sql);
// 
// 	String[][] retrieveData(String sql);
// 
// 	String getTimeStamp();
// 
// 	void closeConnection();
// 
// }
// 
// Path: webwozwizard/src/com/webwoz/wizard/client/DatabaseAccessAsync.java
// public interface DatabaseAccessAsync {
// 
// 	void storeData(String sql, AsyncCallback<String> callback);
// 
// 	void retrieveData(String sql, AsyncCallback<String[][]> callback);
// 
// 	void getTimeStamp(AsyncCallback<String> callback);
// 
// 	void closeConnection(AsyncCallback<Void> callback);
// 
// }
// 
// Path: webwozwizard/src/com/webwoz/wizard/client/Screen.java
// public interface Screen {
// 	VerticalPanel getScreen();
// 
// 	void stopReload();
// 
// 	void changeVisibility();
// 
// }


import java.util.Date;
import java.util.Vector;
import com.google.gwt.core.client.GWT;
import com.google.gwt.event.dom.client.ChangeEvent;
import com.google.gwt.event.dom.client.ChangeHandler;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.event.dom.client.KeyCodes;
import com.google.gwt.event.dom.client.KeyPressEvent;
import com.google.gwt.event.dom.client.KeyPressHandler;
import com.google.gwt.event.shared.HandlerRegistration;
import com.google.gwt.i18n.client.DateTimeFormat;
import com.google.gwt.user.client.Timer;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.ListBox;
import com.google.gwt.user.client.ui.PopupPanel;
import com.google.gwt.user.client.ui.RadioButton;
import com.google.gwt.user.client.ui.ScrollPanel;
import com.google.gwt.user.client.ui.TabPanel;
import com.google.gwt.user.client.ui.TextArea;
import com.google.gwt.user.client.ui.TextBox;
import com.google.gwt.user.client.ui.VerticalPanel;
import com.webwoz.wizard.client.ComponentFactory;
import com.webwoz.wizard.client.ComponentFactoryAsync;
import com.webwoz.wizard.client.DatabaseAccess;
import com.webwoz.wizard.client.DatabaseAccessAsync;
import com.webwoz.wizard.client.Screen;
import com.google.gwt.user.client.ui.HorizontalPanel;
import com.google.gwt.user.client.ui.Label;
	private HandlerRegistration[] addToFreeClickHandlerRegistration;
	private HandlerRegistration[] addDomainUtteranceClickHandlerRegistration;
	private HandlerRegistration[] editDomainUtteranceClickHandlerRegistration;
	private HandlerRegistration[] saveTabClickHandlerRegistration;
	private HandlerRegistration[] delTabClickHandlerRegistration;
	private HandlerRegistration[] editSlotHandlerRegistration;
	private HandlerRegistration[][] slotRadioButtonHandlerRegistration;
	private HandlerRegistration[] changeSlotValueHandlerRegistration;
	private HandlerRegistration[] deleteSlotValueHandlerRegistration;
	private HandlerRegistration[] addFreeTextHandlerRegistration;
	private HandlerRegistration[] editFreeTextHandlerRegistration;
	private HandlerRegistration[] uttButtUpClickHandlerRegistration;
	private HandlerRegistration[] uttButtDownClickHandlerRegistration;

	// Pop-ups
	private EditUtterancesPopup editUtterancesPopup;
	private EditDomainDataPopUp editDomainDataPopup;
	private EditTabsPopup editTabsPopup;
	private PrintReportPopup printReportPopup;
	private EditSlotPopUp editSlotPopUp;
	private AddSlotPopUp addSlotPopUp;
	private EditPreparedFreeTextPopup editFreeTextPopUp;

	// HTML
	private HTML reportTable;
	private HTML reportHeadingTable;
	private HTML statusHtml;
	private HTML loggedInHtml;

	// RPC
// Path: webwozwizard/src/com/webwoz/wizard/client/ComponentFactory.java
// @RemoteServiceRelativePath("componentFactory")
// public interface ComponentFactory extends RemoteService {
// 
// 	void pushComponents(int[][] components, int expid, String path,
// 			String ssLang, String mtsrc, String mttrg, String mtosrc,
// 			String mtotrg, String asrl, int wiz);
// 
// 	String pushOutput(String output, int user, String mode);
// 
// 	Vector<String> getInput(String input, String uttid, String mode);
// 
// 	void clearComponents();
// 
// }
// 
// Path: webwozwizard/src/com/webwoz/wizard/client/ComponentFactoryAsync.java
// public interface ComponentFactoryAsync {
// 
// 	void clearComponents(AsyncCallback<Void> callback);
// 
// 	void pushComponents(int[][] components, int expid, String path,
// 			String ssLang, String mtsrc, String mttrg, String mtosrc,
// 			String mtotrg, String asrl, int wiz, AsyncCallback<Void> callback);
// 
// 	void pushOutput(String output, int user, String mode,
// 			AsyncCallback<String> callback);
// 
// 	void getInput(String input, String uttid, String mode,
// 			AsyncCallback<Vector<String>> callback);
// 
// }
// 
// Path: webwozwizard/src/com/webwoz/wizard/client/DatabaseAccess.java
// @RemoteServiceRelativePath("databaseAccess")
// public interface DatabaseAccess extends RemoteService {
// 
// 	String storeData(String sql);
// 
// 	String[][] retrieveData(String sql);
// 
// 	String getTimeStamp();
// 
// 	void closeConnection();
// 
// }
// 
// Path: webwozwizard/src/com/webwoz/wizard/client/DatabaseAccessAsync.java
// public interface DatabaseAccessAsync {
// 
// 	void storeData(String sql, AsyncCallback<String> callback);
// 
// 	void retrieveData(String sql, AsyncCallback<String[][]> callback);
// 
// 	void getTimeStamp(AsyncCallback<String> callback);
// 
// 	void closeConnection(AsyncCallback<Void> callback);
// 
// }
// 
// Path: webwozwizard/src/com/webwoz/wizard/client/Screen.java
// public interface Screen {
// 	VerticalPanel getScreen();
// 
// 	void stopReload();
// 
// 	void changeVisibility();
// 
// }


// Path: webwozwizard/src/com/webwoz/wizard/client/wizardlayouts/DefaultWizardScreen.java
import java.util.Date;
import java.util.Vector;
import com.google.gwt.core.client.GWT;
import com.google.gwt.event.dom.client.ChangeEvent;
import com.google.gwt.event.dom.client.ChangeHandler;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.event.dom.client.KeyCodes;
import com.google.gwt.event.dom.client.KeyPressEvent;
import com.google.gwt.event.dom.client.KeyPressHandler;
import com.google.gwt.event.shared.HandlerRegistration;
import com.google.gwt.i18n.client.DateTimeFormat;
import com.google.gwt.user.client.Timer;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.ListBox;
import com.google.gwt.user.client.ui.PopupPanel;
import com.google.gwt.user.client.ui.RadioButton;
import com.google.gwt.user.client.ui.ScrollPanel;
import com.google.gwt.user.client.ui.TabPanel;
import com.google.gwt.user.client.ui.TextArea;
import com.google.gwt.user.client.ui.TextBox;
import com.google.gwt.user.client.ui.VerticalPanel;
import com.webwoz.wizard.client.ComponentFactory;
import com.webwoz.wizard.client.ComponentFactoryAsync;
import com.webwoz.wizard.client.DatabaseAccess;
import com.webwoz.wizard.client.DatabaseAccessAsync;
import com.webwoz.wizard.client.Screen;
import com.google.gwt.user.client.ui.HorizontalPanel;
import com.google.gwt.user.client.ui.Label;

	private HandlerRegistration[] addToFreeClickHandlerRegistration;
	private HandlerRegistration[] addDomainUtteranceClickHandlerRegistration;
	private HandlerRegistration[] editDomainUtteranceClickHandlerRegistration;
	private HandlerRegistration[] saveTabClickHandlerRegistration;
	private HandlerRegistration[] delTabClickHandlerRegistration;
	private HandlerRegistration[] editSlotHandlerRegistration;
	private HandlerRegistration[][] slotRadioButtonHandlerRegistration;
	private HandlerRegistration[] changeSlotValueHandlerRegistration;
	private HandlerRegistration[] deleteSlotValueHandlerRegistration;
	private HandlerRegistration[] addFreeTextHandlerRegistration;
	private HandlerRegistration[] editFreeTextHandlerRegistration;
	private HandlerRegistration[] uttButtUpClickHandlerRegistration;
	private HandlerRegistration[] uttButtDownClickHandlerRegistration;

	// Pop-ups
	private EditUtterancesPopup editUtterancesPopup;
	private EditDomainDataPopUp editDomainDataPopup;
	private EditTabsPopup editTabsPopup;
	private PrintReportPopup printReportPopup;
	private EditSlotPopUp editSlotPopUp;
	private AddSlotPopUp addSlotPopUp;
	private EditPreparedFreeTextPopup editFreeTextPopUp;

	// HTML
	private HTML reportTable;
	private HTML reportHeadingTable;
	private HTML statusHtml;
	private HTML loggedInHtml;

	// RPC
	private DatabaseAccessAsync databaseAccessSvc;