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> |
---|
8 | */ |
---|
9 | #include "stackvariablesexogenas.h" |
---|
10 | |
---|
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 | */ |
---|
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 | |
---|
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 | */ |
---|
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 | } |
---|