From 310ed2fb533542202628ea2b36bd398a08dc1379 Mon Sep 17 00:00:00 2001 From: Pete Batard Date: Tue, 22 Oct 2013 22:46:59 +0100 Subject: [PATCH] [loc] add an option to force update * This is meant to be used by translators for testing the UI * Also fix the positioning and centering of boilerplate on the new version dialog * French translation improvements --- res/localization/new_translation.loc | 3 ++- res/localization/rufus.loc | 32 +++++++++++++++------------- src/localization_data.h | 1 + src/net.c | 5 ++--- src/resource.h | 1 + src/rufus.c | 10 ++++++++- src/rufus.rc | 20 ++++++++--------- 7 files changed, 42 insertions(+), 30 deletions(-) diff --git a/res/localization/new_translation.loc b/res/localization/new_translation.loc index c882792e..f3dfb7f4 100644 --- a/res/localization/new_translation.loc +++ b/res/localization/new_translation.loc @@ -108,7 +108,7 @@ t IDCANCEL "Close" g IDD_NEW_VERSION t IDD_NEW_VERSION "Check For Updates - Rufus" t IDS_NEW_VERSION_AVAIL_TXT "A newer version is available. Please download the latest version!" -t IDC_WEBSITE " Click here to go to the website" +t IDC_WEBSITE "Click here to go to the website" t IDS_NEW_VERSION_NOTES_GRP "Release Notes" t IDS_NEW_VERSION_DOWNLOAD_GRP "Download" t IDC_DOWNLOAD "Download" @@ -391,3 +391,4 @@ t MSG_255 "NoDriveTypeAutorun will be deleted on exit" t MSG_256 "Fake drive detection" t MSG_257 "Joliet support" t MSG_258 "Rock Ridge support" +t MSG_259 "Force update" diff --git a/res/localization/rufus.loc b/res/localization/rufus.loc index 4d128d1f..0a4ffd3b 100644 --- a/res/localization/rufus.loc +++ b/res/localization/rufus.loc @@ -271,6 +271,7 @@ t MSG_255 "NoDriveTypeAutorun will be deleted on exit" t MSG_256 "Fake drive detection" t MSG_257 "Joliet support" t MSG_258 "Rock Ridge support" +t MSG_259 "Force update" ################################################################################ l "fr-FR" "French (Français)" 0x040c, 0x080c, 0x0c0c, 0x100c, 0x140c, 0x180c, 0x1c0c, 0x200c, 0x240c, 0x280c, 0x2c0c, 0x300c, 0x340c, 0x380c, 0xe40c @@ -333,13 +334,13 @@ t IDS_INCLUDE_BETAS_TXT "Inclure les bétas:" m IDC_UPDATE_FREQUENCY -3,0 m IDC_INCLUDE_BETAS -3,0 s IDC_UPDATE_FREQUENCY +25,0 -m IDS_CHECK_NOW_GRP 20,0 -s IDS_CHECK_NOW_GRP +10,0 +m IDS_CHECK_NOW_GRP 14,0 +s IDS_CHECK_NOW_GRP +16,0 t IDC_CHECK_NOW "Chercher maintenant" -m IDC_CHECK_NOW 9,0 -s IDC_CHECK_NOW +31,0 +m IDC_CHECK_NOW 5,0 +s IDC_CHECK_NOW +34,0 t IDCANCEL "Fermer" -m IDCANCEL 9,0 +m IDCANCEL 5,0 g IDD_NEW_VERSION t IDD_NEW_VERSION "Mise à jour de Rufus" @@ -443,22 +444,22 @@ t MSG_077 "Echec d'assignation d'une lettre de volume." t MSG_078 "Impossible de monter le volume GUID." t MSG_080 "Rufus a detecté que Windows est en train de finir de vider la mémoire tampon.\n\n" - "En fonction de la vitesse de votre périphérique, cette opération peut prendre beaucoup de temps, " - "surtout s'il s'agit d'un fichier volumineux.\n\nNous recommandons d'attendre que Windows " - "complète cette opération, afin d'éviter la corruption du périphérique. Mais si jamais cela prend " - "trop de temps, vous pouvez toujours essayer de déconnecter le média..." + "En fonction de la vitesse de votre périphérique et de la taille du fichier, cette opération peut " + "prendre beaucoup de temps.\n\nNous recommandons d'attendre que Windows complète cette opération " + "pour éviter la corruption du périphérique. Mais si jamais vous en avez marre d'attendre, vous " + "pouvez essayer de déconnecter le média..." t MSG_081 "Image ISO non supportée" -t MSG_082 "Cette version de Rufus supporte seulement les ISOs démarrables qui utilisent bootmgr/WinPE, isolinux ou EFI.\n" - "Cette image ISO ne semble pas utiliser une de ces options..." +t MSG_082 "Cette version de Rufus supporte uniquement les ISOs démarrables à base de bootmgr/WinPE, " + "isolinux ou EFI.\nCette image ISO semble n'utiliser aucune de ces options..." t MSG_083 "Remplacer %s?" t MSG_084 "Cette image ISO utilise une version obsolète du fichier '%s'.\n" - "A cause de cela, les menus de démarrage peuvent de pas fonctionner.\n\n" - "Une nouvelle version du fichier peut être téléchargée par Rufus pour addresser ce problème:\n" + "Les menus de démarrage peuvent de pas fonctionner à cause de cela.\n\n" + "Rufus peut télécharger une nouvelle version du fichier pour résoudre ce problème:\n" "- Choisissez 'Oui' pour télécharger le fichier depuis Internet\n" "- Choisissez 'Non' pour garder le fichier de l'image ISO\n" "Si vous ne savez pas quoi faire, sélectionnez 'Oui'.\n\n" - "Note: Le nouveau fichier est téléchargé dans le répertoire courrant. Une fois qu'un fichier" - "'%s' existe à cet endroit, il sera réutilisé automatiquement." + "Note: Le nouveau fichier sera téléchargé dans le répertoire courrant. " + "Si un '%s' existe à cet endroit, il sera réutilisé automatiquement." t MSG_085 "Téléchargement de %s" t MSG_086 "Aucune image ISO sélectionnée" t MSG_087 "Veuillez cliquer sur le bouton avec un disque pour choisir une image ISO démarrable " @@ -608,6 +609,7 @@ t MSG_255 "NoDriveTypeAutorun sera effacé en sortie" t MSG_256 "Test de contrefaçons" t MSG_257 "Support Joliet" t MSG_258 "Support Rock Ridge" +t MSG_259 "Forçage de mise à jour" ################################################################################ l "zh-CN" "Chinese Simplified (简体中文)" 0x0404, 0x0804, 0x0c04, 0x1004, 0x1404 diff --git a/src/localization_data.h b/src/localization_data.h index d449886c..3a0e280e 100644 --- a/src/localization_data.h +++ b/src/localization_data.h @@ -357,6 +357,7 @@ const loc_control_id control_id[] = { LOC_CTRL(MSG_256), LOC_CTRL(MSG_257), LOC_CTRL(MSG_258), + LOC_CTRL(MSG_259), LOC_CTRL(IDOK), LOC_CTRL(IDCANCEL), LOC_CTRL(IDABORT), diff --git a/src/net.c b/src/net.c index e06c3a6a..5b40cb46 100644 --- a/src/net.c +++ b/src/net.c @@ -41,8 +41,7 @@ /* Default delay between update checks (1 day) */ #define DEFAULT_UPDATE_INTERVAL (24*3600) - -/* Globals */ +extern BOOL force_update; static DWORD error_code; static BOOL update_check_in_progress = FALSE; static BOOL force_update_check = FALSE; @@ -589,7 +588,7 @@ static DWORD WINAPI CheckForUpdatesThread(LPVOID param) vuprintf(" platform_min: %d.%d\n", update.platform_min[0], update.platform_min[1]); vuprintf(" url: %s\n", update.download_url); - found_new_version = (to_uint64_t(update.version) > to_uint64_t(rufus_version)) + found_new_version = ((to_uint64_t(update.version) > to_uint64_t(rufus_version)) || (force_update)) && ( (os_version.dwMajorVersion > update.platform_min[0]) || ( (os_version.dwMajorVersion == update.platform_min[0]) && (os_version.dwMinorVersion >= update.platform_min[1])) ); uprintf("N%sew %s version found%c\n", found_new_version?"":"o n", channel[k], found_new_version?'!':'.'); diff --git a/src/resource.h b/src/resource.h index 1b238dc9..8ba8eabd 100644 --- a/src/resource.h +++ b/src/resource.h @@ -368,6 +368,7 @@ #define MSG_256 3256 #define MSG_257 3257 #define MSG_258 3258 +#define MSG_259 3259 // Next default values for new objects // diff --git a/src/rufus.c b/src/rufus.c index 31b17d40..ae1ce94b 100644 --- a/src/rufus.c +++ b/src/rufus.c @@ -113,7 +113,7 @@ HWND hDeviceList, hPartitionScheme, hFileSystem, hClusterSize, hLabel, hBootType HWND hISOProgressDlg = NULL, hLogDlg = NULL, hISOProgressBar, hISOFileName, hDiskID; BOOL use_own_c32[NB_OLD_C32] = {FALSE, FALSE}, detect_fakes = TRUE, mbr_selected_by_user = FALSE; BOOL iso_op_in_progress = FALSE, format_op_in_progress = FALSE; -BOOL enable_fixed_disks = FALSE, advanced_mode = TRUE; +BOOL enable_fixed_disks = FALSE, advanced_mode = TRUE, force_update = FALSE; int dialog_showing = 0; uint16_t rufus_version[4]; RUFUS_UPDATE update = { {0,0,0,0}, {0,0}, NULL, NULL}; @@ -2099,6 +2099,14 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine DeleteRegistryKey(REGKEY_HKCU, COMPANY_NAME); continue; } + // Alt U => Force the update check to be successful + // This will set the reported current version of Rufus to 0.0.0.0 when performing an update + // check, so that it always succeeds. This is useful for translators. + if ((msg.message == WM_SYSKEYDOWN) && (msg.wParam == 'U')) { + force_update = !force_update; + PrintStatus2000(lmprintf(MSG_259), force_update); + continue; + } TranslateMessage(&msg); DispatchMessage(&msg); } diff --git a/src/rufus.rc b/src/rufus.rc index 34e5469e..ef019dc5 100644 --- a/src/rufus.rc +++ b/src/rufus.rc @@ -33,7 +33,7 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL IDD_DIALOG DIALOGEX 12, 12, 206, 329 STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU EXSTYLE WS_EX_APPWINDOW -CAPTION "Rufus v1.4.0.291" +CAPTION "Rufus v1.4.0.292" FONT 8, "MS Shell Dlg", 400, 0, 0x1 BEGIN DEFPUSHBUTTON "Start",IDC_START,94,291,50,14 @@ -146,7 +146,7 @@ BEGIN END IDD_NEW_VERSION DIALOGEX 0, 0, 384, 268 -STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU CAPTION "Check For Updates - Rufus" FONT 8, "MS Shell Dlg", 400, 0, 0x0 BEGIN @@ -155,10 +155,10 @@ BEGIN DEFPUSHBUTTON "Download",IDC_DOWNLOAD,293,211,74,14,WS_GROUP CONTROL "",IDC_PROGRESS,"msctls_progress32",WS_BORDER,15,212,270,11 GROUPBOX "Release Notes",IDS_NEW_VERSION_NOTES_GRP,8,63,367,111 - LTEXT "A newer version is available. Please download the latest version!",IDS_NEW_VERSION_AVAIL_TXT,10,32,229,8 - LTEXT "[...]",IDC_YOUR_VERSION,10,8,124,8 - LTEXT "[...]",IDC_LATEST_VERSION,10,19,129,8 - LTEXT " Click here to go to the website",IDC_WEBSITE,138,49,108,9,SS_NOTIFY + LTEXT "A newer version is available. Please download the latest version!",IDS_NEW_VERSION_AVAIL_TXT,10,32,366,8 + LTEXT "[...]",IDC_YOUR_VERSION,10,8,366,8 + LTEXT "[...]",IDC_LATEST_VERSION,10,19,366,8 + CTEXT "Click here to go to the website",IDC_WEBSITE,10,49,366,9,SS_NOTIFY GROUPBOX "Download",IDS_NEW_VERSION_DOWNLOAD_GRP,8,177,367,58 EDITTEXT IDC_DOWNLOAD_URL,15,191,351,13,ES_AUTOHSCROLL | ES_READONLY END @@ -284,8 +284,8 @@ END // VS_VERSION_INFO VERSIONINFO - FILEVERSION 1,4,0,291 - PRODUCTVERSION 1,4,0,291 + FILEVERSION 1,4,0,292 + PRODUCTVERSION 1,4,0,292 FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L @@ -302,13 +302,13 @@ BEGIN BEGIN VALUE "CompanyName", "Akeo Consulting (http://akeo.ie)" VALUE "FileDescription", "Rufus" - VALUE "FileVersion", "1.4.0.291" + VALUE "FileVersion", "1.4.0.292" VALUE "InternalName", "Rufus" VALUE "LegalCopyright", "© 2011-2013 Pete Batard (GPL v3)" VALUE "LegalTrademarks", "http://www.gnu.org/copyleft/gpl.html" VALUE "OriginalFilename", "rufus.exe" VALUE "ProductName", "Rufus" - VALUE "ProductVersion", "1.4.0.291" + VALUE "ProductVersion", "1.4.0.292" END END BLOCK "VarFileInfo"