-
Notifications
You must be signed in to change notification settings - Fork 0
/
menustrab.h
88 lines (70 loc) · 2.53 KB
/
menustrab.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
#include <iostream>
#include <vector>
#include <string>
#include <conio.h>
#include "procurarfile.h"
#include "infos_e_jogadas.h"
#include "keyregistration.h"
#include "pecas.h"
#ifndef MENU_H
#define MENU_H
class IMenu
{
public:
//Construtores e Destrutores
IMenu(std::vector<std::vector<std::string>>);
~IMenu();
//Setters
void SetTabuleiro();
void SetInfos(std::vector<std::string> infos);
void SetJogadas(std::vector<std::string> jogadas);
void SetSizeInfoJogadas(int size_vetor_informacoes_e_jogadas);
void SetSizeJogadas(int size_vetor_jogadas);
//Menus
void InitialMenu();
//Prints Do Menu Inicial
void ChessPhrasePrint();
void BoardPrint(); //A Fazer;
void InitialMenu_OptionsPrint(std::vector<std::string> Options, int options_selection, int options_size);
void ControlsPrint();
//Registrando Keyboard Input
void InitialMenu_OptionsKeyRegistration(std::vector <std::string> Options ,int &options_selection, int options_size);
//Muda de partida depois que o usuario seleciona algum ".pgn" no menu de opcoes de pgn
void NovoJogo();
private:
int options_selection;
int options_size;
int tamanho_infos_e_jogadas_class;
int n_jogada;
std::vector<std::vector<char>> tabuleiro_inicial
{
{'T','C','B','Q','K','B','C','T'},
{'P','P','P','P','P','P','P','P'},
{'\0','\0','\0','\0','\0','\0','\0','\0'},
{'\0','\0','\0','\0','\0','\0','\0','\0'},
{'\0','\0','\0','\0','\0','\0','\0','\0'},
{'\0','\0','\0','\0','\0','\0','\0','\0'},
{'p','p','p','p','p','p','p','p'},
{'t','c','b','q','k','b','c','t'},
};
std::vector<std::vector<std::vector<char>>> todos_tabuleiros;
std::vector<std::string> infos_class;
std::vector<std::string> jogadas_class;
};
class FMenu //Menu de Files, quando o usuario nao coloca uma ele tem opcao de escolher
{
public:
//Construtores e Destrutores
FMenu();
~FMenu();
//Menu
int FileMenu();
//Prints do FileMenu
void FileMenu_OptionsPrint(int options_selection);
//Registrando Keyboard Input
int FileMenu_OptionsKeyRegistration(int &options_selection);
private:
std::vector<std::string> pgns_class;
friend IMenu;
};
#endif