rockbox/rbutil/rbutilqt/rbutilqt.h
Dominik Riebeling 362f447ede Create dedicated backup dialog.
The "Installation" dialog allows backing up the current installation by
creating a zip file from the .rockbox folder since quite a while. However, this
has the drawback that you need to update your build to create a backup, but
creating a backup might be desireable in other cases as well (before updating
themes, or just for backup reasons). Since the functionality is somewhat hidden
it's also not obvious to users such a functionality exists (most users are
likely to use the "Quick Start" instead).

Implement backup functionality as dedicated dialog placed on the Uninstall tab.
Rename the Uninstall tab to accommodate this.

Change-Id: I1d2c6c8f646672d1b66bb442408fbfc2eeec700d
2012-06-26 18:30:27 +02:00

125 lines
3.5 KiB
C++

/***************************************************************************
* __________ __ ___.
* Open \______ \ ____ ____ | | _\_ |__ _______ ___
* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
* \/ \/ \/ \/ \/
*
* Copyright (C) 2007 by Dominik Riebeling
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
* KIND, either express or implied.
*
****************************************************************************/
#ifndef QRBUTIL_H
#define QRBUTIL_H
#include <QSettings>
#include <QTemporaryFile>
#include <QList>
#include <QTranslator>
#include "ui_rbutilqtfrm.h"
#include "httpget.h"
#include "zipinstaller.h"
#include "progressloggergui.h"
#include "bootloaderinstallbase.h"
#include "manualwidget.h"
#include "infowidget.h"
#include "backupdialog.h"
class RbUtilQt : public QMainWindow
{
Q_OBJECT
public:
RbUtilQt(QWidget *parent = 0);
static QList<QTranslator*> translators;
static bool chkConfig(QWidget *parent = 0);
private:
ManualWidget *manual;
InfoWidget *info;
BackupDialog *backupdialog;
Ui::RbUtilQtFrm ui;
void changeEvent(QEvent *e);
void initDeviceNames(void);
QString deviceName(QString);
QString platform;
HttpGet *daily;
HttpGet *bleeding;
HttpGet *update;
QString absolutePath;
QTemporaryFile buildInfo;
QTemporaryFile bleedingInfo;
ProgressLoggerGui *logger;
ZipInstaller *installer;
QUrl proxy(void);
volatile bool m_installed;
volatile bool m_error;
QString m_networkerror;
bool m_gotInfo;
bool m_auto;
private slots:
void shutdown(void);
void about(void);
void help(void);
void sysinfo(void);
void trace(void);
void configDialog(void);
void updateDevice(void);
void updateSettings(void);
void completeInstall(void);
void smallInstall(void);
bool smallInstallInner(void);
void installdone(bool error);
void installBtn(void);
bool installAuto(void);
void install(void);
void installBootloaderBtn(void);
bool installBootloaderAuto(void);
void installBootloader(void);
void installBootloaderPost(bool error);
void installFontsBtn(void);
bool installFontsAuto(void);
void installFonts(void);
bool hasDoom(void);
void installDoomBtn(void);
bool installDoomAuto(void);
void installDoom(void);
void createTalkFiles(void);
void createVoiceFile(void);
void downloadDone(bool);
void downloadInfo(void);
void backup(void);
void installVoice(void);
void installThemes(void);
void uninstall(void);
void uninstallBootloader(void);
void installPortable(void);
void updateTabs(int);
void checkUpdate(void);
void downloadUpdateDone(bool errror);
};
#endif