// *++
//
// Copyright (C) 2014, Red Hat, Inc.
// Copyright (c) 2009 - 2019, Intel Corporation. All rights reserved.<BR>
//
// SPDX-License-Identifier: BSD-2-Clause-Patent
//
// Module Name:
//
//   PlatformForms.vfr
//
// Abstract:
//
//   Form definitions for exposing some of OVMF's platform knobs via HII.
//
// --*/

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

formset
  guid  = SIMICS_BOARD_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  = SIMICS_BOARD_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;
