summaryrefslogtreecommitdiff
path: root/rbutil/rbutilqt/installzipwindow.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'rbutil/rbutilqt/installzipwindow.cpp')
-rw-r--r--rbutil/rbutilqt/installzipwindow.cpp254
1 files changed, 126 insertions, 128 deletions
diff --git a/rbutil/rbutilqt/installzipwindow.cpp b/rbutil/rbutilqt/installzipwindow.cpp
index 551d1144c7..cd85305eba 100644
--- a/rbutil/rbutilqt/installzipwindow.cpp
+++ b/rbutil/rbutilqt/installzipwindow.cpp
@@ -1,128 +1,126 @@
1/*************************************************************************** 1/***************************************************************************
2 * __________ __ ___. 2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___ 3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / 4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < 5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ 6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/ 7 * \/ \/ \/ \/ \/
8 * 8 *
9 * Copyright (C) 2007 by Dominik Wenger 9 * Copyright (C) 2007 by Dominik Wenger
10 * $Id: installzipwindow.cpp 14027 2007-07-27 17:42:49Z domonoky $ 10 * $Id: installzipwindow.cpp 14027 2007-07-27 17:42:49Z domonoky $
11 * 11 *
12 * All files in this archive are subject to the GNU General Public License. 12 * All files in this archive are subject to the GNU General Public License.
13 * See the file COPYING in the source tree root for full license agreement. 13 * See the file COPYING in the source tree root for full license agreement.
14 * 14 *
15 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY 15 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
16 * KIND, either express or implied. 16 * KIND, either express or implied.
17 * 17 *
18 ****************************************************************************/ 18 ****************************************************************************/
19 19
20#include "installzipwindow.h" 20#include "installzipwindow.h"
21#include "ui_installprogressfrm.h" 21//#include "ui_installprogressfrm.h"
22 22
23 23
24InstallZipWindow::InstallZipWindow(QWidget *parent) : QDialog(parent) 24InstallZipWindow::InstallZipWindow(QWidget *parent) : QDialog(parent)
25{ 25{
26 ui.setupUi(this); 26 ui.setupUi(this);
27 connect(ui.buttonBrowse, SIGNAL(clicked()), this, SLOT(browseFolder())); 27 connect(ui.buttonBrowse, SIGNAL(clicked()), this, SLOT(browseFolder()));
28} 28}
29 29
30void InstallZipWindow::setProxy(QUrl proxy_url) 30void InstallZipWindow::setProxy(QUrl proxy_url)
31{ 31{
32 proxy = proxy_url; 32 proxy = proxy_url;
33 qDebug() << "Install::setProxy" << proxy; 33 qDebug() << "Install::setProxy" << proxy;
34} 34}
35 35
36void InstallZipWindow::setMountPoint(QString mount) 36void InstallZipWindow::setMountPoint(QString mount)
37{ 37{
38 QFileInfo m(mount); 38 QFileInfo m(mount);
39 if(m.isDir()) { 39 if(m.isDir()) {
40 ui.lineMountPoint->clear(); 40 ui.lineMountPoint->clear();
41 ui.lineMountPoint->insert(mount); 41 ui.lineMountPoint->insert(mount);
42 } 42 }
43} 43}
44 44
45void InstallZipWindow::setUrl(QString path) 45void InstallZipWindow::setUrl(QString path)
46{ 46{
47 url = path; 47 url = path;
48} 48}
49 49
50void InstallZipWindow::browseFolder() 50void InstallZipWindow::browseFolder()
51{ 51{
52 QFileDialog browser(this); 52 QFileDialog browser(this);
53 if(QFileInfo(ui.lineMountPoint->text()).isDir()) 53 if(QFileInfo(ui.lineMountPoint->text()).isDir())
54 browser.setDirectory(ui.lineMountPoint->text()); 54 browser.setDirectory(ui.lineMountPoint->text());
55 else 55 else
56 browser.setDirectory("/media"); 56 browser.setDirectory("/media");
57 browser.setReadOnly(true); 57 browser.setReadOnly(true);
58 browser.setFileMode(QFileDialog::DirectoryOnly); 58 browser.setFileMode(QFileDialog::DirectoryOnly);
59 browser.setAcceptMode(QFileDialog::AcceptOpen); 59 browser.setAcceptMode(QFileDialog::AcceptOpen);
60 if(browser.exec()) { 60 if(browser.exec()) {
61 qDebug() << browser.directory(); 61 qDebug() << browser.directory();
62 QStringList files = browser.selectedFiles(); 62 QStringList files = browser.selectedFiles();
63 setMountPoint(files.at(0)); 63 setMountPoint(files.at(0));
64 } 64 }
65} 65}
66 66
67void InstallZipWindow::accept() 67void InstallZipWindow::accept()
68{ 68{
69 downloadProgress = new QDialog(this); 69 // create logger
70 dp.setupUi(downloadProgress); 70 logger = new ProgressLoggerGui(this);
71 71 logger->show();
72 // show dialog with error if mount point is wrong 72
73 if(QFileInfo(ui.lineMountPoint->text()).isDir()) { 73 // show dialog with error if mount point is wrong
74 mountPoint = ui.lineMountPoint->text(); 74 if(QFileInfo(ui.lineMountPoint->text()).isDir()) {
75 userSettings->setValue("defaults/mountpoint", mountPoint); 75 mountPoint = ui.lineMountPoint->text();
76 } 76 userSettings->setValue("defaults/mountpoint", mountPoint);
77 else { 77 }
78 dp.listProgress->addItem(tr("Mount point is wrong!")); 78 else {
79 dp.buttonAbort->setText(tr("&Ok")); 79 logger->addItem(tr("Mount point is wrong!"));
80 downloadProgress->show(); 80 logger->abort();
81 return; 81 return;
82 } 82 }
83 83
84 userSettings->sync(); 84 userSettings->sync();
85 85
86 installer = new ZipInstaller(this); 86 // create Zip installer
87 87 installer = new ZipInstaller(this);
88 QString fileName = url.section('/', -1); 88
89 89 QString fileName = url.section('/', -1);
90 installer->setFilename(fileName); 90 installer->setFilename(fileName);
91 installer->setUrl(url); 91 installer->setUrl(url);
92 installer->setProxy(proxy); 92 installer->setProxy(proxy);
93 installer->setLogSection(logsection); 93 installer->setLogSection(logsection);
94 installer->setMountPoint(mountPoint); 94 installer->setMountPoint(mountPoint);
95 installer->install(&dp); 95 installer->install(logger);
96 96
97 connect(installer, SIGNAL(done(bool)), this, SLOT(done(bool))); 97 connect(installer, SIGNAL(done(bool)), this, SLOT(done(bool)));
98 98
99 downloadProgress->show(); 99
100 100}
101} 101
102 102// we are done with Zip installing
103 103void InstallZipWindow::done(bool error)
104void InstallZipWindow::done(bool error) 104{
105{ 105 qDebug() << "Install::done, error:" << error;
106 qDebug() << "Install::done, error:" << error; 106
107 107 if(error) // if there was an error
108 if(error) 108 {
109 { 109 logger->abort();
110 // connect close button now as it's needed if we break upon an error 110 return;
111 connect(dp.buttonAbort, SIGNAL(clicked()), downloadProgress, SLOT(close())); 111 }
112 return; 112
113 } 113 // no error, close the window, when the logger is closed
114 114 connect(logger,SIGNAL(closed()),this,SLOT(close()));
115 connect(dp.buttonAbort, SIGNAL(clicked()), this, SLOT(close())); 115}
116 connect(dp.buttonAbort, SIGNAL(clicked()),downloadProgress, SLOT(close())); 116
117} 117void InstallZipWindow::setDeviceSettings(QSettings *dev)
118 118{
119void InstallZipWindow::setDeviceSettings(QSettings *dev) 119 devices = dev;
120{ 120 qDebug() << "Install::setDeviceSettings:" << devices;
121 devices = dev; 121}
122 qDebug() << "Install::setDeviceSettings:" << devices; 122
123} 123void InstallZipWindow::setUserSettings(QSettings *user)
124 124{
125void InstallZipWindow::setUserSettings(QSettings *user) 125 userSettings = user;
126{ 126}
127 userSettings = user;
128}