/** Sistema de Manejo de Matrices de Contabilidad Social, desarrollado a partir de Mayo de 2015. @file stackvariablesexogenas.cpp @brief Clases y métodos del stack para las variables exógenas @date 15/07/2015 @author Rodrigo Boet @copyright GNU Public License versión 2 (GPLv2) */ #include "stackvariablesexogenas.h" /** @brief Clase principal que realiza la funcionalidad @date 15/07/2015 @author Rodrigo Boet @param Recibe una lista con los titulos @param Recibe una lista con los componentes @param Recibe una lista con el inicio del componente @param Recibe una lista con el fin del componente @param Recibe el widget que será el padre @param Recibe el limite de las iteraciones */ stackVariablesExogenas::stackVariablesExogenas(QStringList Lista,QStringList Componentes,QList inicio, QList fin,QWidget *parent,int contar) : QWidget(parent) { layoutMain = new QHBoxLayout; comboAccount = new QComboBox(this); stackedWidget = new QStackedWidget(this); QStringList nuevosComponentes; for (int i = 0;i < contar; ++i) { comboAccount->addItem(QString(Lista[i])); comboAccount->setObjectName(QString("CuentaExogena %1").arg(i + 1)); nuevosComponentes = generarComponentes(Componentes,inicio[i],fin[i]); veWidget = new VariableExogenaWidget(i,nuevosComponentes,stackedWidget); stackedWidget->addWidget(veWidget); widgetList.append(veWidget); } layoutMain->addWidget(comboAccount); layoutMain->addWidget(stackedWidget); setLayout(layoutMain); connect(comboAccount, SIGNAL(activated(int)), stackedWidget, SLOT(setCurrentIndex(int))); } /** @brief Método que obtiene los componentes de una lista @date 15/07/2015 @author Rodrigo Boet @param Recibe la lista de los componentes @param Recibe el inicio del componente en la lista @param Recibe el fin del componente en la lista */ QStringList stackVariablesExogenas::generarComponentes(QStringList Componentes, int inicio, int fin) { QStringList mylista; inicio-=3; fin-=3; for(int i=inicio;i<=fin;i++) { mylista.append(Componentes[i]); } return mylista; }