/**
   * ************************************* Adds the components for the submission of the login data.
   *
   * @param rBuilder The builder to create the components with
   * @return The login button
   */
  protected Button addSubmitLoginComponents(ContainerBuilder<?> rBuilder) {
    StyleData rButtonStyle = StyleData.DEFAULT.setFlags(StyleFlag.HORIZONTAL_ALIGN_CENTER);

    rBuilder.addLabel(StyleData.DEFAULT, "", null);

    return rBuilder.addButton(rButtonStyle, "$btnLogin", null);
  }
  /**
   * ************************************* Adds the components to displays a login failure message.
   *
   * @param rBuilder The container build to create the components with
   * @return The failure message label
   */
  protected Label addFailureMessageComponents(ContainerBuilder<?> rBuilder) {
    String sError = EsocoGwtResources.INSTANCE.css().error();

    StyleData rErrorStyle = StyleData.DEFAULT.set(StyleData.WEB_ADDITIONAL_STYLES, sError);

    rBuilder.addLabel(StyleData.DEFAULT, "", null);

    return rBuilder.addLabel(rErrorStyle, "$lblLoginFailed", null);
  }
  /**
   * ************************************* Adds the components for the user input.
   *
   * @param rBuilder The builder to create the components with
   * @param sUserName The user name preset
   * @param bReauthenticate TRUE for a re-authentication of the current user
   * @return The user input field or NULL if no user input is needed (in the case of
   *     re-authentication)
   */
  protected TextField addUserComponents(
      ContainerBuilder<?> rBuilder, String sUserName, boolean bReauthenticate) {
    TextField aUserInputField = null;

    rBuilder.addLabel(
        StyleData.DEFAULT.setFlags(StyleFlag.HORIZONTAL_ALIGN_RIGHT), "$lblLoginName", null);

    if (bReauthenticate) {
      rBuilder.addLabel(StyleData.DEFAULT, sUserName, null);
    } else {
      aUserInputField = rBuilder.addTextField(StyleData.DEFAULT, "");
      aUserInputField.setText(sUserName);
    }

    return aUserInputField;
  }
 /** ************************************* {@inheritDoc} */
 @Override
 protected ContainerBuilder<Panel> createContainer(
     ContainerBuilder<?> rBuilder, StyleData rStyleData) {
   return rBuilder.addPanel(rStyleData);
 }
  /**
   * ************************************* Adds the components for the password input.
   *
   * @param rBuilder The builder to create the components with
   * @return The password input field
   */
  protected TextField addPasswortComponents(ContainerBuilder<?> rBuilder) {
    rBuilder.addLabel(
        StyleData.DEFAULT.setFlags(StyleFlag.HORIZONTAL_ALIGN_RIGHT), "$lblPassword", null);

    return rBuilder.addTextField(StyleData.DEFAULT.setFlags(StyleFlag.PASSWORD), "");
  }
 /**
  * ************************************* Adds the header of the login panel.
  *
  * @param rBuilder The container builder to add the header with
  * @param rHeaderStyle The style for the panel header
  */
 protected void addLoginPanelHeader(ContainerBuilder<?> rBuilder, StyleData rHeaderStyle) {
   rBuilder.addLabel(rHeaderStyle, null, "#$imLogin");
   rBuilder.addLabel(rHeaderStyle, "$lblLogin", null);
 }