1 ///////////////////////////////////////////////////////////////////////////////
2 // LameXP - Audio Encoder Front-End
3 // Copyright (C) 2004-2012 LoRd_MuldeR <MuldeR2@GMX.de>
5 // This program is free software; you can redistribute it and/or modify
6 // it under the terms of the GNU General Public License as published by
7 // the Free Software Foundation; either version 2 of the License, or
8 // (at your option) any later version.
10 // This program is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU General Public License for more details.
15 // You should have received a copy of the GNU General Public License along
16 // with this program; if not, write to the Free Software Foundation, Inc.,
17 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
19 // http://www.gnu.org/licenses/gpl-2.0.txt
20 ///////////////////////////////////////////////////////////////////////////////
24 #include "..\tmp\UIC_UpdateDialog.h"
32 class UpdateDialog
: public QDialog
, private Ui::UpdateDialog
37 UpdateDialog(SettingsModel
*settings
, QWidget
*parent
= 0);
40 bool getSuccess(void) { return m_success
; }
41 bool updateReadyToInstall(void) { return m_updateReadyToInstall
; }
44 void updateInit(void);
45 void checkForUpdates(void);
46 void linkActivated(const QString
&link
);
47 void applyUpdate(void);
48 void logButtonClicked(void);
49 void progressBarValueChanged(int value
);
52 virtual void showEvent(QShowEvent
*event
);
53 virtual void closeEvent(QCloseEvent
*event
);
54 virtual void keyPressEvent(QKeyEvent
*e
);
55 virtual bool winEvent(MSG
*message
, long *result
);
56 virtual bool event(QEvent
*e
);
58 const bool m_betaUpdates
;
61 bool tryUpdateMirror(UpdateInfo
*updateInfo
, const QString
&url
);
62 bool getFile(const QString
&url
, const QString
&outFile
, unsigned int maxRedir
= 5, bool *httpOk
= NULL
);
63 bool checkSignature(const QString
&file
, const QString
&signature
);
64 bool parseVersionInfo(const QString
&file
, UpdateInfo
*updateInfo
);
65 void testKnownWebSites(void);
67 UpdateInfo
*m_updateInfo
;
68 QStringList
*m_logFile
;
69 SettingsModel
*m_settings
;
72 const QString m_binaryWGet
;
73 const QString m_binaryGnuPG
;
74 const QString m_binaryUpdater
;
75 const QString m_binaryKeys
;
76 unsigned long m_updaterProcess
;
79 bool m_updateReadyToInstall
;