<filename>include/ftxui/dom/requirement.hpp<gh_stars>1-10
// Copyright 2020 <NAME>. All rights reserved.
// Use of this source code is governed by the MIT license that can be found in
// the LICENSE file.

#ifndef FTXUI_DOM_REQUIREMENT_HPP
#define FTXUI_DOM_REQUIREMENT_HPP

#include "ftxui/screen/box.hpp"

namespace ftxui {

struct Requirement {
  // The required size to fully draw the element.
  struct {
    int x = 0;
    int y = 0;
  } min;

  // How much flexibility is given to the component.
  struct {
    int x = 0;
    int y = 0;
  } flex;

  // Frame.
  enum Selection {
    NORMAL = 0,
    SELECTED = 1,
    FOCUSED = 2,
  } selection = NORMAL;
  Box selected_box;
};

}  // namespace ftxui

#endif /* end of include guard: FTXUI_REQUIREMENT_HPP */
