From 71bcd120d30ce44509eb6e0be181a95966d2e64a Mon Sep 17 00:00:00 2001 From: joostverburg Date: Thu, 8 Jan 2004 21:26:02 +0000 Subject: [PATCH] improved user interface git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@3374 212acab6-be3b-0410-9dea-997c60f758d6 --- .../{Resources/BIN => }/ExtractDLL.dll | Bin Contrib/NSIS Update/Method.ini | 60 +++ Contrib/NSIS Update/NSISUpdate.nsi | 432 +++++++++--------- .../NSIS Update/Resources/GUI/NSISUpdate.exe | Bin 4608 -> 0 bytes Contrib/NSIS Update/Resources/GUI/io.ini | 38 -- Contrib/NSIS Update/UI.exe | Bin 0 -> 4096 bytes 6 files changed, 276 insertions(+), 254 deletions(-) rename Contrib/NSIS Update/{Resources/BIN => }/ExtractDLL.dll (100%) create mode 100644 Contrib/NSIS Update/Method.ini delete mode 100644 Contrib/NSIS Update/Resources/GUI/NSISUpdate.exe delete mode 100644 Contrib/NSIS Update/Resources/GUI/io.ini create mode 100644 Contrib/NSIS Update/UI.exe diff --git a/Contrib/NSIS Update/Resources/BIN/ExtractDLL.dll b/Contrib/NSIS Update/ExtractDLL.dll similarity index 100% rename from Contrib/NSIS Update/Resources/BIN/ExtractDLL.dll rename to Contrib/NSIS Update/ExtractDLL.dll diff --git a/Contrib/NSIS Update/Method.ini b/Contrib/NSIS Update/Method.ini new file mode 100644 index 00000000..1d6610b2 --- /dev/null +++ b/Contrib/NSIS Update/Method.ini @@ -0,0 +1,60 @@ +[Settings] +NumFields=7 + +[Field 1] +Type=RadioButton +Text=Check for a new tested release (recommended) +State=1 +Left=4 +Right=-73 +Top=4 +Bottom=12 + +[Field 2] +Type=RadioButton +Text=Download the latest development files and merge your changes +Left=4 +Right=-41 +Top=38 +Bottom=46 + +[Field 3] +Type=RadioButton +Text=Download a clean copy of the latest development files +Left=4 +Right=-9 +Top=87 +Bottom=95 + +[Field 4] +Type=Label +Text=Checks the NSIS Website for a new tested NSIS release. +Left=21 +Right=303 +Top=19 +Bottom=27 + +[Field 5] +Type=Label +Text=Downloads the development files from the CVS server. Use them to test the latest cutting-edge features and bugfixes. Not recommended for production environments. This update option merges changes you made in text files. +Left=21 +Right=303 +Top=52 +Bottom=81 + +[Field 6] +Type=Label +Text=Same as the options above, but removes any changes you made in the NSIS files. +Left=21 +Right=300 +Top=102 +Bottom=110 + +[Field 7] +Type=Label +Text=Important: Please close all other NSIS utilities before updating. +Left=5 +Right=-9 +Top=126 +Bottom=137 + diff --git a/Contrib/NSIS Update/NSISUpdate.nsi b/Contrib/NSIS Update/NSISUpdate.nsi index 2dd29df6..de15e448 100644 --- a/Contrib/NSIS Update/NSISUpdate.nsi +++ b/Contrib/NSIS Update/NSISUpdate.nsi @@ -1,72 +1,95 @@ -# NSIS Update -##################################################################### -# Original version Copyright (C) 2002-2003 Nathan Purciful. -# Version for NSIS distribution Copyright (C) 2003 Joost Verburg. -# -# This software is provided 'as-is', without any express or implied -# warranty. In no event will the authors be held liable for any -# damages arising from the use of this software. -# -# Permission is granted to anyone to use this software for any purpose, -# including commercial applications, and to alter it and redistribute -# it freely, subject to the following restrictions: -# -# 1. The origin of this software must not be misrepresented; you must -# not claim that you wrote the original software. If you use this -# software in a product, an acknowledgment in the product -# documentation would be appreciated but is not required. -# 2. Altered source versions must be plainly marked as such, and must -# not be misrepresented as being the original software. -# 3. This notice may not be removed or altered from any source -# distribution. -# -# This program uses CVSNT software, http://www.cvsnt.org/ -# -##################################################################### -# Defines / Includes +; NSIS Update +;-------------------------------- -!define MISSINGFILES $0 -!define NSISBINPATH $1 +; Original version Copyright (C) 2002-2003 Nathan Purciful. +; Version for NSIS distribution Copyright (C) 2003-2004 Joost Verburg. +; +; This software is provided 'as-is', without any express or implied +; warranty. In no event will the authors be held liable for any +; damages arising from the use of this software. +; +; Permission is granted to anyone to use this software for any purpose, +; including commercial applications, and to alter it and redistribute +; it freely, subject to the following restrictions: +; +; 1. The origin of this software must not be misrepresented; you must +; not claim that you wrote the original software. If you use this +; software in a product, an acknowledgment in the product +; documentation would be appreciated but is not required. +; 2. Altered source versions must be plainly marked as such, and must +; not be misrepresented as being the original software. +; 3. This notice may not be removed or altered from any source +; distribution. +; +; This program uses CVSNT software, http://www.cvsnt.org/ -!define TEMP1 $R0 -!define TEMP2 $R1 -!define TEMP3 $R2 +;-------------------------------- +;Header files -!verbose 3 - !include "WinMessages.nsh" -!verbose 4 + !include "MUI.nsh" -!addplugindir "${NSISDIR}\Contrib\NSIS Update\Resources\BIN" + !addplugindir "${NSISDIR}\Contrib\NSIS Update" + +;-------------------------------- +;Configuration -##################################################################### -# Configuration + Name "NSIS Update" + Caption "NSIS Update" + OutFile "..\..\Bin\NSISUpdate.exe" + BrandingText " " -Name "NSIS Update" -Caption "NSIS Update" -OutFile "..\..\Bin\NSISUpdate.exe" -BrandingText " " + InstallButtonText "Update" + ShowInstDetails show + InstallColors /windows -InstallButtonText "Update" -ShowInstDetails show -InstallColors /windows +;-------------------------------- +;Variables -ChangeUI IDD_INST "Resources\GUI\NSISUpdate.exe" -ChangeUI IDD_INSTFILES "Resources\GUI\NSISUpdate.exe" + Var TEMP1 + Var TEMP2 + Var TEMP3 -Icon "${NSISDIR}\Contrib\Graphics\Icons\arrow-install.ico" + Var MISSINGFILES + Var NSISBINPATH + + Var OUTDIRFULL -XPStyle on +;-------------------------------- +;Interface Settings -Page custom UpdateMethod "" ": Update Method" -Page instfiles + !define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\arrow2-install.ico" -##################################################################### -# Macros +;-------------------------------- +;Pages + + Page custom UpdateMethod UpdateLeave + + !define MUI_PAGE_HEADER_TEXT "" + !define MUI_PAGE_HEADER_SUBTEXT "" + !define MUI_INSTFILESPAGE_FINISHHEADER_TEXT "Task Completed" + !define MUI_INSTFILESPAGE_FINISHHEADER_SUBTEXT "See the log window below for details." + !define MUI_INSTFILESPAGE_ABORTHEADER_TEXT "Error" + !define MUI_INSTFILESPAGE_ABORTHEADER_SUBTEXT "NSIS Update was not completed succesfully." + + !insertmacro MUI_PAGE_INSTFILES + +;-------------------------------- +;Languages + + !insertmacro MUI_LANGUAGE "English" + +;-------------------------------- +;Custom Interface + + ChangeUI IDD_INSTFILES "UI.exe" + +;-------------------------------- +;Macros !macro checkFile PATH FILE IfFileExists "${PATH}\${FILE}" +2 - StrCpy ${MISSINGFILES} "${FILE} ${MISSINGFILES}" + StrCpy $MISSINGFILES "${FILE} $MISSINGFILES" !macroend @@ -75,42 +98,36 @@ Page instfiles IfFileExists "${PATH}\${FILE}" "Done_${FILE}" NSISdl::download "http://nsis.sourceforge.net/nsisupdate/${FILE}.dat" "${PATH}\${FILE}.dat" - Pop ${TEMP1} + Pop $TEMP1 - StrCmp ${TEMP1} "success" "Extract_${FILE}" - MessageBox MB_OK|MB_ICONSTOP "Download failed: ${TEMP1}." + StrCmp $TEMP1 "success" "Extract_${FILE}" + MessageBox MB_OK|MB_ICONSTOP "Download failed: $TEMP1." Quit - Push ${TEMP1} - "Extract_${FILE}:" ExtractDLL::extract "${PATH}\${FILE}" "${PATH}\${FILE}.dat" Delete "${PATH}\${FILE}.dat" - Pop ${TEMP1} - StrCmp ${TEMP1} "success" +3 - MessageBox MB_OK|MB_ICONSTOP "Extraction failed: ${TEMP1}." + Pop $TEMP1 + StrCmp $TEMP1 "success" +3 + MessageBox MB_OK|MB_ICONSTOP "Extraction failed: $TEMP1." Quit - Pop ${TEMP1} - "Done_${FILE}:" !macroend -##################################################################### -# Functions +;-------------------------------- +; Functions Function .onInit - - Push ${TEMP1} - + System::Call 'kernel32::GetModuleFileNameA(i 0, t .R0, i 1024) i r1' - StrCpy ${TEMP1} ${TEMP1} "" -14 - StrCmp ${TEMP1} "NSISUpdate.bin" temp + StrCpy $R0 $R0 "" -14 + StrCmp $R0 "NSISUpdate.bin" temp - # Create a temporary file, so NSIS Update can update itself + ;Create a temporary file, so NSIS Update can update itself CopyFiles /SILENT "$EXEDIR\NSISUpdate.exe" "$TEMP\NSISUpdate.bin" Exec '"$TEMP\NSISUpdate.bin" $EXEDIR' @@ -118,62 +135,69 @@ Function .onInit temp: - Pop ${TEMP1} - - # Close the NSIS Menu (files in use cannot be updated) - + ;Close the NSIS Menu (files in use cannot be updated) Call CloseMenu - # Remove temporary file on next reboot - + ;Remove temporary file on next reboot Delete /REBOOTOK "$TEMP\NSISUpdate.bin" - # Get NSIS directory - + ;Get NSIS directory Call GetParameters - Pop ${NSISBINPATH} + Pop $NSISBINPATH - # InstallOptions INI File for the "Update Method" dialog + ;InstallOptions INI File for the "Update Method" dialog + !insertmacro MUI_INSTALLOPTIONS_EXTRACT "Method.ini" - InitPluginsdir - File "/oname=$PLUGINSDIR\io.ini" "Resources\GUI\io.ini" + ;Check for pserver CVS access + IfFileExists "$NSISBINPATH\..\Cvs\Root" 0 done + + FileOpen $TEMP1 "$NSISBINPATH\..\CVS\Root" r + FileRead $TEMP1 $TEMP2 9 + FileClose $TEMP1 + + StrCmp $TEMP2 ":pserver:" done + + !insertmacro MUI_INSTALLOPTIONS_WRITE "Method.ini" "Field 2" "Flags" "DISABLED" + !insertmacro MUI_INSTALLOPTIONS_WRITE "Method.ini" "Field 3" "Flags" "DISABLED" + !insertmacro MUI_INSTALLOPTIONS_WRITE "Method.ini" "Field 5" "Flags" "DISABLED" + !insertmacro MUI_INSTALLOPTIONS_WRITE "Method.ini" "Field 6" "Flags" "DISABLED" + + done: FunctionEnd -Function CheckCVSAccess +Function UpdateMethod + + !insertmacro MUI_HEADER_TEXT "Update Method" "Please select how you would like to update your NSIS files." + !insertmacro MUI_INSTALLOPTIONS_DISPLAY "Method.ini" + +FunctionEnd + +Function UpdateLeave + + !insertmacro MUI_INSTALLOPTIONS_READ $TEMP1 "Method.ini" "Field 1" "State" + StrCmp $TEMP1 "1" nocvs - IfFileExists "${NSISBINPATH}\..\Cvs\Root" +2 - Return + StrCpy $MISSINGFILES "" - Push ${TEMP1} - Push ${TEMP2} - - FileOpen ${TEMP1} "${NSISBINPATH}\..\CVS\Root" r - FileRead ${TEMP1} ${TEMP2} 9 - FileClose ${TEMP1} - - StrCmp ${TEMP2} ":pserver:" AccessOK - - MessageBox MB_OK|MB_ICONSTOP "NSIS Update only supports anonymous CVS access.$\r$\nNSIS developers should use a client with support for the :ext: access mode." - Quit - - AccessOK: - - Pop ${TEMP2} - Pop ${TEMP1} - + Call CheckCVSData + Call CheckCVSFiles + Call CheckCVSDownload + + nocvs: + FunctionEnd Function CheckCVSFiles - !insertmacro checkFile "${NSISBINPATH}" "cvs95.exe" + !insertmacro checkFile "$NSISBINPATH" "cvs95.exe" !insertmacro checkFile "$SYSDIR" "msvcr70.dll" !insertmacro checkFile "$SYSDIR" "msvcp70.dll" - !insertmacro checkFile "${NSISBINPATH}" "pserver_protocol.dll" + !insertmacro checkFile "$NSISBINPATH" "pserver_protocol.dll" - StrCmp ${MISSINGFILES} "" done - MessageBox MB_YESNO|MB_ICONQUESTION "NSIS update has to download a few small CVS client files in order to be able to update your NSIS files.$\r$\nThese files only have to be download once. Do you want to download them now?$\r$\n$\r$\nRequired Files: ${MISSINGFILES}" IDYES Done - Quit + StrCmp $MISSINGFILES "" done + MessageBox MB_YESNO|MB_ICONQUESTION "NSIS update has to download a few small CVS client files in order to be able to update your NSIS files.$\r$\nThese files only have to be download once. Do you want to download them now?$\r$\n$\r$\nRequired Files: $MISSINGFILES" IDYES Done + Abort done: @@ -181,14 +205,14 @@ FunctionEnd Function CheckCVSDownload - StrCmp ${MISSINGFILES} "" done + StrCmp $MISSINGFILES "" done - SendMessage ${TEMP3} ${WM_SETTEXT} 0 "STR:Downloading CVS client files..." + !insertmacro MUI_HEADER_TEXT "Downloading..." "Please wait while NSIS Update downloads CVS client files." - !insertmacro checkFileDownload "${NSISBINPATH}" "cvs95.exe" + !insertmacro checkFileDownload "$NSISBINPATH" "cvs95.exe" !insertmacro checkFileDownload "$SYSDIR" "msvcr70.dll" !insertmacro checkFileDownload "$SYSDIR" "msvcp70.dll" - !insertmacro checkFileDownload "${NSISBINPATH}" "pserver_protocol.dll" + !insertmacro checkFileDownload "$NSISBINPATH" "pserver_protocol.dll" done: @@ -196,32 +220,21 @@ FunctionEnd Function CheckCVSData - IfFileExists "${NSISBINPATH}\..\CVS\Root" datainstalled + IfFileExists "$NSISBINPATH\..\CVS\Root" datainstalled - IfFileExists "${NSISBINPATH}\InstallCVSData.exe" +3 + IfFileExists "$NSISBINPATH\InstallCVSData.exe" +3 MessageBox MB_OK|MB_ICONSTOP "CVS Data Setup not found." - Quit + Abort SetDetailsPrint listonly DetailPrint "Installing CVS data..." SetDetailsPrint none - Exec "${NSISBINPATH}\InstallCVSData.exe" + Exec "$NSISBINPATH\InstallCVSData.exe" datainstalled: FunctionEnd -Function UpdateMethod - - Push ${TEMP1} - - InstallOptions::dialog "$PLUGINSDIR\io.ini" - Push ${TEMP1} - - Pop ${TEMP1} - -FunctionEnd - Function GetParameters Push $R0 @@ -261,13 +274,9 @@ FunctionEnd Function CloseMenu - Push $R0 - - FindWindow $R0 "NSIS Menu" - IntCmp $R0 0 +2 - SendMessage $R0 ${WM_CLOSE} 0 0 - - Pop $R0 + FindWindow $TEMP1 "NSIS Menu" + IntCmp $TEMP1 0 +2 + SendMessage $TEMP1 ${WM_CLOSE} 0 0 FunctionEnd @@ -286,7 +295,7 @@ Function ConnectInternet noie3: - # IE3 not installed + ; IE3 not installed MessageBox MB_OK|MB_ICONINFORMATION "Please connect to the internet now." connected: @@ -317,17 +326,17 @@ no_trim_needed: FunctionEnd Function FindFiles - Exch $R5 # callback function + Exch $R5 ; callback function Exch - Exch $R4 # file name + Exch $R4 ; file name Exch 2 - Exch $R0 # directory + Exch $R0 ; directory Push $R1 Push $R2 Push $R3 Push $R6 - Push $R0 # first dir to search + Push $R0 ; first dir to search StrCpy $R3 1 @@ -374,71 +383,70 @@ Function FindFiles FunctionEnd !macro CallFindFiles DIR FILE CBFUNC -Push ${DIR} -Push ${FILE} -Push $0 -GetFunctionAddress $0 ${CBFUNC} -Exch $0 -Call FindFiles + Push ${DIR} + Push ${FILE} + + GetFunctionAddress $TEMP1 ${CBFUNC} + + Push $TEMP1 + + Call FindFiles !macroend Function PatchCVSRoot - Pop $5 - FileOpen $6 $5 "r" - FileRead $6 $7 - FileClose $6 - Push $7 + Pop $TEMP1 + FileOpen $TEMP2 $TEMP1 "r" + FileRead $TEMP2 $TEMP3 + FileClose $TEMP3 + Push $TEMP3 Call TrimNewLines - Pop $7 - StrCmp $7 ":pserver:anonymous@cvs1:/cvsroot/nsis" go + Pop $TEMP3 + StrCmp $TEMP3 ":pserver:anonymous@cvs1:/cvsroot/nsis" go Push "stop" Return go: - FileOpen $6 $5 "w" - FileWrite $6 ":pserver:anonymous:@cvs.sourceforge.net:/cvsroot/nsis$\r$\n" - FileClose $6 + FileOpen $TEMP1 $TEMP1 "w" + FileWrite $TEMP2 ":pserver:anonymous:@cvs.sourceforge.net:/cvsroot/nsis$\r$\n" + FileClose $TEMP2 Push "go" FunctionEnd -##################################################################### -# Update (Installer Section) +;-------------------------------- +; Update (Installer Section) Section "" - - FindWindow ${TEMP3} "#32770" "" $HWNDPARENT - GetDlgItem ${TEMP3} ${TEMP3} 1111 SetDetailsPrint none Call ConnectInternet - ReadINIStr ${TEMP1} "$PLUGINSDIR\io.ini" "Field 2" "State" - StrCmp ${TEMP1} "1" "" CVS + !insertmacro MUI_INSTALLOPTIONS_READ $TEMP1 "Method.ini" "Field 1" "State" + StrCmp $TEMP1 "1" 0 CVS - # Check for a new release + ;Check for a new release SetDetailsPrint listonly - SendMessage ${TEMP3} ${WM_SETTEXT} 0 "STR:Checking for a new NSIS release..." + !insertmacro MUI_HEADER_TEXT "Checking for a release..." "Please wait while NSIS Update checks whether a new NSIS release is available." - nsExec::ExecToStack '"${NSISBINPATH}\..\makensis.exe" "/version"' - Pop ${TEMP1} + nsExec::ExecToStack '"$NSISBINPATH\..\makensis.exe" "/version"' + Pop $TEMP1 - StrCmp ${TEMP1} "error" "" +3 + StrCmp $TEMP1 "error" "" +3 MessageBox MB_OK|MB_ICONSTOP "Can't get NSIS version." Quit - Pop ${TEMP1} - DetailPrint "Your NSIS version: ${TEMP1}" + Pop $TEMP1 + DetailPrint "Your NSIS version: $TEMP1" DetailPrint "" - StrCpy ${TEMP2} ${TEMP1} "" -5 - StrCmp ${TEMP2} "(CVS)" "" NoCVSVersion + StrCpy $TEMP2 $TEMP1 "" -5 + StrCmp $TEMP2 "(CVS)" "" NoCVSVersion - StrLen ${TEMP2} ${TEMP1} - IntOp ${TEMP2} ${TEMP2} - 6 - StrCpy ${TEMP1} ${TEMP1} ${TEMP2} - StrCpy ${TEMP2} 1 + StrLen $TEMP2 $TEMP1 + IntOp $TEMP2 $TEMP2 - 6 + StrCpy $TEMP1 $TEMP1 $TEMP2 + StrCpy $TEMP2 1 DetailPrint "NOTE: You are using a development version of NSIS." DetailPrint "You can also use NSIS Update to get the latest development files." @@ -448,44 +456,42 @@ Section "" NoCVSVersion: - StrCpy ${TEMP2} 0 + StrCpy $TEMP2 0 CheckUpdate: DetailPrint "Checking for a new release..." DetailPrint "" - NSISdl::download_quiet "http://nsis.sourceforge.net/update.php?version=${TEMP1}&cvs=${TEMP2}" "$PLUGINSDIR\Update" - Pop ${TEMP1} + NSISdl::download_quiet "http://nsis.sourceforge.net/update.php?version=$TEMP1&cvs=$TEMP2" "$PLUGINSDIR\Update" + Pop $TEMP1 - StrCmp ${TEMP1} "success" ReadVersion - MessageBox MB_OK|MB_ICONSTOP "Download failed: ${TEMP1}." + StrCmp $TEMP1 "success" ReadVersion + MessageBox MB_OK|MB_ICONSTOP "Download failed: $TEMP1." Quit ReadVersion: - FileOpen ${TEMP1} "$PLUGINSDIR\Update" r - FileRead ${TEMP1} ${TEMP2} - FileClose ${TEMP1} + FileOpen $TEMP1 "$PLUGINSDIR\Update" r + FileRead $TEMP1 $TEMP2 + FileClose $TEMP1 - StrCmp ${TEMP2} "" "" +3 + StrCmp $TEMP2 "" "" +3 MessageBox MB_OK|MB_ICONSTOP "Invalid version data." Quit - StrCpy ${TEMP1} ${TEMP2} 1 - StrCpy ${TEMP2} ${TEMP2} "" 2 + StrCpy $TEMP1 $TEMP2 1 + StrCpy $TEMP2 $TEMP2 "" 2 - SendMessage ${TEMP3} ${WM_SETTEXT} 0 "STR:Task completed." - - StrCmp ${TEMP1} "1" "" +3 - DetailPrint "A new stable release is available: ${TEMP2}" + StrCmp $TEMP1 "1" "" +3 + DetailPrint "A new stable release is available: $TEMP2" Goto UpdateMsg - StrCmp ${TEMP1} "2" "" +3 - DetailPrint "A new pre-release is available: ${TEMP2}" + StrCmp $TEMP1 "2" "" +3 + DetailPrint "A new pre-release is available: $TEMP2" Goto UpdateMsg - DetailPrint "No new release is available. Check again later." + DetailPrint "No new release is available. Please check again later." Goto done @@ -499,48 +505,42 @@ Section "" CVS: - # CVS Update + ;CVS Update - SetOutPath ${NSISBINPATH}\.. - - Call CheckCVSAccess - Call CheckCVSFiles - Call CheckCVSDownload - Call CheckCVSData - # patch CVS Root files that come from the development snapshot - GetFullPathName $9 $OUTDIR - !insertmacro CallFindFiles $9 Root PatchCVSRoot + SetOutPath $NSISBINPATH\.. + + ;patch CVS Root files that come from the development snapshot + GetFullPathName $OUTDIRFULL $OUTDIR + !insertmacro CallFindFiles $OUTDIRFULL Root PatchCVSRoot SetDetailsPrint listonly - SendMessage ${TEMP3} ${WM_SETTEXT} 0 "STR:Updating your NSIS files..." + !insertmacro MUI_HEADER_TEXT "Updating..." "Please wait while NSIS Update is downloading development files. This may take several minutes to complete." DetailPrint "Initializing CVS Update..." - ReadINIStr ${TEMP1} "$PLUGINSDIR\io.ini" "Field 3" "State" - StrCmp ${TEMP1} "1" "" CleanCVSUpdate + !insertmacro MUI_INSTALLOPTIONS_READ $TEMP1 "Method.ini" "Field 2" "State" + StrCmp $TEMP1 "1" 0 CleanCVSUpdate - # Normal update + ;Normal update - nsExec::ExecToLog '"${NSISBINPATH}\cvs95.exe" -q -z3 update -d -P' - Pop ${TEMP1} + nsExec::ExecToLog '"$NSISBINPATH\cvs95.exe" -q -z3 update -d -P' + Pop $TEMP1 Goto CheckCVSReturn CleanCVSUpdate: - # Clean copy + ;Clean copy - nsExec::ExecToLog '"${NSISBINPATH}\cvs95.exe" -q -z3 update -C -d -P' - Pop ${TEMP1} + nsExec::ExecToLog '"$NSISBINPATH\cvs95.exe" -q -z3 update -C -d -P' + Pop $TEMP1 CheckCVSReturn: - StrCmp ${TEMP1} "error" "" +3 + StrCmp $TEMP1 "error" "" +3 MessageBox MB_OK|MB_ICONSTOP "Can't execute CVS client." Quit - - SendMessage ${TEMP3} ${WM_SETTEXT} 0 "STR:Task completed." - + done: SetDetailsPrint none diff --git a/Contrib/NSIS Update/Resources/GUI/NSISUpdate.exe b/Contrib/NSIS Update/Resources/GUI/NSISUpdate.exe deleted file mode 100644 index 988c27a910c1a9fdfe625484dd152caf9847fc9b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4608 zcmeHKUu;ul6hF6HSz-T*S(PBsi!6i(Xb9bs2@Ef+4PEF)T}L|wnV0smduw+uxxJMw zfuzVF#DbdXlMfogyH6&f@nQ0SXhK4a0Un8OOHg?rV0`)foqOBuZW1%-*w%!t zPRe=JG%ZIyrpb22lnqmkAI!*;RzZulx3B50r`|BO>6@{ahi3hJ*u|;YB;?M`M`y<& z+t#0&eGT%{R}Q#x#K`L$v%JD|f+!_5(|A**zhS#aol>i`%4;(0X}?_y$#a>p;>`n| z3u|~kTuNiC1DHVwa&t6f9lAE6QJJW~bA_lo#FKxBWaNHAs;Hw)Ik2~Kkz60wywC*Z zAerdRs9jJU6??>fP`EzJ>QqpD)N`YYaG~vB_HSdbND9$h)Gph3sN7zmpf%tQu#XgX zH++hf=~J@*GoOCuMlg_%>qpYZeL_|iutcdhL%n!mPHh28& z>9ExK(cGmt2`MNe>vXGd<@^>nob6{-&~6p&Jelu;?s65g*rQ$7otCtSY)7ukY|H8t zM$K5J=Ntix-cvkAw!&f8^(!3IIrAgRyOem4)_=#pom)~0W~AwcV1ujc11LtasQIC& zJjjY(4i=FutPVAh0yIB^e3{xCpo(m=Sksy_{Cx4Wu{Y=a&(;)8dZa16*vX zgRKmtI_PE)@IW!>`qcV)1%wrYZnbqIV)V7xg^Y+KVJ`-;-1yI8cq1$J_VS+Guy;^_uk?V_VbpW$sBx?z~ztoO)&SB_+&)7epVDH`!-R)e{`bBt{w?ZLY7d&#sj9L9<}k zT*dzQVBKNh;LyP6LjMb2&dTIJvjfLbsSch17r}3VnQ#?wNq`1aGq2%%591Kadx&<+ z`_w!fhckm2`EAWE88lt zui~}_+9`ePsmQyc3{i$;uudA4@R2EwkOk-%B>W2^BprrK-}v_tEqul_^gSyvj6AClF&{k8JE&8J`$>TS^iw z#{c{`;&Cm+k?`mje!X7SGgPiULS58S?^%eY-&#;PqYyodj>qUX1Y~F$wWiQ*8J%Py jH9Gkhwc}!%-ayUNA%!UC+s{TlkPEdnx%R5hv@-nz-3;Q_ diff --git a/Contrib/NSIS Update/Resources/GUI/io.ini b/Contrib/NSIS Update/Resources/GUI/io.ini deleted file mode 100644 index 82186170..00000000 --- a/Contrib/NSIS Update/Resources/GUI/io.ini +++ /dev/null @@ -1,38 +0,0 @@ -[Settings] -NumFields=5 -[Field 1] -Type=Label -Text=Welcome to NSIS Update. How would you like to update your NSIS files? -Left=0 -Right=-1 -Top=0 -Bottom=8 -[Field 2] -Type=RadioButton -Text=Check for a new tested release -Left=20 -Right=-1 -Top=25 -Bottom=33 -State=1 -[Field 3] -Type=RadioButton -Text=Download the latest development files from CVS, merge your changes -Left=20 -Right=-1 -Top=49 -Bottom=57 -[Field 4] -Type=RadioButton -Text=Download the latest development files from CVS, clean copy -Left=20 -Right=-1 -Top=73 -Bottom=81 -[Field 5] -Type=Label -Text=Please close all other NSIS utilities (including the NSIS Menu) before installing a new release or downloading development files, otherwise these utitilies can't be updated. -Left=0 -Right=-1 -Top=97 -Bottom=113 \ No newline at end of file diff --git a/Contrib/NSIS Update/UI.exe b/Contrib/NSIS Update/UI.exe new file mode 100644 index 0000000000000000000000000000000000000000..5c9049c81450fd3a633f735f25bc5d63d51e3b6d GIT binary patch literal 4096 zcmeHKU1%d!6h4zSHEaJ;X|Sw+Q!Tg)ZK#_T3jJYh6E?-P8#`?x{%oC1rk#oD%rcqS z7FMXV6(PGIqKGfWrJxUjPeO|bMuoaQEG&!c_EE%_Lcu;P-9;a+-<_GXd06*J=?XpJ z+;hI~o^$S*o14tc*sC8<4H4Bs86(<+_qk zWzJg4oS0Dz!?eW7K6@4Jm39sI?{ z4cMEf|JvAs{n+=(Mj5v5`Oh3Xp=UIn^G_WnV?+s|me!ui4OU`)rDmaCsBj@1L4GYdjjN$gzm#`7+vN}HqqPFEP(YMu{e8HlXh)!{PawLx{Y3fh zjpzKF{2@qFrQPM-U@6v+>I!1EdF2mWO1ybB&%s747`LB{$L+Sreu@(N~yK@Qw%Y&TqTlK7wJ3Fo5t}elg?Duckk0e>B z8?~pZD>*6=vSPBToWDR3`5|8z}r>a zW5^SM%T-(txB&2G6*t6ts=`1A@?Z4*CB+tWJ8792wNM~SIIG%YX117D==@jSswi!u$|V8tT{i4yE2#$eX?fG zyA=N84(F3*f#?OFoUv5Zm^4T7x@zDyZu1`8@Ch|zQwzt@{OqW$&Jj(~h@~pF8r7A& zIh$1Q(1kTVrKno4EpyRZrpAZj_RB@x_Bx|2iWylqiPp$c9T3Qme%icy!eMKIb2jk!zjVlPPoNWc$ce*yMIyS#DNh9FZPEqtT9Ob3=@gvz z2zc(R#u&*YLN!t;kB>-EjQp%riB$1xP=v9i3iRxfR3UcpXg5a%%8-pJ1)8RdWRZz_ z7U~!9iO`u!@S#l#bdmQ+z9ivStSe54QU-xi@huHfY D-m$sg literal 0 HcmV?d00001