[0b59ba5] | 1 | /** |
---|
| 2 | Sistema de Manejo de Matrices de Contabilidad Social, desarrollado a partir de Mayo de 2015. |
---|
| 3 | @file stackvariablesexogenas.cpp |
---|
| 4 | @brief Clases y métodos del stack para las variables exógenas |
---|
| 5 | @date 15/07/2015 |
---|
| 6 | @author Rodrigo Boet |
---|
| 7 | @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a> |
---|
[239e1ea] | 8 | */ |
---|
[9dd61b1] | 9 | #include "stackvariablesexogenas.h" |
---|
| 10 | |
---|
[0b59ba5] | 11 | /** |
---|
| 12 | @brief Clase principal que realiza la funcionalidad |
---|
| 13 | @date 15/07/2015 |
---|
| 14 | @author Rodrigo Boet |
---|
| 15 | @param <Lista> Recibe una lista con los titulos |
---|
| 16 | @param <Componentes> Recibe una lista con los componentes |
---|
| 17 | @param <inicio> Recibe una lista con el inicio del componente <i> |
---|
| 18 | @param <fin> Recibe una lista con el fin del componente <i> |
---|
| 19 | @param <parent> Recibe el widget que será el padre |
---|
| 20 | @param <contar> Recibe el limite de las iteraciones |
---|
| 21 | */ |
---|
[9dd61b1] | 22 | stackVariablesExogenas::stackVariablesExogenas(QStringList Lista,QStringList Componentes,QList<int> inicio, |
---|
| 23 | QList<int> fin,QWidget *parent,int contar) : |
---|
| 24 | QWidget(parent) |
---|
| 25 | { |
---|
| 26 | layoutMain = new QHBoxLayout; |
---|
| 27 | |
---|
| 28 | comboAccount = new QComboBox(this); |
---|
| 29 | |
---|
| 30 | stackedWidget = new QStackedWidget(this); |
---|
| 31 | |
---|
| 32 | QStringList nuevosComponentes; |
---|
| 33 | |
---|
| 34 | |
---|
| 35 | for (int i = 0;i < contar; ++i) |
---|
| 36 | { |
---|
| 37 | comboAccount->addItem(QString(Lista[i])); |
---|
| 38 | |
---|
| 39 | comboAccount->setObjectName(QString("CuentaExogena %1").arg(i + 1)); |
---|
| 40 | |
---|
| 41 | nuevosComponentes = generarComponentes(Componentes,inicio[i],fin[i]); |
---|
| 42 | |
---|
| 43 | veWidget = new VariableExogenaWidget(i,nuevosComponentes,stackedWidget); |
---|
| 44 | |
---|
| 45 | stackedWidget->addWidget(veWidget); |
---|
| 46 | |
---|
| 47 | widgetList.append(veWidget); |
---|
| 48 | |
---|
| 49 | } |
---|
| 50 | |
---|
| 51 | layoutMain->addWidget(comboAccount); |
---|
| 52 | layoutMain->addWidget(stackedWidget); |
---|
| 53 | |
---|
| 54 | setLayout(layoutMain); |
---|
| 55 | |
---|
| 56 | connect(comboAccount, SIGNAL(activated(int)), |
---|
| 57 | stackedWidget, SLOT(setCurrentIndex(int))); |
---|
| 58 | } |
---|
| 59 | |
---|
[0b59ba5] | 60 | /** |
---|
| 61 | @brief Método que obtiene los componentes de una lista |
---|
| 62 | @date 15/07/2015 |
---|
| 63 | @author Rodrigo Boet |
---|
| 64 | @param <Componentes> Recibe la lista de los componentes |
---|
| 65 | @param <inicio> Recibe el inicio del componente en la lista |
---|
| 66 | @param <fin> Recibe el fin del componente en la lista |
---|
| 67 | */ |
---|
[9dd61b1] | 68 | QStringList stackVariablesExogenas::generarComponentes(QStringList Componentes, int inicio, int fin) |
---|
| 69 | { |
---|
| 70 | QStringList mylista; |
---|
| 71 | inicio-=3; |
---|
| 72 | fin-=3; |
---|
| 73 | for(int i=inicio;i<=fin;i++) |
---|
| 74 | { |
---|
| 75 | mylista.append(Componentes[i]); |
---|
| 76 | } |
---|
| 77 | return mylista; |
---|
| 78 | } |
---|