1 | /** |
---|
2 | Sistema de Manejo de Matrices de Contabilidad Social, desarrollado a partir de Mayo de 2015. |
---|
3 | @file formexportreport.cpp |
---|
4 | @brief Clases y métodos del formulario que permite generar reportes en pdf |
---|
5 | @date 31/08/2016 |
---|
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 "formexportreport.h" |
---|
10 | #include "ui_formexportreport.h" |
---|
11 | |
---|
12 | /** |
---|
13 | @brief Clase principal que inicializa la interfaz |
---|
14 | @date 31/08/2016 |
---|
15 | @author Rodrigo Boet |
---|
16 | @param <parent> Recibe el widget que será el padre |
---|
17 | */ |
---|
18 | FormExportReport::FormExportReport(QWidget *parent) : |
---|
19 | QWidget(parent,Qt::Tool), |
---|
20 | ui(new Ui::FormExportReport) |
---|
21 | { |
---|
22 | ui->setupUi(this); |
---|
23 | |
---|
24 | int x = parent->pos().x() + parent->width()/2 - this->width()/2; |
---|
25 | int y = parent->pos().y() + parent->height()/2 - this->height()/2; |
---|
26 | this->move(x, y); |
---|
27 | |
---|
28 | connect(ui->ButtonCancelar,SIGNAL(clicked()),this,SLOT(close())); |
---|
29 | connect(ui->ButtonCargar,SIGNAL(clicked()),this,SLOT(slotLoad())); |
---|
30 | connect(ui->ButtonGenerar,SIGNAL(clicked()),this,SLOT(slotClicked())); |
---|
31 | } |
---|
32 | |
---|
33 | /** |
---|
34 | @brief Método con el destructor de la interfaz gráfica |
---|
35 | @date 31/08/2016 |
---|
36 | */ |
---|
37 | FormExportReport::~FormExportReport() |
---|
38 | { |
---|
39 | delete ui; |
---|
40 | } |
---|
41 | |
---|
42 | /** |
---|
43 | @brief Método que permite mostrar el diálogo para seleccionar el nombre del reporte |
---|
44 | @date 31/08/2016 |
---|
45 | @author Rodrigo Boet |
---|
46 | */ |
---|
47 | void FormExportReport::slotLoad() |
---|
48 | { |
---|
49 | QString format = ".pdf"; |
---|
50 | |
---|
51 | QString filename = QFileDialog::getSaveFileName(this, |
---|
52 | "Elija el nombre del reporte", QDir::homePath(),"*.pdf"); |
---|
53 | |
---|
54 | filename.remove(format); |
---|
55 | |
---|
56 | filename +=format; |
---|
57 | |
---|
58 | ui->lineEdit->setText(filename); |
---|
59 | } |
---|
60 | |
---|
61 | /** |
---|
62 | @brief Método que valida al darle clic en generar y que emite una SIGNAL |
---|
63 | @date 31/08/2016 |
---|
64 | @author Rodrigo Boet |
---|
65 | */ |
---|
66 | void FormExportReport::slotClicked() |
---|
67 | { |
---|
68 | QString filename= ui->lineEdit->text(); |
---|
69 | if(filename.isEmpty()) |
---|
70 | { |
---|
71 | QMessageBox::critical(this, "Faltan datos", |
---|
72 | "Debe seleccionar una ruta y nombre para el archivo"); |
---|
73 | return; |
---|
74 | } |
---|
75 | emit formAccepted(filename,true); |
---|
76 | close(); |
---|
77 | } |
---|
78 | |
---|
79 | /** |
---|
80 | @brief Método que permite mostrar el diálogo para seleccionar el nombre del gráfico |
---|
81 | @date 14/09/2016 |
---|
82 | @author Rodrigo Boet |
---|
83 | */ |
---|
84 | void FormExportReport::slotLoadGraphic() |
---|
85 | { |
---|
86 | QString format = ".png"; |
---|
87 | |
---|
88 | QString filename = QFileDialog::getSaveFileName(this, |
---|
89 | "Elija el nombre del gráfico", QDir::homePath(),"*.png"); |
---|
90 | |
---|
91 | filename.remove(format); |
---|
92 | |
---|
93 | filename +=format; |
---|
94 | |
---|
95 | ui->lineEdit->setText(filename); |
---|
96 | } |
---|
97 | |
---|
98 | /** |
---|
99 | @brief Método que valida al darle clic en generar y que emite una SIGNAL |
---|
100 | @date 14/09/2016 |
---|
101 | @author Rodrigo Boet |
---|
102 | */ |
---|
103 | void FormExportReport::slotClickedGraphic() |
---|
104 | { |
---|
105 | QString filename= ui->lineEdit->text(); |
---|
106 | if(filename.isEmpty()) |
---|
107 | { |
---|
108 | QMessageBox::critical(this, "Faltan datos", |
---|
109 | "Debe seleccionar una ruta y nombre para el archivo"); |
---|
110 | return; |
---|
111 | } |
---|
112 | emit formAccepted(filename,false); |
---|
113 | close(); |
---|
114 | } |
---|