diff options
Diffstat (limited to 'rbutil/rbutilqt/installzipwindow.cpp')
-rw-r--r-- | rbutil/rbutilqt/installzipwindow.cpp | 254 |
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 | ||
24 | InstallZipWindow::InstallZipWindow(QWidget *parent) : QDialog(parent) | 24 | InstallZipWindow::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 | ||
30 | void InstallZipWindow::setProxy(QUrl proxy_url) | 30 | void 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 | ||
36 | void InstallZipWindow::setMountPoint(QString mount) | 36 | void 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 | ||
45 | void InstallZipWindow::setUrl(QString path) | 45 | void InstallZipWindow::setUrl(QString path) |
46 | { | 46 | { |
47 | url = path; | 47 | url = path; |
48 | } | 48 | } |
49 | 49 | ||
50 | void InstallZipWindow::browseFolder() | 50 | void 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 | ||
67 | void InstallZipWindow::accept() | 67 | void 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 | 103 | void InstallZipWindow::done(bool error) | |
104 | void 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 | } | 117 | void InstallZipWindow::setDeviceSettings(QSettings *dev) |
118 | 118 | { | |
119 | void InstallZipWindow::setDeviceSettings(QSettings *dev) | 119 | devices = dev; |
120 | { | 120 | qDebug() << "Install::setDeviceSettings:" << devices; |
121 | devices = dev; | 121 | } |
122 | qDebug() << "Install::setDeviceSettings:" << devices; | 122 | |
123 | } | 123 | void InstallZipWindow::setUserSettings(QSettings *user) |
124 | 124 | { | |
125 | void InstallZipWindow::setUserSettings(QSettings *user) | 125 | userSettings = user; |
126 | { | 126 | } |
127 | userSettings = user; | ||
128 | } | ||