summaryrefslogtreecommitdiff
path: root/rbutil
diff options
context:
space:
mode:
Diffstat (limited to 'rbutil')
-rw-r--r--rbutil/rbutilqt/installzipwindow.cpp126
-rw-r--r--rbutil/rbutilqt/installzipwindow.h66
-rw-r--r--rbutil/rbutilqt/rbutilqt.cpp58
-rw-r--r--rbutil/rbutilqt/rbutilqt.h9
-rw-r--r--rbutil/rbutilqt/rbutilqt.pro17
5 files changed, 52 insertions, 224 deletions
diff --git a/rbutil/rbutilqt/installzipwindow.cpp b/rbutil/rbutilqt/installzipwindow.cpp
deleted file mode 100644
index 9e4381dce0..0000000000
--- a/rbutil/rbutilqt/installzipwindow.cpp
+++ /dev/null
@@ -1,126 +0,0 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 *
9 * Copyright (C) 2007 by Dominik Wenger
10 * $Id: installzipwindow.cpp 14027 2007-07-27 17:42:49Z domonoky $
11 *
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.
14 *
15 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
16 * KIND, either express or implied.
17 *
18 ****************************************************************************/
19
20#include "installzipwindow.h"
21//#include "ui_installprogressfrm.h"
22
23
24InstallZipWindow::InstallZipWindow(QWidget *parent) : QDialog(parent)
25{
26 ui.setupUi(this);
27 connect(ui.buttonBrowse, SIGNAL(clicked()), this, SLOT(browseFolder()));
28}
29
30void InstallZipWindow::setProxy(QUrl proxy_url)
31{
32 proxy = proxy_url;
33 qDebug() << "Install::setProxy" << proxy;
34}
35
36void InstallZipWindow::setMountPoint(QString mount)
37{
38 QFileInfo m(mount);
39 if(m.isDir()) {
40 ui.lineMountPoint->clear();
41 ui.lineMountPoint->insert(mount);
42 }
43}
44
45void InstallZipWindow::setUrl(QString path)
46{
47 url = path;
48}
49
50void InstallZipWindow::browseFolder()
51{
52 QFileDialog browser(this);
53 if(QFileInfo(ui.lineMountPoint->text()).isDir())
54 browser.setDirectory(ui.lineMountPoint->text());
55 else
56 browser.setDirectory("/media");
57 browser.setReadOnly(true);
58 browser.setFileMode(QFileDialog::DirectoryOnly);
59 browser.setAcceptMode(QFileDialog::AcceptOpen);
60 if(browser.exec()) {
61 qDebug() << browser.directory();
62 QStringList files = browser.selectedFiles();
63 setMountPoint(files.at(0));
64 }
65}
66
67void InstallZipWindow::accept()
68{
69 // create logger
70 logger = new ProgressLoggerGui(this);
71 logger->show();
72
73 // show dialog with error if mount point is wrong
74 if(QFileInfo(ui.lineMountPoint->text()).isDir()) {
75 mountPoint = ui.lineMountPoint->text();
76 userSettings->setValue("defaults/mountpoint", mountPoint);
77 }
78 else {
79 logger->addItem(tr("Mount point is wrong!"),LOGERROR);
80 logger->abort();
81 return;
82 }
83
84 userSettings->sync();
85
86 // create Zip installer
87 installer = new ZipInstaller(this);
88
89 QString fileName = url.section('/', -1);
90 installer->setFilename(fileName);
91 installer->setUrl(url);
92 installer->setProxy(proxy);
93 installer->setLogSection(logsection);
94 installer->setMountPoint(mountPoint);
95 installer->install(logger);
96
97 connect(installer, SIGNAL(done(bool)), this, SLOT(done(bool)));
98
99
100}
101
102// we are done with Zip installing
103void InstallZipWindow::done(bool error)
104{
105 qDebug() << "Install::done, error:" << error;
106
107 if(error) // if there was an error
108 {
109 logger->abort();
110 return;
111 }
112
113 // no error, close the window, when the logger is closed
114 connect(logger,SIGNAL(closed()),this,SLOT(close()));
115}
116
117void InstallZipWindow::setDeviceSettings(QSettings *dev)
118{
119 devices = dev;
120 qDebug() << "Install::setDeviceSettings:" << devices;
121}
122
123void InstallZipWindow::setUserSettings(QSettings *user)
124{
125 userSettings = user;
126}
diff --git a/rbutil/rbutilqt/installzipwindow.h b/rbutil/rbutilqt/installzipwindow.h
deleted file mode 100644
index 1eb96b745f..0000000000
--- a/rbutil/rbutilqt/installzipwindow.h
+++ /dev/null
@@ -1,66 +0,0 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 *
9 * Copyright (C) 2007 by Dominik Wenger
10 * $Id: installzipwindow.h 14027 2007-07-27 17:42:49Z domonoky $
11 *
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.
14 *
15 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
16 * KIND, either express or implied.
17 *
18 ****************************************************************************/
19
20#ifndef INSTALLZIPWINDOW_H
21#define INSTALLZIPWINDOW_H
22
23#include <QtGui>
24
25#include <QSettings>
26
27#include "ui_installzipfrm.h"
28#include "installzip.h"
29#include "progressloggergui.h"
30
31class InstallZipWindow : public QDialog
32{
33 Q_OBJECT
34 public:
35 InstallZipWindow(QWidget *parent = 0);
36 void setProxy(QUrl);
37 void setMountPoint(QString);
38 void setUrl(QString);
39 void setLogSection(QString name){logsection = name; }
40 void setUserSettings(QSettings*);
41 void setDeviceSettings(QSettings*);
42
43 public slots:
44 void accept(void);
45
46 private:
47 Ui::InstallZipFrm ui;
48 QUrl proxy;
49 QSettings *devices;
50 QSettings *userSettings;
51 ProgressLoggerGui* logger;
52 QString file;
53 QString fileName;
54 QString mountPoint;
55 QString url;
56 QString logsection;
57 ZipInstaller* installer;
58
59 private slots:
60 void browseFolder(void);
61 void done(bool);
62
63};
64
65
66#endif
diff --git a/rbutil/rbutilqt/rbutilqt.cpp b/rbutil/rbutilqt/rbutilqt.cpp
index d709b66acd..da469efded 100644
--- a/rbutil/rbutilqt/rbutilqt.cpp
+++ b/rbutil/rbutilqt/rbutilqt.cpp
@@ -28,7 +28,6 @@
28#include "installbl.h" 28#include "installbl.h"
29#include "httpget.h" 29#include "httpget.h"
30#include "installbootloader.h" 30#include "installbootloader.h"
31#include "installzipwindow.h"
32 31
33#ifdef __linux 32#ifdef __linux
34#include <stdio.h> 33#include <stdio.h>
@@ -290,40 +289,57 @@ void RbUtilQt::installBl()
290 289
291void RbUtilQt::installFonts() 290void RbUtilQt::installFonts()
292{ 291{
293 InstallZipWindow* installWindow = new InstallZipWindow(this); 292 if(QMessageBox::question(this, tr("Confirm Installation"),
294 installWindow->setUserSettings(userSettings); 293 tr("Do you really want to install the fonts package?"),
295 installWindow->setDeviceSettings(devices); 294 QMessageBox::Yes | QMessageBox::No) != QMessageBox::Yes) return;
295 // create logger
296 logger = new ProgressLoggerGui(this);
297 logger->show();
298
299 // create zip installer
300 installer = new ZipInstaller(this);
301
302 installer->setUrl(devices->value("font_url").toString());
296 if(userSettings->value("defaults/proxytype") == "manual") 303 if(userSettings->value("defaults/proxytype") == "manual")
297 installWindow->setProxy(QUrl(userSettings->value("defaults/proxy").toString())); 304 installer->setProxy(QUrl(userSettings->value("defaults/proxy").toString()));
298#ifdef __linux 305#ifdef __linux
299 else if(userSettings->value("defaults/proxytype") == "system") 306 else if(userSettings->value("defaults/proxytype") == "system")
300 installWindow->setProxy(QUrl(getenv("http_proxy"))); 307 installer->setProxy(QUrl(getenv("http_proxy")));
301#endif 308#endif
302 installWindow->setMountPoint(userSettings->value("defaults/mountpoint").toString());
303 installWindow->setLogSection("Fonts");
304 installWindow->setUrl(devices->value("font_url").toString());
305 installWindow->setWindowTitle("Font Installation");
306 installWindow->show();
307 309
310 installer->setLogSection("Fonts");
311 installer->setMountPoint(userSettings->value("defaults/mountpoint").toString());
312 installer->install(logger);
313
314 connect(installer, SIGNAL(done(bool)), this, SLOT(done(bool)));
308} 315}
309 316
310 317
311void RbUtilQt::installDoom() 318void RbUtilQt::installDoom()
312{ 319{
313 InstallZipWindow* installWindow = new InstallZipWindow(this); 320 if(QMessageBox::question(this, tr("Confirm Installation"),
314 installWindow->setUserSettings(userSettings); 321 tr("Do you really want to install the game addon files?"),
315 installWindow->setDeviceSettings(devices); 322 QMessageBox::Yes | QMessageBox::No) != QMessageBox::Yes) return;
323 // create logger
324 logger = new ProgressLoggerGui(this);
325 logger->show();
326
327 // create zip installer
328 installer = new ZipInstaller(this);
329
330 installer->setUrl(devices->value("doom_url").toString());
316 if(userSettings->value("defaults/proxytype") == "manual") 331 if(userSettings->value("defaults/proxytype") == "manual")
317 installWindow->setProxy(QUrl(userSettings->value("defaults/proxy").toString())); 332 installer->setProxy(QUrl(userSettings->value("defaults/proxy").toString()));
318#ifdef __linux 333#ifdef __linux
319 else if(userSettings->value("defaults/proxytype") == "system") 334 else if(userSettings->value("defaults/proxytype") == "system")
320 installWindow->setProxy(QUrl(getenv("http_proxy"))); 335 installer->setProxy(QUrl(getenv("http_proxy")));
321#endif 336#endif
322 installWindow->setMountPoint(userSettings->value("defaults/mountpoint").toString()); 337
323 installWindow->setLogSection("Doom"); 338 installer->setLogSection("Game Addons");
324 installWindow->setUrl(devices->value("doom_url").toString()); 339 installer->setMountPoint(userSettings->value("defaults/mountpoint").toString());
325 installWindow->setWindowTitle("Doom Installation"); 340 installer->install(logger);
326 installWindow->show(); 341
342 connect(installer, SIGNAL(done(bool)), this, SLOT(done(bool)));
327 343
328} 344}
329 345
diff --git a/rbutil/rbutilqt/rbutilqt.h b/rbutil/rbutilqt/rbutilqt.h
index dc22077511..50bca0b4fa 100644
--- a/rbutil/rbutilqt/rbutilqt.h
+++ b/rbutil/rbutilqt/rbutilqt.h
@@ -21,11 +21,14 @@
21#ifndef QRBUTIL_H 21#ifndef QRBUTIL_H
22#define QRBUTIL_H 22#define QRBUTIL_H
23 23
24#include "ui_rbutilqtfrm.h"
25#include "httpget.h"
26#include <QSettings> 24#include <QSettings>
27#include <QTemporaryFile> 25#include <QTemporaryFile>
28 26
27#include "ui_rbutilqtfrm.h"
28#include "httpget.h"
29#include "installzip.h"
30#include "progressloggergui.h"
31
29class RbUtilQt : public QMainWindow 32class RbUtilQt : public QMainWindow
30{ 33{
31 Q_OBJECT 34 Q_OBJECT
@@ -44,6 +47,8 @@ class RbUtilQt : public QMainWindow
44 QString absolutePath; 47 QString absolutePath;
45 QTemporaryFile buildInfo; 48 QTemporaryFile buildInfo;
46 void updateManual(void); 49 void updateManual(void);
50 ProgressLoggerGui *logger;
51 ZipInstaller *installer;
47 52
48 private slots: 53 private slots:
49 void about(void); 54 void about(void);
diff --git a/rbutil/rbutilqt/rbutilqt.pro b/rbutil/rbutilqt/rbutilqt.pro
index 3a0ae4a016..ba074d52a6 100644
--- a/rbutil/rbutilqt/rbutilqt.pro
+++ b/rbutil/rbutilqt/rbutilqt.pro
@@ -8,14 +8,13 @@ SOURCES += rbutilqt.cpp \
8 installzip.cpp \ 8 installzip.cpp \
9 installbootloader.cpp \ 9 installbootloader.cpp \
10 installbl.cpp \ 10 installbl.cpp \
11 installzipwindow.cpp \
12 progressloggergui.cpp \ 11 progressloggergui.cpp \
13 ../ipodpatcher/ipodpatcher.c \ 12 ../ipodpatcher/ipodpatcher.c \
14 ../sansapatcher/sansapatcher.c \ 13 ../sansapatcher/sansapatcher.c \
15 irivertools/irivertools.cpp \ 14 irivertools/irivertools.cpp \
16 irivertools/md5sum.cpp 15 irivertools/md5sum.cpp
16
17 17
18
19HEADERS += rbutilqt.h \ 18HEADERS += rbutilqt.h \
20 settings.h \ 19 settings.h \
21 install.h \ 20 install.h \
@@ -42,8 +41,9 @@ HEADERS += rbutilqt.h \
42 irivertools/md5sum.h \ 41 irivertools/md5sum.h \
43 irivertools/h100sums.h \ 42 irivertools/h100sums.h \
44 irivertools/h120sums.h \ 43 irivertools/h120sums.h \
45 irivertools/h300sums.h 44 irivertools/h300sums.h \
46 45 irivertools/checksums.h
46
47TEMPLATE = app 47TEMPLATE = app
48CONFIG += release \ 48CONFIG += release \
49 warn_on \ 49 warn_on \
@@ -56,10 +56,9 @@ FORMS += rbutilqtfrm.ui \
56 installfrm.ui \ 56 installfrm.ui \
57 installprogressfrm.ui \ 57 installprogressfrm.ui \
58 configurefrm.ui \ 58 configurefrm.ui \
59 installbootloaderfrm.ui \ 59 installbootloaderfrm.ui
60 installzipfrm.ui 60
61 61
62
63RESOURCES += rbutilqt.qrc 62RESOURCES += rbutilqt.qrc
64 63
65TRANSLATIONS += rbutil_de.ts 64TRANSLATIONS += rbutil_de.ts