52 lines
2.4 KiB
C++
52 lines
2.4 KiB
C++
#ifndef MENU_HPP_INCLUDED
|
|
#define MENU_HPP_INCLUDED
|
|
|
|
#include "../../Core/Types/Box.hpp"
|
|
#include <cstdint>
|
|
#include <string>
|
|
#include <vector>
|
|
|
|
/** @addtogroup Interfaces
|
|
* @{ */
|
|
class Menu
|
|
{
|
|
public:
|
|
|
|
static bool IsOpen();
|
|
static bool Open();
|
|
|
|
static std::int32_t GetCount();
|
|
static std::vector<std::string> GetActions();
|
|
static std::vector<std::string> GetTargetsRaw();
|
|
static std::vector<std::string> GetTargets();
|
|
static std::vector<std::string> GetOptions();
|
|
|
|
static std::int32_t IndexOf(const std::string& Action);
|
|
static std::int32_t IndexOf(const std::string& Action, const std::string& Target);
|
|
static std::int32_t IndexOf(const std::vector<std::string>& PossibleActions);
|
|
static std::int32_t IndexOf(const std::vector<std::string>& PossibleActions, const std::vector<std::string>& PossibleTargets);
|
|
|
|
static bool Contains(const std::string& Action);
|
|
static bool Contains(const std::string& Action, const std::string& Target);
|
|
static bool Contains(const std::vector<std::string>& PossibleActions);
|
|
static bool Contains(const std::vector<std::string>& PossibleActions, const std::vector<std::string>& Targets);
|
|
|
|
static bool WaitContains(std::uint32_t Duration, std::uint32_t Step, const std::string& Action);
|
|
static bool WaitContains(std::uint32_t Duration, std::uint32_t Step, const std::string& Action, const std::string& Target);
|
|
static bool WaitContains(std::uint32_t Duration, std::uint32_t Step, const std::vector<std::string>& PossibleActions); // Waits until the Menu contains at least one of these actions
|
|
static bool WaitContains(std::uint32_t Duration, std::uint32_t Step, const std::vector<std::string>& PossibleActions, const std::vector<std::string>& PossibleTargets); // Waits until the Menu contains at least one of these actions and Targets
|
|
|
|
static bool Select(std::uint32_t Index);
|
|
static bool Select(const std::string& Action);
|
|
static bool Select(const std::string& Action, const std::string& Target);
|
|
static bool Select(const std::vector<std::string>& PossibleActions);
|
|
static bool Select(const std::vector<std::string>& PossibleActions, const std::vector<std::string>& PossibleTargets);
|
|
|
|
static std::vector<Box> GetBoxes();
|
|
static Box GetBox();
|
|
};
|
|
|
|
/** @} */
|
|
|
|
#endif // MENU_HPP_INCLUDED
|