Implementación de la configuración faltante

Signed-off-by: somebody_master <somebody_master@somebodyserver.mooo.com>
This commit is contained in:
Somebody Master 2020-10-28 00:00:25 +01:00
parent 41ea8e5b13
commit 568d7209e3
Signed by: somebody_master
GPG Key ID: 78315CFDF0B25505
3 changed files with 27 additions and 17 deletions

View File

@ -3,8 +3,8 @@
#define __CONFIG_HPP_
class Config {
private:
int8_t *numHilos;
std::string *tiempo;
int8_t numHilos;
std::string tiempo;
public:
Config(int8_t numHilos, std::string tiempo);

View File

@ -1,8 +1,8 @@
#include "config.hpp"
Config::Config(int8_t numHilos, std::string tiempo) {
Config::numHilos = &numHilos;
Config::tiempo = &tiempo;
Config::numHilos = numHilos;
Config::tiempo = tiempo;
}
// Config::~Config() {
@ -10,17 +10,17 @@ Config::Config(int8_t numHilos, std::string tiempo) {
// delete tiempo;
// }
int8_t Config::getNumHilos() {
return *numHilos;
return numHilos;
}
std::string Config::getTiempo() {
return *tiempo;
return tiempo;
}
void Config::setNumHilos(int8_t numHilos) {
Config::numHilos = &numHilos;
Config::numHilos = numHilos;
}
void Config::setTiempo(std::string tiempo) {
Config::tiempo = &tiempo;
Config::tiempo = tiempo;
}

View File

@ -84,7 +84,7 @@ void userInterface(const int8_t *num_menu, vector<string> *mensaje, Config *conf
case PRIMER_INICIO: {
vector<string> textos_init = {"Toda la configuración se escribirá en " + cf::g_configFile, "", ""};
vector<string> elemens = {"- Número de hilos\t> ", "- Tiempo\t\t> "};
vector<string> elemens = {"- Número de hilos\t> ", "- Tiempo de ejecución\t> "};
ui::showTopTitle(&TITULO_PRINCIPAL);
vector<string> entrada = ui::showCentralInputBox(&textos_init, &CONFIGURAR_TODO, &elemens, TITULO_PRINCIPAL.size());
Config config2 = Config(atoi(entrada[0].c_str()), entrada[1]);
@ -95,12 +95,22 @@ void userInterface(const int8_t *num_menu, vector<string> *mensaje, Config *conf
}
case CONFIGURAR_HILOS: {
/*TODO*/
vector<string> textos_init = {"Número de hilos actuales: " + to_string(config->getNumHilos()), "", ""};
vector<string> elemens = {"- Número de hilos\t> "};
vector<string> entrada = ui::showCentralInputBox(&textos_init, &CONFIGURAR_TODO, &elemens, TITULO_PRINCIPAL.size());
config->setNumHilos(atoi(entrada[0].c_str()));
cf::saveConfig(config);
userInterface(&MENU_CONFIGURACION, mensaje, config);
break;
}
case CONFIGURAR_TIEMPO: {
/*TODO*/
vector<string> textos_init = {"Tiempo actual" + config->getTiempo(), "", ""};
vector<string> elemens = {"- Tiempo de ejecución\t> "};
vector<string> entrada = ui::showCentralInputBox(&textos_init, &CONFIGURAR_TODO, &elemens, TITULO_PRINCIPAL.size());
config->setTiempo(entrada[0]);
cf::saveConfig(config);
userInterface(&MENU_CONFIGURACION, mensaje, config);
break;
}
@ -170,12 +180,12 @@ void showMenu(vector<string> *menu_elems, const int8_t *num_menu, Config *config
for (int j = menu_elems->at(i).length(); j < (ui::g_menuWith - 4); j++) {
menu_elems->at(i).append(" ");
}
/*
Por algún motivo los acentos y tildes cuentan como un caracter
aparte, por lo que hay que añadir un espacio extra en esos
casos. De momento la mejor solución es leer la cadena cada dos
caracteres y ver si cuadra con alguna de las siguientes letras.
*/
// Por algún motivo los acentos y tildes cuentan como un caracter
// aparte, por lo que hay que añadir un espacio extra en esos
// casos. De momento la mejor solución es leer la cadena cada dos
// caracteres y ver si cuadra con alguna de las siguientes letras.
for (int j = 0; j < menu_elems->at(i).length(); j++) {
if (menu_elems->at(i).substr(j, 2).compare("á") == 0 |
menu_elems->at(i).substr(j, 2).compare("é") == 0 |