// *++
//
// Copyright (C) 2014, Red Hat, Inc.
// Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.<BR>
//
// This program and the accompanying materials are licensed and made available
// under the terms and conditions of the BSD License which accompanies this
// distribution. The full text of the license may be found at
// http://opensource.org/licenses/bsd-license.php
//
// THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
// WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR
// IMPLIED.
//
// Module Name:
//
//   PlatformForms.vfr
//
// Abstract:
//
//   Form definitions for exposing some of OVMF's platform knobs via HII.
//
// --*/

#include <Guid/OvmfPlatformConfig.h>
#include "Platform.h"

formset
  guid  = OVMF_PLATFORM_CONFIG_GUID,
  title = STRING_TOKEN(STR_FORMSET_TITLE),
  help  = STRING_TOKEN(STR_FORMSET_HELP),

  varstore MAIN_FORM_STATE,
    varid = FORMSTATEID_MAIN_FORM,
    name  = MainFormState,
    guid  = OVMF_PLATFORM_CONFIG_GUID;

  form
    formid = FORMID_MAIN_FORM,
    title  = STRING_TOKEN(STR_MAIN_FORM_TITLE);

    //
    // Display the current preference in a read-only string field.
    //
    string
      varid      = MainFormState.CurrentPreferredResolution,
      questionid = QUESTION_RES_CUR,
      prompt     = STRING_TOKEN(STR_RES_CUR),
      help       = STRING_TOKEN(STR_RES_CUR_HELP),
      flags      = READ_ONLY,
      minsize    = 0,
      maxsize    = MAXSIZE_RES_CUR,
    endstring;

    //
    // We'll dynamically generate a one-of-many selection at this label.
    //
    label LABEL_RES_NEXT;

    text
      help  = STRING_TOKEN(STR_SAVE_EXIT),
      text  = STRING_TOKEN(STR_SAVE_EXIT),
      flags = INTERACTIVE,
      key   = QUESTION_SAVE_EXIT;

    text
      help  = STRING_TOKEN(STR_DISCARD_EXIT),
      text  = STRING_TOKEN(STR_DISCARD_EXIT),
      flags = INTERACTIVE,
      key   = QUESTION_DISCARD_EXIT;

  endform;

endformset;