private Widget buildLoginPanel(boolean openInNewWindowDefault) { userTextBox.setWidth("100%"); // $NON-NLS-1$ passwordTextBox.setWidth("100%"); // $NON-NLS-1$ usersListBox.setWidth("100%"); // $NON-NLS-1$ userTextBox.setStyleName("login-panel-label"); passwordTextBox.setStyleName("login-panel-label"); newWindowChk.setStyleName("login-panel-label"); VerticalPanel credentialsPanel = new VerticalPanel(); credentialsPanel.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT); credentialsPanel.setVerticalAlignment(HasVerticalAlignment.ALIGN_TOP); SimplePanel spacer; if (showUsersList) { // populate default users list box addDefaultUsers(); Label sampleUsersLabel = new Label(Messages.getString("sampleUser") + ":"); sampleUsersLabel.setStyleName("login-panel-label"); credentialsPanel.add(sampleUsersLabel); // $NON-NLS-1$ //$NON-NLS-2$ credentialsPanel.add(usersListBox); spacer = new SimplePanel(); spacer.setHeight("8px"); // $NON-NLS-1$ credentialsPanel.add(spacer); } Label usernameLabel = new Label(Messages.getString("username") + ":"); usernameLabel.setStyleName("login-panel-label"); credentialsPanel.add(usernameLabel); // $NON-NLS-1$ //$NON-NLS-2$ credentialsPanel.add(userTextBox); spacer = new SimplePanel(); spacer.setHeight("8px"); // $NON-NLS-1$ credentialsPanel.add(spacer); credentialsPanel.setCellHeight(spacer, "8px"); // $NON-NLS-1$ HTML passwordLabel = new HTML(Messages.getString("password") + ":"); passwordLabel.setStyleName("login-panel-label"); credentialsPanel.add(passwordLabel); // $NON-NLS-1$ //$NON-NLS-2$ credentialsPanel.add(passwordTextBox); boolean reallyShowNewWindowOption = showNewWindowOption; String showNewWindowOverride = Window.Location.getParameter("showNewWindowOption"); // $NON-NLS-1$ if (showNewWindowOverride != null && !"".equals(showNewWindowOverride)) { // $NON-NLS-1$ // if the override is set, we MUST obey it above all else reallyShowNewWindowOption = "true".equals(showNewWindowOverride); // $NON-NLS-1$ } else if (getReturnLocation() != null && !"".equals(getReturnLocation())) { // $NON-NLS-1$ StringTokenizer st = new StringTokenizer(getReturnLocation(), "?&"); // $NON-NLS-1$ // first token will be ignored, it is 'up to the ?' for (int i = 1; i < st.countTokens(); i++) { StringTokenizer paramTokenizer = new StringTokenizer(st.tokenAt(i), "="); // $NON-NLS-1$ if (paramTokenizer.countTokens() == 2) { // we've got a name=value token if (paramTokenizer.tokenAt(0).equalsIgnoreCase("showNewWindowOption")) { // $NON-NLS-1$ reallyShowNewWindowOption = "true".equals(paramTokenizer.tokenAt(1)); // $NON-NLS-1$ break; } } } } // New Window checkbox if (reallyShowNewWindowOption) { spacer = new SimplePanel(); spacer.setHeight("8px"); // $NON-NLS-1$ credentialsPanel.add(spacer); credentialsPanel.setCellHeight(spacer, "8px"); // $NON-NLS-1$ newWindowChk.setText(Messages.getString("launchInNewWindow")); // $NON-NLS-1$ String cookieCheckedVal = Cookies.getCookie("loginNewWindowChecked"); // $NON-NLS-1$ if (cookieCheckedVal != null) { newWindowChk.setValue(Boolean.parseBoolean(cookieCheckedVal)); } else { // default is false, per BISERVER-2384 newWindowChk.setValue(openInNewWindowDefault); } credentialsPanel.add(newWindowChk); } userTextBox.setTabIndex(1); passwordTextBox.setTabIndex(2); if (reallyShowNewWindowOption) { newWindowChk.setTabIndex(3); } passwordTextBox.setText(""); // $NON-NLS-1$ setFocusWidget(userTextBox); Image lockImage = new Image(GWT.getModuleBaseURL() + "images/icon_login_lock.png"); HorizontalPanel loginPanel = new HorizontalPanel(); loginPanel.setSpacing(5); loginPanel.setStyleName("login-panel"); loginPanel.add(lockImage); loginPanel.add(credentialsPanel); return loginPanel; }