Added qml plugin exposing QProcess functionality.
[quick-widgets] / quickwidgetsettings.cpp
1 #include <QFileDialog>
2 #include "quickwidgetsettings.hpp"
3 #include "quickwidget.hpp"
4 #include "ui_quickwidgetsettings.h"
5
6 QuickWidgetSettings::QuickWidgetSettings(QWidget *parent) :
7     QDialog(parent),
8     ui(new Ui::QuickWidgetSettings)
9 {
10     ui->setupUi(this);
11     connect(ui->fileButton, SIGNAL(clicked()), this, SLOT(getQml()));
12 }
13
14 QuickWidgetSettings::~QuickWidgetSettings()
15 {
16     delete ui;
17 }
18
19 void QuickWidgetSettings::accept() {
20     QFile f(ui->fileEdit->text());
21     QSize size;
22     if (ui->sizingCheckBox->isChecked()) {
23         bool wok, hok;
24         int width = ui->widthEdit->text().toInt(&wok);
25         int height = ui->heightEdit->text().toInt(&hok);
26         if ( wok && hok && width < 800 && width > 10 && height < 400 && height > 10) {
27             size.setWidth(width);
28             size.setHeight(height);
29         }
30     }
31     if (f.exists())
32     {
33         QuickWidget::createAndShowNew(ui->fileEdit->text(), size);
34     }
35
36     QDialog::accept();
37 }
38
39 void QuickWidgetSettings::getQml()
40 {
41     QString fileName = QFileDialog::getOpenFileName(this, tr("Open File"),
42                                                     QDir::homePath(),
43                                                     tr("QML files (*.qml)"));
44     ui->fileEdit->setText(fileName);
45 }