Added busy animation to "Update" dialog + added timeout for Wget process.
This commit is contained in:
parent
5eec1b5931
commit
df8258cddf
@ -1714,7 +1714,7 @@
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Please make sure your internet connection is working properly and try again.</source>
|
<source>Please make sure your internet connection is working properly and try again.</source>
|
||||||
<translation>Bitte überprüfen Sie Ihre Internetverbindung und versuchen Sie es dann noch einmal.</translation>
|
<translation>Bitte prüfen Sie Ihre Internetverbindung und versuchen Sie es dann noch einmal.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Checking for new updates online, please wait...</source>
|
<source>Checking for new updates online, please wait...</source>
|
||||||
@ -1742,7 +1742,7 @@
|
|||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>No new updates available at this time.</source>
|
<source>No new updates available at this time.</source>
|
||||||
<translation>Zu diesem Zeitpunkt sind keine Updates verfügabr.</translation>
|
<translation>Zu diesem Zeitpunkt sind keine Updates verfügbar.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<source>Your version of LameXP is still up-to-date. Please check for updates regularly!</source>
|
<source>Your version of LameXP is still up-to-date. Please check for updates regularly!</source>
|
||||||
|
@ -2159,108 +2159,108 @@
|
|||||||
<translation>пожалуйста, подождите...</translation>
|
<translation>пожалуйста, подождите...</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../gui/UpdateDialog.ui" line="242"/>
|
<location filename="../../gui/UpdateDialog.ui" line="349"/>
|
||||||
<source>Latest version available:</source>
|
<source>Latest version available:</source>
|
||||||
<translation>Последняя доступная версия:</translation>
|
<translation>Последняя доступная версия:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../gui/UpdateDialog.ui" line="256"/>
|
<location filename="../../gui/UpdateDialog.ui" line="363"/>
|
||||||
<source>Currently installed version:</source>
|
<source>Currently installed version:</source>
|
||||||
<translation>Установленная верися:</translation>
|
<translation>Установленная верися:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../gui/UpdateDialog.ui" line="371"/>
|
<location filename="../../gui/UpdateDialog.ui" line="478"/>
|
||||||
<source>Retry</source>
|
<source>Retry</source>
|
||||||
<translation>Повторить</translation>
|
<translation>Повторить</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../gui/UpdateDialog.ui" line="394"/>
|
<location filename="../../gui/UpdateDialog.ui" line="501"/>
|
||||||
<source>Show Log</source>
|
<source>Show Log</source>
|
||||||
<translation>Показать Лог</translation>
|
<translation>Показать Лог</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../gui/UpdateDialog.ui" line="482"/>
|
<location filename="../../gui/UpdateDialog.ui" line="589"/>
|
||||||
<source>Download && Install</source>
|
<source>Download && Install</source>
|
||||||
<translation>Скачать и Установить</translation>
|
<translation>Скачать и Установить</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../gui/UpdateDialog.ui" line="505"/>
|
<location filename="../../gui/UpdateDialog.ui" line="612"/>
|
||||||
<source>Close</source>
|
<source>Close</source>
|
||||||
<translation>Закрыть</translation>
|
<translation>Закрыть</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/Dialog_Update.cpp" line="154"/>
|
<location filename="../../src/Dialog_Update.cpp" line="169"/>
|
||||||
<location filename="../../src/Dialog_Update.cpp" line="310"/>
|
<location filename="../../src/Dialog_Update.cpp" line="350"/>
|
||||||
<source>Build</source>
|
<source>Build</source>
|
||||||
<translation type="unfinished">Сборка</translation>
|
<translation type="unfinished">Сборка</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/Dialog_Update.cpp" line="155"/>
|
<location filename="../../src/Dialog_Update.cpp" line="170"/>
|
||||||
<source>Unknown</source>
|
<source>Unknown</source>
|
||||||
<translation type="unfinished">Неизвестно</translation>
|
<translation type="unfinished">Неизвестно</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/Dialog_Update.cpp" line="230"/>
|
<location filename="../../src/Dialog_Update.cpp" line="247"/>
|
||||||
<source>Testing your internet connection, please wait...</source>
|
<source>Testing your internet connection, please wait...</source>
|
||||||
<translation type="unfinished">Проверяю соединение с сетью, пожалуйста, подождите...</translation>
|
<translation type="unfinished">Проверяю соединение с сетью, пожалуйста, подождите...</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/Dialog_Update.cpp" line="257"/>
|
<location filename="../../src/Dialog_Update.cpp" line="283"/>
|
||||||
<source>Network connectivity test has failed!</source>
|
<source>Network connectivity test has failed!</source>
|
||||||
<translation type="unfinished">Нет соединения с сетью!</translation>
|
<translation type="unfinished">Нет соединения с сетью!</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/Dialog_Update.cpp" line="260"/>
|
<location filename="../../src/Dialog_Update.cpp" line="286"/>
|
||||||
<source>Please make sure your internet connection is working properly and try again.</source>
|
<source>Please make sure your internet connection is working properly and try again.</source>
|
||||||
<translation type="unfinished">Проверьте доступность интернет соединения и попробуйте снова.</translation>
|
<translation type="unfinished">Проверьте доступность интернет соединения и попробуйте снова.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/Dialog_Update.cpp" line="272"/>
|
<location filename="../../src/Dialog_Update.cpp" line="298"/>
|
||||||
<source>Checking for new updates online, please wait...</source>
|
<source>Checking for new updates online, please wait...</source>
|
||||||
<translation type="unfinished">Проверяю обновлений, пожалйста, подождите...</translation>
|
<translation type="unfinished">Проверяю обновлений, пожалйста, подождите...</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/Dialog_Update.cpp" line="297"/>
|
<location filename="../../src/Dialog_Update.cpp" line="337"/>
|
||||||
<source>Failed to fetch update information from server!</source>
|
<source>Failed to fetch update information from server!</source>
|
||||||
<translation type="unfinished">Немогу получить информацию об обновлениях с сервера!</translation>
|
<translation type="unfinished">Немогу получить информацию об обновлениях с сервера!</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/Dialog_Update.cpp" line="302"/>
|
<location filename="../../src/Dialog_Update.cpp" line="342"/>
|
||||||
<source>Sorry, the update server might be busy at this time. Plase try again later.</source>
|
<source>Sorry, the update server might be busy at this time. Plase try again later.</source>
|
||||||
<translation type="unfinished">Извините, сервер обновлений сейчас недоступен. Пожалуйста попробуйте позднее.</translation>
|
<translation type="unfinished">Извините, сервер обновлений сейчас недоступен. Пожалуйста попробуйте позднее.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/Dialog_Update.cpp" line="312"/>
|
<location filename="../../src/Dialog_Update.cpp" line="352"/>
|
||||||
<source>More information available at:</source>
|
<source>More information available at:</source>
|
||||||
<translation type="unfinished">Больше информации доступно здесь:</translation>
|
<translation type="unfinished">Больше информации доступно здесь:</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/Dialog_Update.cpp" line="318"/>
|
<location filename="../../src/Dialog_Update.cpp" line="358"/>
|
||||||
<source>A new version of LameXP is available!</source>
|
<source>A new version of LameXP is available!</source>
|
||||||
<translation>Новя версия LameXP доступна!</translation>
|
<translation>Новя версия LameXP доступна!</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/Dialog_Update.cpp" line="320"/>
|
<location filename="../../src/Dialog_Update.cpp" line="360"/>
|
||||||
<source>We highly recommend all users to install this update as soon as possible.</source>
|
<source>We highly recommend all users to install this update as soon as possible.</source>
|
||||||
<translation type="unfinished">Мы очень рекомендуем установить это обновлений как можо скорее.</translation>
|
<translation type="unfinished">Мы очень рекомендуем установить это обновлений как можо скорее.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/Dialog_Update.cpp" line="328"/>
|
<location filename="../../src/Dialog_Update.cpp" line="369"/>
|
||||||
<source>No new updates available at this time.</source>
|
<source>No new updates available at this time.</source>
|
||||||
<translation type="unfinished">Нет обновлений.</translation>
|
<translation type="unfinished">Нет обновлений.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/Dialog_Update.cpp" line="330"/>
|
<location filename="../../src/Dialog_Update.cpp" line="371"/>
|
||||||
<source>Your version of LameXP is still up-to-date. Please check for updates regularly!</source>
|
<source>Your version of LameXP is still up-to-date. Please check for updates regularly!</source>
|
||||||
<translation type="unfinished">Вы используете самую новую версию LameXP. Проверяйте обновления регулярно!</translation>
|
<translation type="unfinished">Вы используете самую новую версию LameXP. Проверяйте обновления регулярно!</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/Dialog_Update.cpp" line="338"/>
|
<location filename="../../src/Dialog_Update.cpp" line="380"/>
|
||||||
<source>Your version appears to be newer than the latest release.</source>
|
<source>Your version appears to be newer than the latest release.</source>
|
||||||
<translation type="unfinished">Установленная версия новее чем последний релиз.</translation>
|
<translation type="unfinished">Установленная версия новее чем последний релиз.</translation>
|
||||||
</message>
|
</message>
|
||||||
<message>
|
<message>
|
||||||
<location filename="../../src/Dialog_Update.cpp" line="340"/>
|
<location filename="../../src/Dialog_Update.cpp" line="382"/>
|
||||||
<source>This usually indicates your are currently using a pre-release version of LameXP.</source>
|
<source>This usually indicates your are currently using a pre-release version of LameXP.</source>
|
||||||
<translation type="unfinished">Это обычно показывает, что вы используете бета версию LameXP.</translation>
|
<translation type="unfinished">Это обычно показывает, что вы используете бета версию LameXP.</translation>
|
||||||
</message>
|
</message>
|
||||||
|
@ -188,6 +188,113 @@
|
|||||||
</property>
|
</property>
|
||||||
</spacer>
|
</spacer>
|
||||||
</item>
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QFrame" name="frameAnimation">
|
||||||
|
<property name="frameShape">
|
||||||
|
<enum>QFrame::NoFrame</enum>
|
||||||
|
</property>
|
||||||
|
<property name="frameShadow">
|
||||||
|
<enum>QFrame::Raised</enum>
|
||||||
|
</property>
|
||||||
|
<layout class="QHBoxLayout" name="horizontalLayout_7">
|
||||||
|
<property name="margin">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<item>
|
||||||
|
<layout class="QHBoxLayout" name="horizontalLayout_6">
|
||||||
|
<item>
|
||||||
|
<spacer name="horizontalSpacer_7">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>40</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="labelAnimationLeft">
|
||||||
|
<property name="text">
|
||||||
|
<string/>
|
||||||
|
</property>
|
||||||
|
<property name="pixmap">
|
||||||
|
<pixmap resource="../res/Icons.qrc">:/icons/transmit.png</pixmap>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<spacer name="horizontalSpacer_9">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeType">
|
||||||
|
<enum>QSizePolicy::Fixed</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>6</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="labelAnimationCenter">
|
||||||
|
<property name="text">
|
||||||
|
<string/>
|
||||||
|
</property>
|
||||||
|
<property name="pixmap">
|
||||||
|
<pixmap resource="../res/Images.qrc">:/images/Loading3.gif</pixmap>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<spacer name="horizontalSpacer_10">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeType">
|
||||||
|
<enum>QSizePolicy::Fixed</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>6</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="labelAnimationRight">
|
||||||
|
<property name="text">
|
||||||
|
<string/>
|
||||||
|
</property>
|
||||||
|
<property name="pixmap">
|
||||||
|
<pixmap resource="../res/Icons.qrc">:/icons/computer.png</pixmap>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<spacer name="horizontalSpacer_8">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>40</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout_5">
|
<layout class="QHBoxLayout" name="horizontalLayout_5">
|
||||||
<property name="spacing">
|
<property name="spacing">
|
||||||
@ -587,6 +694,12 @@
|
|||||||
<include location="../res/Images.qrc"/>
|
<include location="../res/Images.qrc"/>
|
||||||
<include location="../res/Icons.qrc"/>
|
<include location="../res/Icons.qrc"/>
|
||||||
<include location="../res/Images.qrc"/>
|
<include location="../res/Images.qrc"/>
|
||||||
|
<include location="../res/Icons.qrc"/>
|
||||||
|
<include location="../res/Images.qrc"/>
|
||||||
|
<include location="../res/Icons.qrc"/>
|
||||||
|
<include location="../res/Images.qrc"/>
|
||||||
|
<include location="../res/Icons.qrc"/>
|
||||||
|
<include location="../res/Images.qrc"/>
|
||||||
</resources>
|
</resources>
|
||||||
<connections>
|
<connections>
|
||||||
<connection>
|
<connection>
|
||||||
|
@ -77,6 +77,7 @@
|
|||||||
<file>icons/table_edit.png</file>
|
<file>icons/table_edit.png</file>
|
||||||
<file>icons/tick.png</file>
|
<file>icons/tick.png</file>
|
||||||
<file>icons/timeline_marker.png</file>
|
<file>icons/timeline_marker.png</file>
|
||||||
|
<file>icons/transmit.png</file>
|
||||||
<file>icons/transmit_blue.png</file>
|
<file>icons/transmit_blue.png</file>
|
||||||
<file>icons/user.png</file>
|
<file>icons/user.png</file>
|
||||||
<file>icons/user_suit.png</file>
|
<file>icons/user_suit.png</file>
|
||||||
|
@ -8,6 +8,8 @@
|
|||||||
<file>images/HeaderIcon_MetaInfo.png</file>
|
<file>images/HeaderIcon_MetaInfo.png</file>
|
||||||
<file>images/Label.png</file>
|
<file>images/Label.png</file>
|
||||||
<file>images/Loading.gif</file>
|
<file>images/Loading.gif</file>
|
||||||
|
<file>images/Loading2.gif</file>
|
||||||
|
<file>images/Loading3.gif</file>
|
||||||
<file>images/Logo.png</file>
|
<file>images/Logo.png</file>
|
||||||
<file>images/Logo_Contributors.png</file>
|
<file>images/Logo_Contributors.png</file>
|
||||||
<file>images/Logo_Software.png</file>
|
<file>images/Logo_Software.png</file>
|
||||||
|
BIN
res/images/Loading3.gif
Normal file
BIN
res/images/Loading3.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.2 KiB |
Binary file not shown.
@ -25,7 +25,7 @@
|
|||||||
#define VER_LAMEXP_MAJOR 4
|
#define VER_LAMEXP_MAJOR 4
|
||||||
#define VER_LAMEXP_MINOR_HI 0
|
#define VER_LAMEXP_MINOR_HI 0
|
||||||
#define VER_LAMEXP_MINOR_LO 1
|
#define VER_LAMEXP_MINOR_LO 1
|
||||||
#define VER_LAMEXP_BUILD 400
|
#define VER_LAMEXP_BUILD 402
|
||||||
#define VER_LAMEXP_SUFFIX Beta-13
|
#define VER_LAMEXP_SUFFIX Beta-13
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -36,8 +36,10 @@
|
|||||||
#include <QDesktopServices>
|
#include <QDesktopServices>
|
||||||
#include <QUrl>
|
#include <QUrl>
|
||||||
#include <QCloseEvent>
|
#include <QCloseEvent>
|
||||||
|
#include <QMovie>
|
||||||
|
|
||||||
#include <Windows.h>
|
#include <Windows.h>
|
||||||
|
#include <time.h>
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
@ -58,6 +60,7 @@ static const char *update_mirrors[] =
|
|||||||
"http://free.pages.at/borschdfresser/",
|
"http://free.pages.at/borschdfresser/",
|
||||||
"http://mplayer.savedonthe.net/",
|
"http://mplayer.savedonthe.net/",
|
||||||
"http://www.tricksoft.de/",
|
"http://www.tricksoft.de/",
|
||||||
|
"http://mplayer.somestuff.org/",
|
||||||
NULL
|
NULL
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -69,10 +72,14 @@ static const char *known_hosts[] =
|
|||||||
"http://www.msn.com/",
|
"http://www.msn.com/",
|
||||||
"http://www.yahoo.com/",
|
"http://www.yahoo.com/",
|
||||||
"http://sourceforge.net/",
|
"http://sourceforge.net/",
|
||||||
|
"http://www.gitorious.org/",
|
||||||
|
"http://www.youtube.com/",
|
||||||
|
"http://www.ebay.com/",
|
||||||
|
"http://www.amazon.com/",
|
||||||
NULL
|
NULL
|
||||||
};
|
};
|
||||||
|
|
||||||
static const int MIN_CONNSCORE = 2;
|
static const int MIN_CONNSCORE = 3;
|
||||||
static char *USER_AGENT_STR = "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.12) Gecko/20101101 IceCat/3.6.12 (like Firefox/3.6.12)";
|
static char *USER_AGENT_STR = "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.12) Gecko/20101101 IceCat/3.6.12 (like Firefox/3.6.12)";
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
@ -128,6 +135,11 @@ UpdateDialog::UpdateDialog(SettingsModel *settings, QWidget *parent)
|
|||||||
HMENU hMenu = GetSystemMenu((HWND) winId(), FALSE);
|
HMENU hMenu = GetSystemMenu((HWND) winId(), FALSE);
|
||||||
EnableMenuItem(hMenu, SC_CLOSE, MF_BYCOMMAND | MF_GRAYED);
|
EnableMenuItem(hMenu, SC_CLOSE, MF_BYCOMMAND | MF_GRAYED);
|
||||||
|
|
||||||
|
//Init animation
|
||||||
|
m_animator = new QMovie(":/images/Loading3.gif");
|
||||||
|
labelAnimationCenter->setMovie(m_animator);
|
||||||
|
m_animator->start();
|
||||||
|
|
||||||
//Enable button
|
//Enable button
|
||||||
connect(retryButton, SIGNAL(clicked()), this, SLOT(checkForUpdates()));
|
connect(retryButton, SIGNAL(clicked()), this, SLOT(checkForUpdates()));
|
||||||
connect(installButton, SIGNAL(clicked()), this, SLOT(applyUpdate()));
|
connect(installButton, SIGNAL(clicked()), this, SLOT(applyUpdate()));
|
||||||
@ -140,8 +152,11 @@ UpdateDialog::UpdateDialog(SettingsModel *settings, QWidget *parent)
|
|||||||
|
|
||||||
UpdateDialog::~UpdateDialog(void)
|
UpdateDialog::~UpdateDialog(void)
|
||||||
{
|
{
|
||||||
|
if(m_animator) m_animator->stop();
|
||||||
|
|
||||||
LAMEXP_DELETE(m_updateInfo);
|
LAMEXP_DELETE(m_updateInfo);
|
||||||
LAMEXP_DELETE(m_logFile);
|
LAMEXP_DELETE(m_logFile);
|
||||||
|
LAMEXP_DELETE(m_animator);
|
||||||
|
|
||||||
WinSevenTaskbar::setTaskbarState(this->parentWidget(), WinSevenTaskbar::WinSevenTaskbarNoState);
|
WinSevenTaskbar::setTaskbarState(this->parentWidget(), WinSevenTaskbar::WinSevenTaskbarNoState);
|
||||||
WinSevenTaskbar::setOverlayIcon(this->parentWidget(), NULL);
|
WinSevenTaskbar::setOverlayIcon(this->parentWidget(), NULL);
|
||||||
@ -164,6 +179,7 @@ void UpdateDialog::showEvent(QShowEvent *event)
|
|||||||
infoLabel->hide();
|
infoLabel->hide();
|
||||||
hintLabel->hide();
|
hintLabel->hide();
|
||||||
hintIcon->hide();
|
hintIcon->hide();
|
||||||
|
frameAnimation->hide();
|
||||||
|
|
||||||
int counter = 2;
|
int counter = 2;
|
||||||
for(int i = 0; known_hosts[i]; i++) counter++;
|
for(int i = 0; known_hosts[i]; i++) counter++;
|
||||||
@ -223,6 +239,7 @@ void UpdateDialog::checkForUpdates(void)
|
|||||||
if(infoLabel->isVisible()) infoLabel->hide();
|
if(infoLabel->isVisible()) infoLabel->hide();
|
||||||
if(hintLabel->isVisible()) hintLabel->hide();
|
if(hintLabel->isVisible()) hintLabel->hide();
|
||||||
if(hintIcon->isVisible()) hintIcon->hide();
|
if(hintIcon->isVisible()) hintIcon->hide();
|
||||||
|
frameAnimation->show();
|
||||||
|
|
||||||
QApplication::processEvents();
|
QApplication::processEvents();
|
||||||
QApplication::setOverrideCursor(Qt::WaitCursor);
|
QApplication::setOverrideCursor(Qt::WaitCursor);
|
||||||
@ -232,14 +249,22 @@ void UpdateDialog::checkForUpdates(void)
|
|||||||
m_logFile->clear();
|
m_logFile->clear();
|
||||||
m_logFile->append("Checking internet connection...");
|
m_logFile->append("Checking internet connection...");
|
||||||
|
|
||||||
|
QStringList hostList;
|
||||||
for(int i = 0; known_hosts[i]; i++)
|
for(int i = 0; known_hosts[i]; i++)
|
||||||
|
{
|
||||||
|
hostList << QString::fromLatin1(known_hosts[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
qsrand(time(NULL));
|
||||||
|
while(!hostList.isEmpty())
|
||||||
{
|
{
|
||||||
progressBar->setValue(progressBar->value() + 1);
|
progressBar->setValue(progressBar->value() + 1);
|
||||||
|
QString currentHost = hostList.takeAt(qrand() % hostList.count());
|
||||||
if(connectionScore < MIN_CONNSCORE)
|
if(connectionScore < MIN_CONNSCORE)
|
||||||
{
|
{
|
||||||
m_logFile->append(QStringList() << "" << "Testing host:" << known_hosts[i] << "");
|
m_logFile->append(QStringList() << "" << "Testing host:" << currentHost << "");
|
||||||
QString outFile = QString("%1/%2.htm").arg(lamexp_temp_folder2(), lamexp_rand_str());
|
QString outFile = QString("%1/%2.htm").arg(lamexp_temp_folder2(), lamexp_rand_str());
|
||||||
if(getFile(known_hosts[i], outFile))
|
if(getFile(currentHost, outFile))
|
||||||
{
|
{
|
||||||
connectionScore++;
|
connectionScore++;
|
||||||
}
|
}
|
||||||
@ -254,6 +279,7 @@ void UpdateDialog::checkForUpdates(void)
|
|||||||
closeButton->setEnabled(true);
|
closeButton->setEnabled(true);
|
||||||
retryButton->setEnabled(true);
|
retryButton->setEnabled(true);
|
||||||
logButton->setEnabled(true);
|
logButton->setEnabled(true);
|
||||||
|
if(frameAnimation->isVisible()) frameAnimation->hide();
|
||||||
statusLabel->setText(tr("Network connectivity test has failed!"));
|
statusLabel->setText(tr("Network connectivity test has failed!"));
|
||||||
progressBar->setValue(progressBar->maximum());
|
progressBar->setValue(progressBar->maximum());
|
||||||
hintIcon->setPixmap(QIcon(":/icons/error.png").pixmap(16,16));
|
hintIcon->setPixmap(QIcon(":/icons/error.png").pixmap(16,16));
|
||||||
@ -272,12 +298,25 @@ void UpdateDialog::checkForUpdates(void)
|
|||||||
statusLabel->setText(tr("Checking for new updates online, please wait..."));
|
statusLabel->setText(tr("Checking for new updates online, please wait..."));
|
||||||
m_logFile->append("Checking for updates online...");
|
m_logFile->append("Checking for updates online...");
|
||||||
|
|
||||||
|
QStringList mirrorList;
|
||||||
for(int i = 0; update_mirrors[i]; i++)
|
for(int i = 0; update_mirrors[i]; i++)
|
||||||
{
|
{
|
||||||
|
mirrorList << QString::fromLatin1(update_mirrors[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
qsrand(time(NULL));
|
||||||
|
for(int i = 0; i < 16; i++)
|
||||||
|
{
|
||||||
|
mirrorList.swap(i % 4, qrand() % 4);
|
||||||
|
}
|
||||||
|
|
||||||
|
while(!mirrorList.isEmpty())
|
||||||
|
{
|
||||||
|
QString currentMirror = mirrorList.takeFirst();
|
||||||
progressBar->setValue(progressBar->value() + 1);
|
progressBar->setValue(progressBar->value() + 1);
|
||||||
if(!success)
|
if(!success)
|
||||||
{
|
{
|
||||||
if(tryUpdateMirror(m_updateInfo, update_mirrors[i]))
|
if(tryUpdateMirror(m_updateInfo, currentMirror))
|
||||||
{
|
{
|
||||||
success = true;
|
success = true;
|
||||||
}
|
}
|
||||||
@ -294,6 +333,7 @@ void UpdateDialog::checkForUpdates(void)
|
|||||||
closeButton->setEnabled(true);
|
closeButton->setEnabled(true);
|
||||||
retryButton->setEnabled(true);
|
retryButton->setEnabled(true);
|
||||||
logButton->setEnabled(true);
|
logButton->setEnabled(true);
|
||||||
|
if(frameAnimation->isVisible()) frameAnimation->hide();
|
||||||
statusLabel->setText(tr("Failed to fetch update information from server!"));
|
statusLabel->setText(tr("Failed to fetch update information from server!"));
|
||||||
progressBar->setValue(progressBar->maximum());
|
progressBar->setValue(progressBar->maximum());
|
||||||
WinSevenTaskbar::setTaskbarState(this->parentWidget(), WinSevenTaskbar::WinSevenTaskbarErrorState);
|
WinSevenTaskbar::setTaskbarState(this->parentWidget(), WinSevenTaskbar::WinSevenTaskbarErrorState);
|
||||||
@ -318,6 +358,7 @@ void UpdateDialog::checkForUpdates(void)
|
|||||||
statusLabel->setText(tr("A new version of LameXP is available!"));
|
statusLabel->setText(tr("A new version of LameXP is available!"));
|
||||||
hintIcon->setPixmap(QIcon(":/icons/shield_exclamation.png").pixmap(16,16));
|
hintIcon->setPixmap(QIcon(":/icons/shield_exclamation.png").pixmap(16,16));
|
||||||
hintLabel->setText(tr("We highly recommend all users to install this update as soon as possible."));
|
hintLabel->setText(tr("We highly recommend all users to install this update as soon as possible."));
|
||||||
|
if(frameAnimation->isVisible()) frameAnimation->hide();
|
||||||
hintIcon->show();
|
hintIcon->show();
|
||||||
hintLabel->show();
|
hintLabel->show();
|
||||||
WinSevenTaskbar::setOverlayIcon(this->parentWidget(), &QIcon(":/icons/shield_exclamation.png"));
|
WinSevenTaskbar::setOverlayIcon(this->parentWidget(), &QIcon(":/icons/shield_exclamation.png"));
|
||||||
@ -328,6 +369,7 @@ void UpdateDialog::checkForUpdates(void)
|
|||||||
statusLabel->setText(tr("No new updates available at this time."));
|
statusLabel->setText(tr("No new updates available at this time."));
|
||||||
hintIcon->setPixmap(QIcon(":/icons/shield_green.png").pixmap(16,16));
|
hintIcon->setPixmap(QIcon(":/icons/shield_green.png").pixmap(16,16));
|
||||||
hintLabel->setText(tr("Your version of LameXP is still up-to-date. Please check for updates regularly!"));
|
hintLabel->setText(tr("Your version of LameXP is still up-to-date. Please check for updates regularly!"));
|
||||||
|
if(frameAnimation->isVisible()) frameAnimation->hide();
|
||||||
hintIcon->show();
|
hintIcon->show();
|
||||||
hintLabel->show();
|
hintLabel->show();
|
||||||
WinSevenTaskbar::setOverlayIcon(this->parentWidget(), &QIcon(":/icons/shield_green.png"));
|
WinSevenTaskbar::setOverlayIcon(this->parentWidget(), &QIcon(":/icons/shield_green.png"));
|
||||||
@ -338,6 +380,7 @@ void UpdateDialog::checkForUpdates(void)
|
|||||||
statusLabel->setText(tr("Your version appears to be newer than the latest release."));
|
statusLabel->setText(tr("Your version appears to be newer than the latest release."));
|
||||||
hintIcon->setPixmap(QIcon(":/icons/bug.png").pixmap(16,16));
|
hintIcon->setPixmap(QIcon(":/icons/bug.png").pixmap(16,16));
|
||||||
hintLabel->setText(tr("This usually indicates your are currently using a pre-release version of LameXP."));
|
hintLabel->setText(tr("This usually indicates your are currently using a pre-release version of LameXP."));
|
||||||
|
if(frameAnimation->isVisible()) frameAnimation->hide();
|
||||||
hintIcon->show();
|
hintIcon->show();
|
||||||
hintLabel->show();
|
hintLabel->show();
|
||||||
WinSevenTaskbar::setOverlayIcon(this->parentWidget(), &QIcon(":/icons/bug.png"));
|
WinSevenTaskbar::setOverlayIcon(this->parentWidget(), &QIcon(":/icons/bug.png"));
|
||||||
@ -347,6 +390,7 @@ void UpdateDialog::checkForUpdates(void)
|
|||||||
closeButton->setEnabled(true);
|
closeButton->setEnabled(true);
|
||||||
if(retryButton->isVisible()) retryButton->hide();
|
if(retryButton->isVisible()) retryButton->hide();
|
||||||
if(logButton->isVisible()) logButton->hide();
|
if(logButton->isVisible()) logButton->hide();
|
||||||
|
if(frameAnimation->isVisible()) frameAnimation->hide();
|
||||||
|
|
||||||
m_success = true;
|
m_success = true;
|
||||||
}
|
}
|
||||||
@ -414,6 +458,11 @@ bool UpdateDialog::getFile(const QString &url, const QString &outFile)
|
|||||||
connect(&process, SIGNAL(finished(int,QProcess::ExitStatus)), &loop, SLOT(quit()));
|
connect(&process, SIGNAL(finished(int,QProcess::ExitStatus)), &loop, SLOT(quit()));
|
||||||
connect(&process, SIGNAL(readyRead()), &loop, SLOT(quit()));
|
connect(&process, SIGNAL(readyRead()), &loop, SLOT(quit()));
|
||||||
|
|
||||||
|
QTimer timer;
|
||||||
|
timer.setSingleShot(true);
|
||||||
|
timer.setInterval(15000);
|
||||||
|
connect(&timer, SIGNAL(timeout()), &loop, SLOT(quit()));
|
||||||
|
|
||||||
process.start(m_binaryWGet, QStringList() << "-U" << USER_AGENT_STR << "-O" << output.fileName() << url);
|
process.start(m_binaryWGet, QStringList() << "-U" << USER_AGENT_STR << "-O" << output.fileName() << url);
|
||||||
|
|
||||||
if(!process.waitForStarted())
|
if(!process.waitForStarted())
|
||||||
@ -421,15 +470,28 @@ bool UpdateDialog::getFile(const QString &url, const QString &outFile)
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
timer.start();
|
||||||
|
|
||||||
while(process.state() == QProcess::Running)
|
while(process.state() == QProcess::Running)
|
||||||
{
|
{
|
||||||
loop.exec();
|
loop.exec();
|
||||||
|
if(!timer.isActive())
|
||||||
|
{
|
||||||
|
qWarning("WGet process timed out <-- killing!");
|
||||||
|
process.kill();
|
||||||
|
process.waitForFinished();
|
||||||
|
m_logFile->append("TIMEOUT !!!");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
while(process.canReadLine())
|
while(process.canReadLine())
|
||||||
{
|
{
|
||||||
m_logFile->append(QString::fromLatin1(process.readLine()).simplified());
|
m_logFile->append(QString::fromLatin1(process.readLine()).simplified());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
timer.stop();
|
||||||
|
timer.disconnect(&timer, SIGNAL(timeout()), &loop, SLOT(quit()));
|
||||||
|
|
||||||
m_logFile->append(QString().sprintf("Exited with code %d", process.exitCode()));
|
m_logFile->append(QString().sprintf("Exited with code %d", process.exitCode()));
|
||||||
return (process.exitCode() == 0) && output.exists() && output.isFile();
|
return (process.exitCode() == 0) && output.exists() && output.isFile();
|
||||||
}
|
}
|
||||||
|
@ -27,6 +27,7 @@
|
|||||||
|
|
||||||
class UpdateInfo;
|
class UpdateInfo;
|
||||||
class SettingsModel;
|
class SettingsModel;
|
||||||
|
class QMovie;
|
||||||
|
|
||||||
class UpdateDialog : public QDialog, private Ui::UpdateDialog
|
class UpdateDialog : public QDialog, private Ui::UpdateDialog
|
||||||
{
|
{
|
||||||
@ -61,6 +62,7 @@ private:
|
|||||||
UpdateInfo *m_updateInfo;
|
UpdateInfo *m_updateInfo;
|
||||||
QStringList *m_logFile;
|
QStringList *m_logFile;
|
||||||
SettingsModel *m_settings;
|
SettingsModel *m_settings;
|
||||||
|
QMovie *m_animator;
|
||||||
|
|
||||||
const QString m_binaryWGet;
|
const QString m_binaryWGet;
|
||||||
const QString m_binaryGnuPG;
|
const QString m_binaryGnuPG;
|
||||||
|
Loading…
Reference in New Issue
Block a user