System.nsh 63 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222
  1. /*
  2. NSIS Modern User Interface - Version 1.8
  3. Copyright 2002-2016 Joost Verburg
  4. */
  5. !ifndef MUI_INCLUDED
  6. !echo "NSIS Modern User Interface version 1.8 - Copyright 2002-2016 Joost Verburg"
  7. ;--------------------------------
  8. !verbose push 3
  9. !define /IfNDef MUI_VERBOSE 3
  10. !verbose ${MUI_VERBOSE}
  11. !define MUI_INCLUDED
  12. !define MUI_SYSVERSION "1.8"
  13. ;--------------------------------
  14. ;HEADER FILES, DECLARATIONS
  15. !include InstallOptions.nsh
  16. !include LangFile.nsh
  17. !include WinMessages.nsh
  18. Var MUI_TEMP1
  19. Var MUI_TEMP2
  20. ;--------------------------------
  21. ;INSERT CODE
  22. !macro MUI_INSERT
  23. !ifndef MUI_INSERT
  24. !define MUI_INSERT
  25. !ifdef MUI_PRODUCT | MUI_VERSION
  26. !warning "The MUI_PRODUCT and MUI_VERSION defines have been removed. Use a normal Name command now."
  27. !endif
  28. !insertmacro MUI_INTERFACE
  29. !insertmacro MUI_FUNCTION_GUIINIT
  30. !insertmacro MUI_FUNCTION_ABORTWARNING
  31. !ifdef MUI_IOCONVERT_USED
  32. !insertmacro INSTALLOPTIONS_FUNCTION_WRITE_CONVERT
  33. !endif
  34. !ifdef MUI_UNINSTALLER
  35. !insertmacro MUI_UNFUNCTION_GUIINIT
  36. !insertmacro MUI_FUNCTION_UNABORTWARNING
  37. !ifdef MUI_UNIOCONVERT_USED
  38. !insertmacro INSTALLOPTIONS_UNFUNCTION_WRITE_CONVERT
  39. !endif
  40. !endif
  41. !endif
  42. !macroend
  43. ;--------------------------------
  44. ;GENERAL
  45. !macro MUI_DEFAULT SYMBOL CONTENT
  46. !ifndef "${SYMBOL}"
  47. !define "${SYMBOL}" "${CONTENT}"
  48. !endif
  49. !macroend
  50. !macro MUI_DEFAULT_IOCONVERT SYMBOL CONTENT
  51. !ifndef "${SYMBOL}"
  52. !define "${SYMBOL}" "${CONTENT}"
  53. !insertmacro MUI_SET "${SYMBOL}_DEFAULTSET"
  54. !insertmacro MUI_SET "MUI_${MUI_PAGE_UNINSTALLER_PREFIX}IOCONVERT_USED"
  55. !else
  56. !insertmacro MUI_UNSET "${SYMBOL}_DEFAULTSET"
  57. !endif
  58. !macroend
  59. !macro MUI_SET SYMBOL
  60. !ifndef "${SYMBOL}"
  61. !define "${SYMBOL}"
  62. !endif
  63. !macroend
  64. !macro MUI_UNSET SYMBOL
  65. !ifdef "${SYMBOL}"
  66. !undef "${SYMBOL}"
  67. !endif
  68. !macroend
  69. ;--------------------------------
  70. ;INTERFACE - COMPILE TIME SETTINGS
  71. !macro MUI_INTERFACE
  72. !ifndef MUI_INTERFACE
  73. !define MUI_INTERFACE
  74. !ifdef MUI_INSERT_NSISCONF
  75. !insertmacro MUI_NSISCONF
  76. !endif
  77. !insertmacro MUI_DEFAULT MUI_UI "${NSISDIR}\Contrib\UIs\modern.exe"
  78. !insertmacro MUI_DEFAULT MUI_UI_HEADERIMAGE "${NSISDIR}\Contrib\UIs\modern_headerbmp.exe"
  79. !insertmacro MUI_DEFAULT MUI_UI_HEADERIMAGE_RIGHT "${NSISDIR}\Contrib\UIs\modern_headerbmpr.exe"
  80. !insertmacro MUI_DEFAULT MUI_UI_COMPONENTSPAGE_SMALLDESC "${NSISDIR}\Contrib\UIs\modern_smalldesc.exe"
  81. !insertmacro MUI_DEFAULT MUI_UI_COMPONENTSPAGE_NODESC "${NSISDIR}\Contrib\UIs\modern_nodesc.exe"
  82. !insertmacro MUI_DEFAULT MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install.ico"
  83. !insertmacro MUI_DEFAULT MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico"
  84. !insertmacro MUI_DEFAULT MUI_COMPONENTSPAGE_CHECKBITMAP "${NSISDIR}\Contrib\Graphics\Checks\modern.bmp"
  85. !insertmacro MUI_DEFAULT MUI_LICENSEPAGE_BGCOLOR "/windows"
  86. !insertmacro MUI_DEFAULT MUI_INSTFILESPAGE_COLORS "/windows"
  87. !insertmacro MUI_DEFAULT MUI_INSTFILESPAGE_PROGRESSBAR "smooth"
  88. !insertmacro MUI_DEFAULT MUI_BGCOLOR "FFFFFF"
  89. !insertmacro MUI_DEFAULT MUI_WELCOMEFINISHPAGE_INI "${NSISDIR}\Contrib\Modern UI\ioSpecial.ini"
  90. !insertmacro MUI_DEFAULT MUI_UNWELCOMEFINISHPAGE_INI "${NSISDIR}\Contrib\Modern UI\ioSpecial.ini"
  91. !insertmacro MUI_DEFAULT MUI_WELCOMEFINISHPAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Wizard\win.bmp"
  92. !insertmacro MUI_DEFAULT MUI_UNWELCOMEFINISHPAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Wizard\win.bmp"
  93. !if "${MUI_WELCOMEFINISHPAGE_BITMAP}" == ""
  94. !error "Invalid MUI_WELCOMEFINISHPAGE_BITMAP"
  95. !endif
  96. !if "${MUI_UNWELCOMEFINISHPAGE_BITMAP}" == ""
  97. !error "Invalid MUI_UNWELCOMEFINISHPAGE_BITMAP"
  98. !endif
  99. !ifdef MUI_HEADERIMAGE
  100. !insertmacro MUI_DEFAULT MUI_HEADERIMAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Header\nsis.bmp"
  101. !ifndef MUI_HEADERIMAGE_UNBITMAP
  102. !define MUI_HEADERIMAGE_UNBITMAP "${MUI_HEADERIMAGE_BITMAP}"
  103. !ifdef MUI_HEADERIMAGE_BITMAP_NOSTRETCH
  104. !insertmacro MUI_SET MUI_HEADERIMAGE_UNBITMAP_NOSTRETCH
  105. !endif
  106. !endif
  107. !if "${MUI_HEADERIMAGE_BITMAP}" == ""
  108. !error "Invalid MUI_HEADERIMAGE_BITMAP"
  109. !endif
  110. !if "${MUI_HEADERIMAGE_UNBITMAP}" == ""
  111. !error "Invalid MUI_HEADERIMAGE_UNBITMAP"
  112. !endif
  113. !ifdef MUI_HEADERIMAGE_BITMAP_RTL
  114. !ifndef MUI_HEADERIMAGE_UNBITMAP_RTL
  115. !define MUI_HEADERIMAGE_UNBITMAP_RTL "${MUI_HEADERIMAGE_BITMAP_RTL}"
  116. !ifdef MUI_HEADERIMAGE_BITMAP_RTL_NOSTRETCH
  117. !insertmacro MUI_SET MUI_HEADERIMAGE_UNBITMAP_RTL_NOSTRETCH
  118. !endif
  119. !endif
  120. !if "${MUI_HEADERIMAGE_BITMAP_RTL}" == ""
  121. !error "Invalid MUI_HEADERIMAGE_BITMAP_RTL"
  122. !endif
  123. !if "${MUI_HEADERIMAGE_UNBITMAP_RTL}" == ""
  124. !error "Invalid MUI_HEADERIMAGE_UNBITMAP_RTL"
  125. !endif
  126. !endif
  127. !endif
  128. XPStyle On
  129. ChangeUI all "${MUI_UI}"
  130. !ifdef MUI_HEADERIMAGE
  131. !ifndef MUI_HEADERIMAGE_RIGHT
  132. ChangeUI IDD_INST "${MUI_UI_HEADERIMAGE}"
  133. !else
  134. ChangeUI IDD_INST "${MUI_UI_HEADERIMAGE_RIGHT}"
  135. !endif
  136. !endif
  137. !ifdef MUI_COMPONENTSPAGE_SMALLDESC
  138. ChangeUI IDD_SELCOM "${MUI_UI_COMPONENTSPAGE_SMALLDESC}"
  139. !else ifdef MUI_COMPONENTSPAGE_NODESC
  140. ChangeUI IDD_SELCOM "${MUI_UI_COMPONENTSPAGE_NODESC}"
  141. !endif
  142. Icon "${MUI_ICON}"
  143. UninstallIcon "${MUI_UNICON}"
  144. CheckBitmap "${MUI_COMPONENTSPAGE_CHECKBITMAP}"
  145. LicenseBkColor "${MUI_LICENSEPAGE_BGCOLOR}"
  146. InstallColors ${MUI_INSTFILESPAGE_COLORS}
  147. InstProgressFlags ${MUI_INSTFILESPAGE_PROGRESSBAR}
  148. SubCaption 4 " "
  149. UninstallSubCaption 2 " "
  150. !insertmacro MUI_DEFAULT MUI_ABORTWARNING_TEXT "$(MUI_TEXT_ABORTWARNING)"
  151. !insertmacro MUI_DEFAULT MUI_UNABORTWARNING_TEXT "$(MUI_UNTEXT_ABORTWARNING)"
  152. !endif
  153. !macroend
  154. ;--------------------------------
  155. ;INTERFACE - RUN-TIME
  156. !macro MUI_INNERDIALOG_TEXT CONTROL TEXT
  157. !verbose push
  158. !verbose ${MUI_VERBOSE}
  159. FindWindow $MUI_TEMP1 "#32770" "" $HWNDPARENT
  160. GetDlgItem $MUI_TEMP1 $MUI_TEMP1 ${CONTROL}
  161. SendMessage $MUI_TEMP1 ${WM_SETTEXT} 0 "STR:${TEXT}"
  162. !verbose pop
  163. !macroend
  164. !macro MUI_HEADER_TEXT_INTERNAL ID TEXT
  165. GetDlgItem $MUI_TEMP1 $HWNDPARENT "${ID}"
  166. !ifdef MUI_HEADER_TRANSPARENT_TEXT
  167. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  168. !endif
  169. SendMessage $MUI_TEMP1 ${WM_SETTEXT} 0 "STR:${TEXT}"
  170. !ifdef MUI_HEADER_TRANSPARENT_TEXT
  171. ShowWindow $MUI_TEMP1 ${SW_SHOWNA}
  172. !endif
  173. !macroend
  174. !macro MUI_HEADER_TEXT TEXT SUBTEXT
  175. !verbose push
  176. !verbose ${MUI_VERBOSE}
  177. !ifdef MUI_HEADER_TRANSPARENT_TEXT
  178. LockWindow on
  179. !endif
  180. !insertmacro MUI_HEADER_TEXT_INTERNAL 1037 "${TEXT}"
  181. !insertmacro MUI_HEADER_TEXT_INTERNAL 1038 "${SUBTEXT}"
  182. !ifdef MUI_HEADER_TRANSPARENT_TEXT
  183. LockWindow off
  184. !endif
  185. !verbose pop
  186. !macroend
  187. !macro MUI_HEADER_TEXT_PAGE TEXT SUBTEXT
  188. !ifdef MUI_PAGE_HEADER_TEXT & MUI_PAGE_HEADER_SUBTEXT
  189. !insertmacro MUI_HEADER_TEXT "${MUI_PAGE_HEADER_TEXT}" "${MUI_PAGE_HEADER_SUBTEXT}"
  190. !else ifdef MUI_PAGE_HEADER_TEXT
  191. !insertmacro MUI_HEADER_TEXT "${MUI_PAGE_HEADER_TEXT}" "${SUBTEXT}"
  192. !else ifdef MUI_PAGE_HEADER_SUBTEXT
  193. !insertmacro MUI_HEADER_TEXT "${TEXT}" "${MUI_PAGE_HEADER_SUBTEXT}"
  194. !else
  195. !insertmacro MUI_HEADER_TEXT "${TEXT}" "${SUBTEXT}"
  196. !endif
  197. !insertmacro MUI_UNSET MUI_PAGE_HEADER_TEXT
  198. !insertmacro MUI_UNSET MUI_PAGE_HEADER_SUBTEXT
  199. !macroend
  200. !macro MUI_DESCRIPTION_BEGIN
  201. FindWindow $MUI_TEMP1 "#32770" "" $HWNDPARENT
  202. GetDlgItem $MUI_TEMP1 $MUI_TEMP1 1043
  203. StrCmp $0 -1 0 mui.description_begin_done
  204. SendMessage $MUI_TEMP1 ${WM_SETTEXT} 0 "STR:"
  205. EnableWindow $MUI_TEMP1 0
  206. SendMessage $MUI_TEMP1 ${WM_SETTEXT} 0 "STR:$MUI_TEXT"
  207. Goto mui.description_done
  208. mui.description_begin_done:
  209. !macroend
  210. !macro MUI_DESCRIPTION_TEXT VAR TEXT
  211. !verbose push
  212. !verbose ${MUI_VERBOSE}
  213. StrCmp $0 ${VAR} 0 mui.description_${VAR}_done
  214. SendMessage $MUI_TEMP1 ${WM_SETTEXT} 0 "STR:"
  215. EnableWindow $MUI_TEMP1 1
  216. SendMessage $MUI_TEMP1 ${WM_SETTEXT} 0 "STR:${TEXT}"
  217. Goto mui.description_done
  218. mui.description_${VAR}_done:
  219. !verbose pop
  220. !macroend
  221. !macro MUI_DESCRIPTION_END
  222. !verbose push
  223. !verbose ${MUI_VERBOSE}
  224. mui.description_done:
  225. !verbose pop
  226. !macroend
  227. !macro MUI_ENDHEADER
  228. IfAbort mui.endheader_abort
  229. !ifdef MUI_INSTFILESPAGE_FINISHHEADER_TEXT & MUI_INSTFILESPAGE_FINISHHEADER_SUBTEXT
  230. !insertmacro MUI_HEADER_TEXT "${MUI_INSTFILESPAGE_FINISHHEADER_TEXT}" "${MUI_INSTFILESPAGE_FINISHHEADER_SUBTEXT}"
  231. !else ifdef MUI_INSTFILESPAGE_FINISHHEADER_TEXT
  232. !insertmacro MUI_HEADER_TEXT "${MUI_INSTFILESPAGE_FINISHHEADER_TEXT}" "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_FINISH_SUBTITLE)"
  233. !else ifdef MUI_INSTFILESPAGE_FINISHHEADER_SUBTEXT
  234. !insertmacro MUI_HEADER_TEXT "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_FINISH_TITLE)" "${MUI_INSTFILESPAGE_FINISHHEADER_SUBTEXT}"
  235. !else
  236. !insertmacro MUI_HEADER_TEXT "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_FINISH_TITLE)" "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_FINISH_SUBTITLE)"
  237. !endif
  238. Goto mui.endheader_done
  239. mui.endheader_abort:
  240. !ifdef MUI_INSTFILESPAGE_ABORTHEADER_TEXT & MUI_INSTFILESPAGE_ABORTHEADER_SUBTEXT
  241. !insertmacro MUI_HEADER_TEXT "${MUI_INSTFILESPAGE_ABORTHEADER_TEXT}" "${MUI_INSTFILESPAGE_ABORTHEADER_SUBTEXT}"
  242. !else ifdef MUI_INSTFILESPAGE_ABORTHEADER_TEXT
  243. !insertmacro MUI_HEADER_TEXT "${MUI_INSTFILESPAGE_ABORTHEADER_TEXT}" "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_ABORT_SUBTITLE)"
  244. !else ifdef MUI_INSTFILESPAGE_ABORTHEADER_SUBTEXT
  245. !insertmacro MUI_HEADER_TEXT "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_ABORT_TITLE)" "${MUI_INSTFILESPAGE_ABORTHEADER_SUBTEXT}"
  246. !else
  247. !insertmacro MUI_HEADER_TEXT "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_ABORT_TITLE)" "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_ABORT_SUBTITLE)"
  248. !endif
  249. mui.endheader_done:
  250. !macroend
  251. !macro MUI_ABORTWARNING
  252. !ifdef MUI_FINISHPAGE_ABORTWARNINGCHECK
  253. StrCmp $MUI_NOABORTWARNING "1" mui.quit
  254. !endif
  255. !ifdef MUI_ABORTWARNING_CANCEL_DEFAULT
  256. MessageBox MB_YESNO|MB_ICONEXCLAMATION|MB_DEFBUTTON2 "${MUI_ABORTWARNING_TEXT}" IDYES mui.quit
  257. !else
  258. MessageBox MB_YESNO|MB_ICONEXCLAMATION "${MUI_ABORTWARNING_TEXT}" IDYES mui.quit
  259. !endif
  260. Abort
  261. mui.quit:
  262. !macroend
  263. !macro MUI_UNABORTWARNING
  264. !ifdef MUI_UNABORTWARNING_CANCEL_DEFAULT
  265. MessageBox MB_YESNO|MB_ICONEXCLAMATION|MB_DEFBUTTON2 "${MUI_UNABORTWARNING_TEXT}" IDYES mui.quit
  266. !else
  267. MessageBox MB_YESNO|MB_ICONEXCLAMATION "${MUI_UNABORTWARNING_TEXT}" IDYES mui.quit
  268. !endif
  269. Abort
  270. mui.quit:
  271. !macroend
  272. !macro MUI_GUIINIT
  273. !insertmacro MUI_WELCOMEFINISHPAGE_INIT ""
  274. !insertmacro MUI_HEADERIMAGE_INIT ""
  275. !insertmacro MUI_GUIINIT_BASIC
  276. !macroend
  277. !macro MUI_UNGUIINIT
  278. !insertmacro MUI_WELCOMEFINISHPAGE_INIT "UN"
  279. !insertmacro MUI_HEADERIMAGE_INIT "UN"
  280. !insertmacro MUI_GUIINIT_BASIC
  281. !ifdef MUI_UNFINISHPAGE
  282. !ifndef MUI_UNFINISHPAGE_NOAUTOCLOSE
  283. SetAutoClose true
  284. !endif
  285. !endif
  286. !macroend
  287. !macro MUI_GUIINIT_BASIC
  288. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1037
  289. CreateFont $MUI_TEMP2 "$(^Font)" "$(^FontSize)" "700"
  290. SendMessage $MUI_TEMP1 ${WM_SETFONT} $MUI_TEMP2 0
  291. !ifndef MUI_HEADER_TRANSPARENT_TEXT
  292. SetCtlColors $MUI_TEMP1 "" "${MUI_BGCOLOR}"
  293. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1038
  294. SetCtlColors $MUI_TEMP1 "" "${MUI_BGCOLOR}"
  295. !else
  296. SetCtlColors $MUI_TEMP1 "" "transparent"
  297. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1038
  298. SetCtlColors $MUI_TEMP1 "" "transparent"
  299. !endif
  300. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1034
  301. SetCtlColors $MUI_TEMP1 "" "${MUI_BGCOLOR}"
  302. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1039
  303. SetCtlColors $MUI_TEMP1 "" "${MUI_BGCOLOR}"
  304. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1028
  305. SetCtlColors $MUI_TEMP1 /BRANDING
  306. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1256
  307. SetCtlColors $MUI_TEMP1 /BRANDING
  308. SendMessage $MUI_TEMP1 ${WM_SETTEXT} 0 "STR:$(^Branding) "
  309. !macroend
  310. !macro MUI_WELCOMEFINISHPAGE_INIT UNINSTALLER
  311. !ifdef MUI_${UNINSTALLER}WELCOMEPAGE | MUI_${UNINSTALLER}FINISHPAGE
  312. !insertmacro INSTALLOPTIONS_EXTRACT_AS "${MUI_${UNINSTALLER}WELCOMEFINISHPAGE_INI}" "ioSpecial.ini"
  313. File "/oname=$PLUGINSDIR\modern-wizard.bmp" "${MUI_${UNINSTALLER}WELCOMEFINISHPAGE_BITMAP}"
  314. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 1" "Text" "$PLUGINSDIR\modern-wizard.bmp"
  315. !ifdef MUI_${UNINSTALLER}WELCOMEFINISHPAGE_BITMAP_NOSTRETCH
  316. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 1" "Flags" ""
  317. !endif
  318. !endif
  319. !macroend
  320. !macro MUI_HEADERIMAGE_INIT UNINSTALLER
  321. !ifdef MUI_HEADERIMAGE
  322. InitPluginsDir
  323. !ifdef MUI_HEADERIMAGE_${UNINSTALLER}BITMAP_RTL
  324. StrCmp $(^RTL) 0 mui.headerimageinit_nortl
  325. File "/oname=$PLUGINSDIR\modern-header.bmp" "${MUI_HEADERIMAGE_${UNINSTALLER}BITMAP_RTL}"
  326. !ifndef MUI_HEADERIMAGE_${UNINSTALLER}BITMAP_RTL_NOSTRETCH
  327. SetBrandingImage /IMGID=1046 /RESIZETOFIT "$PLUGINSDIR\modern-header.bmp"
  328. !else
  329. SetBrandingImage /IMGID=1046 "$PLUGINSDIR\modern-header.bmp"
  330. !endif
  331. Goto mui.headerimageinit_done
  332. mui.headerimageinit_nortl:
  333. !endif
  334. File "/oname=$PLUGINSDIR\modern-header.bmp" "${MUI_HEADERIMAGE_${UNINSTALLER}BITMAP}"
  335. !ifndef MUI_HEADERIMAGE_${UNINSTALLER}BITMAP_NOSTRETCH
  336. SetBrandingImage /IMGID=1046 /RESIZETOFIT "$PLUGINSDIR\modern-header.bmp"
  337. !else
  338. SetBrandingImage /IMGID=1046 "$PLUGINSDIR\modern-header.bmp"
  339. !endif
  340. !ifdef MUI_HEADERIMAGE_${UNINSTALLER}BITMAP_RTL
  341. mui.headerimageinit_done:
  342. !endif
  343. !endif
  344. !macroend
  345. ;--------------------------------
  346. ;INTERFACE - FUNCTIONS
  347. !macro MUI_FUNCTION_GUIINIT
  348. Function .onGUIInit
  349. !insertmacro MUI_GUIINIT
  350. !ifdef MUI_CUSTOMFUNCTION_GUIINIT
  351. Call "${MUI_CUSTOMFUNCTION_GUIINIT}"
  352. !endif
  353. FunctionEnd
  354. !macroend
  355. !macro MUI_FUNCTION_DESCRIPTION_BEGIN
  356. !verbose push
  357. !verbose ${MUI_VERBOSE}
  358. !ifndef MUI_VAR_TEXT
  359. Var MUI_TEXT
  360. !define MUI_VAR_TEXT
  361. !endif
  362. Function .onMouseOverSection
  363. !insertmacro MUI_DESCRIPTION_BEGIN
  364. !verbose pop
  365. !macroend
  366. !macro MUI_FUNCTION_DESCRIPTION_END
  367. !verbose push
  368. !verbose ${MUI_VERBOSE}
  369. !insertmacro MUI_DESCRIPTION_END
  370. !ifdef MUI_CUSTOMFUNCTION_ONMOUSEOVERSECTION
  371. Call "${MUI_CUSTOMFUNCTION_ONMOUSEOVERSECTION}"
  372. !endif
  373. FunctionEnd
  374. !verbose pop
  375. !macroend
  376. !macro MUI_UNFUNCTION_DESCRIPTION_BEGIN
  377. !verbose push
  378. !verbose ${MUI_VERBOSE}
  379. Function un.onMouseOverSection
  380. !insertmacro MUI_DESCRIPTION_BEGIN
  381. !verbose pop
  382. !macroend
  383. !macro MUI_UNFUNCTION_DESCRIPTION_END
  384. !verbose push
  385. !verbose ${MUI_VERBOSE}
  386. !insertmacro MUI_DESCRIPTION_END
  387. !ifdef MUI_CUSTOMFUNCTION_UNONMOUSEOVERSECTION
  388. Call "${MUI_CUSTOMFUNCTION_UNONMOUSEOVERSECTION}"
  389. !endif
  390. FunctionEnd
  391. !verbose pop
  392. !macroend
  393. !macro MUI_FUNCTION_ABORTWARNING
  394. Function .onUserAbort
  395. !ifdef MUI_ABORTWARNING
  396. !insertmacro MUI_ABORTWARNING
  397. !endif
  398. !ifdef MUI_CUSTOMFUNCTION_ABORT
  399. Call "${MUI_CUSTOMFUNCTION_ABORT}"
  400. !endif
  401. FunctionEnd
  402. !macroend
  403. !macro MUI_FUNCTION_UNABORTWARNING
  404. Function un.onUserAbort
  405. !ifdef MUI_UNABORTWARNING
  406. !insertmacro MUI_UNABORTWARNING
  407. !endif
  408. !ifdef MUI_CUSTOMFUNCTION_UNABORT
  409. Call "${MUI_CUSTOMFUNCTION_UNABORT}"
  410. !endif
  411. FunctionEnd
  412. !macroend
  413. !macro MUI_UNFUNCTION_GUIINIT
  414. Function un.onGUIInit
  415. !insertmacro MUI_UNGUIINIT
  416. !ifdef MUI_CUSTOMFUNCTION_UNGUIINIT
  417. Call "${MUI_CUSTOMFUNCTION_UNGUIINIT}"
  418. !endif
  419. FunctionEnd
  420. !macroend
  421. !macro MUI_FUNCTIONS_DESCRIPTION_BEGIN
  422. ;1.65 compatibility
  423. !warning "Modern UI macro name has changed. Please change MUI_FUNCTIONS_DESCRIPTION_BEGIN to MUI_FUNCTION_DESCRIPTION_BEGIN."
  424. !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
  425. !macroend
  426. !macro MUI_FUNCTIONS_DESCRIPTION_END
  427. ;1.65 compatibility
  428. !warning "Modern UI macro name has changed. Please change MUI_FUNCTIONS_DESCRIPTION_END to MUI_FUNCTION_DESCRIPTION_END."
  429. !insertmacro MUI_FUNCTION_DESCRIPTION_END
  430. !macroend
  431. ;--------------------------------
  432. ;START MENU FOLDER
  433. !macro MUI_STARTMENU_GETFOLDER ID VAR
  434. !verbose push
  435. !verbose ${MUI_VERBOSE}
  436. !ifdef MUI_STARTMENUPAGE_${ID}_REGISTRY_ROOT & MUI_STARTMENUPAGE_${ID}_REGISTRY_KEY & MUI_STARTMENUPAGE_${ID}_REGISTRY_VALUENAME
  437. ReadRegStr $MUI_TEMP1 "${MUI_STARTMENUPAGE_${ID}_REGISTRY_ROOT}" "${MUI_STARTMENUPAGE_${ID}_REGISTRY_KEY}" "${MUI_STARTMENUPAGE_${ID}_REGISTRY_VALUENAME}"
  438. StrCmp $MUI_TEMP1 "" +3
  439. StrCpy "${VAR}" $MUI_TEMP1
  440. Goto +2
  441. StrCpy "${VAR}" "${MUI_STARTMENUPAGE_${ID}_DEFAULTFOLDER}"
  442. !else
  443. StrCpy "${VAR}" "${MUI_STARTMENUPAGE_${ID}_DEFAULTFOLDER}"
  444. !endif
  445. !verbose pop
  446. !macroend
  447. !macro MUI_STARTMENU_WRITE_BEGIN ID
  448. !verbose push
  449. !verbose ${MUI_VERBOSE}
  450. !define MUI_STARTMENUPAGE_CURRENT_ID "${ID}"
  451. StrCpy $MUI_TEMP1 "${MUI_STARTMENUPAGE_${MUI_STARTMENUPAGE_CURRENT_ID}_VARIABLE}" 1
  452. StrCmp $MUI_TEMP1 ">" mui.startmenu_write_${MUI_STARTMENUPAGE_CURRENT_ID}_done
  453. StrCmp "${MUI_STARTMENUPAGE_${MUI_STARTMENUPAGE_CURRENT_ID}_VARIABLE}" "" 0 mui.startmenu_writebegin_${MUI_STARTMENUPAGE_CURRENT_ID}_notempty
  454. !insertmacro MUI_STARTMENU_GETFOLDER "${MUI_STARTMENUPAGE_CURRENT_ID}" "${MUI_STARTMENUPAGE_${MUI_STARTMENUPAGE_CURRENT_ID}_VARIABLE}"
  455. mui.startmenu_writebegin_${MUI_STARTMENUPAGE_CURRENT_ID}_notempty:
  456. !verbose pop
  457. !macroend
  458. !macro MUI_STARTMENU_WRITE_END
  459. !verbose push
  460. !verbose ${MUI_VERBOSE}
  461. !ifdef MUI_STARTMENUPAGE_${MUI_STARTMENUPAGE_CURRENT_ID}_REGISTRY_ROOT & MUI_STARTMENUPAGE_${MUI_STARTMENUPAGE_CURRENT_ID}_REGISTRY_KEY & MUI_STARTMENUPAGE_${MUI_STARTMENUPAGE_CURRENT_ID}_REGISTRY_VALUENAME
  462. WriteRegStr "${MUI_STARTMENUPAGE_${MUI_STARTMENUPAGE_CURRENT_ID}_REGISTRY_ROOT}" "${MUI_STARTMENUPAGE_${MUI_STARTMENUPAGE_CURRENT_ID}_REGISTRY_KEY}" "${MUI_STARTMENUPAGE_${MUI_STARTMENUPAGE_CURRENT_ID}_REGISTRY_VALUENAME}" "${MUI_STARTMENUPAGE_${MUI_STARTMENUPAGE_CURRENT_ID}_VARIABLE}"
  463. !endif
  464. mui.startmenu_write_${MUI_STARTMENUPAGE_CURRENT_ID}_done:
  465. !undef MUI_STARTMENUPAGE_CURRENT_ID
  466. !verbose pop
  467. !macroend
  468. ;--------------------------------
  469. ;PAGES
  470. !macro MUI_PAGE_INIT
  471. !ifdef MUI_INSERT
  472. !warning "MUI_[UN]PAGE_* inserted after MUI_LANGUAGE"
  473. !endif
  474. !insertmacro MUI_INTERFACE
  475. !insertmacro MUI_DEFAULT MUI_PAGE_UNINSTALLER_PREFIX ""
  476. !insertmacro MUI_DEFAULT MUI_PAGE_UNINSTALLER_FUNCPREFIX ""
  477. !insertmacro MUI_UNSET MUI_UNIQUEID
  478. !define MUI_UNIQUEID ${__LINE__}
  479. !macroend
  480. !macro MUI_UNPAGE_INIT
  481. !ifndef MUI_UNINSTALLER
  482. !define MUI_UNINSTALLER
  483. !endif
  484. !define MUI_PAGE_UNINSTALLER
  485. !insertmacro MUI_UNSET MUI_PAGE_UNINSTALLER_PREFIX
  486. !insertmacro MUI_UNSET MUI_PAGE_UNINSTALLER_FUNCPREFIX
  487. !define MUI_PAGE_UNINSTALLER_PREFIX "UN"
  488. !define MUI_PAGE_UNINSTALLER_FUNCPREFIX "un."
  489. !macroend
  490. !macro MUI_UNPAGE_END
  491. !undef MUI_PAGE_UNINSTALLER
  492. !undef MUI_PAGE_UNINSTALLER_PREFIX
  493. !undef MUI_PAGE_UNINSTALLER_FUNCPREFIX
  494. !macroend
  495. !macro MUI_PAGE_WELCOME
  496. !verbose push
  497. !verbose ${MUI_VERBOSE}
  498. !insertmacro MUI_PAGE_INIT
  499. !insertmacro MUI_SET MUI_${MUI_PAGE_UNINSTALLER_PREFIX}WELCOMEPAGE
  500. !insertmacro MUI_DEFAULT_IOCONVERT MUI_WELCOMEPAGE_TITLE "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_WELCOME_INFO_TITLE)"
  501. !insertmacro MUI_DEFAULT_IOCONVERT MUI_WELCOMEPAGE_TEXT "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_WELCOME_INFO_TEXT)"
  502. !ifndef MUI_VAR_HWND
  503. Var MUI_HWND
  504. !define MUI_VAR_HWND
  505. !endif
  506. PageEx ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}custom
  507. PageCallbacks ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.WelcomePre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.WelcomeLeave_${MUI_UNIQUEID}
  508. PageExEnd
  509. !insertmacro MUI_FUNCTION_WELCOMEPAGE ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.WelcomePre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.WelcomeLeave_${MUI_UNIQUEID}
  510. !insertmacro MUI_UNSET MUI_WELCOMEPAGE_TITLE
  511. !insertmacro MUI_UNSET MUI_WELCOMEPAGE_TITLE_3LINES
  512. !insertmacro MUI_UNSET MUI_WELCOMEPAGE_TEXT
  513. !verbose pop
  514. !macroend
  515. !macro MUI_PAGE_LICENSE LICENSEDATA
  516. !verbose push
  517. !verbose ${MUI_VERBOSE}
  518. !insertmacro MUI_PAGE_INIT
  519. !insertmacro MUI_SET MUI_${MUI_PAGE_UNINSTALLER_PREFIX}LICENSEPAGE
  520. !insertmacro MUI_DEFAULT MUI_LICENSEPAGE_TEXT_TOP "$(MUI_INNERTEXT_LICENSE_TOP)"
  521. !insertmacro MUI_DEFAULT MUI_LICENSEPAGE_BUTTON ""
  522. !insertmacro MUI_DEFAULT MUI_LICENSEPAGE_CHECKBOX_TEXT ""
  523. !insertmacro MUI_DEFAULT MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_ACCEPT ""
  524. !insertmacro MUI_DEFAULT MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_DECLINE ""
  525. PageEx ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}license
  526. PageCallbacks ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.LicensePre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.LicenseShow_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.LicenseLeave_${MUI_UNIQUEID}
  527. Caption " "
  528. LicenseData "${LICENSEDATA}"
  529. !ifndef MUI_LICENSEPAGE_TEXT_BOTTOM
  530. !ifndef MUI_LICENSEPAGE_CHECKBOX & MUI_LICENSEPAGE_RADIOBUTTONS
  531. LicenseText "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}INNERTEXT_LICENSE_BOTTOM)" "${MUI_LICENSEPAGE_BUTTON}"
  532. !else ifdef MUI_LICENSEPAGE_CHECKBOX
  533. LicenseText "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}INNERTEXT_LICENSE_BOTTOM_CHECKBOX)" "${MUI_LICENSEPAGE_BUTTON}"
  534. !else
  535. LicenseText "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}INNERTEXT_LICENSE_BOTTOM_RADIOBUTTONS)" "${MUI_LICENSEPAGE_BUTTON}"
  536. !endif
  537. !else
  538. LicenseText "${MUI_LICENSEPAGE_TEXT_BOTTOM}" "${MUI_LICENSEPAGE_BUTTON}"
  539. !endif
  540. !ifdef MUI_LICENSEPAGE_CHECKBOX
  541. LicenseForceSelection checkbox "${MUI_LICENSEPAGE_CHECKBOX_TEXT}"
  542. !else ifdef MUI_LICENSEPAGE_RADIOBUTTONS
  543. LicenseForceSelection radiobuttons "${MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_ACCEPT}" "${MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_DECLINE}"
  544. !endif
  545. PageExEnd
  546. !insertmacro MUI_FUNCTION_LICENSEPAGE ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.LicensePre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.LicenseShow_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.LicenseLeave_${MUI_UNIQUEID}
  547. !insertmacro MUI_UNSET MUI_LICENSEPAGE_TEXT_TOP
  548. !insertmacro MUI_UNSET MUI_LICENSEPAGE_TEXT_BOTTOM
  549. !insertmacro MUI_UNSET MUI_LICENSEPAGE_BUTTON
  550. !insertmacro MUI_UNSET MUI_LICENSEPAGE_CHECKBOX
  551. !insertmacro MUI_UNSET MUI_LICENSEPAGE_CHECKBOX_TEXT
  552. !insertmacro MUI_UNSET MUI_LICENSEPAGE_RADIOBUTTONS
  553. !insertmacro MUI_UNSET MUI_LICENSEPAGE_CHECKBOX_TEXT_ACCEPT
  554. !insertmacro MUI_UNSET MUI_LICENSEPAGE_CHECKBOX_TEXT_DECLINE
  555. !verbose pop
  556. !macroend
  557. !macro MUI_PAGE_COMPONENTS
  558. !verbose push
  559. !verbose ${MUI_VERBOSE}
  560. !insertmacro MUI_PAGE_INIT
  561. !insertmacro MUI_SET MUI_${MUI_PAGE_UNINSTALLER_PREFIX}COMPONENTSPAGE
  562. !insertmacro MUI_DEFAULT MUI_COMPONENTSPAGE_TEXT_TOP ""
  563. !insertmacro MUI_DEFAULT MUI_COMPONENTSPAGE_TEXT_COMPLIST ""
  564. !insertmacro MUI_DEFAULT MUI_COMPONENTSPAGE_TEXT_INSTTYPE ""
  565. !insertmacro MUI_DEFAULT MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_TITLE "$(MUI_INNERTEXT_COMPONENTS_DESCRIPTION_TITLE)"
  566. !insertmacro MUI_DEFAULT MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_INFO "$(MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO)"
  567. !ifndef MUI_VAR_TEXT
  568. Var MUI_TEXT
  569. !define MUI_VAR_TEXT
  570. !endif
  571. PageEx ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}components
  572. PageCallbacks ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.ComponentsPre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.ComponentsShow_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.ComponentsLeave_${MUI_UNIQUEID}
  573. Caption " "
  574. ComponentText "${MUI_COMPONENTSPAGE_TEXT_TOP}" "${MUI_COMPONENTSPAGE_TEXT_INSTTYPE}" "${MUI_COMPONENTSPAGE_TEXT_COMPLIST}"
  575. PageExEnd
  576. !insertmacro MUI_FUNCTION_COMPONENTSPAGE ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.ComponentsPre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.ComponentsShow_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.ComponentsLeave_${MUI_UNIQUEID}
  577. !undef MUI_COMPONENTSPAGE_TEXT_TOP
  578. !undef MUI_COMPONENTSPAGE_TEXT_COMPLIST
  579. !undef MUI_COMPONENTSPAGE_TEXT_INSTTYPE
  580. !insertmacro MUI_UNSET MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_TITLE
  581. !insertmacro MUI_UNSET MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_INFO
  582. !verbose pop
  583. !macroend
  584. !macro MUI_PAGE_DIRECTORY
  585. !verbose push
  586. !verbose ${MUI_VERBOSE}
  587. !insertmacro MUI_PAGE_INIT
  588. !insertmacro MUI_SET MUI_${MUI_PAGE_UNINSTALLER_PREFIX}DIRECTORYPAGE
  589. !insertmacro MUI_DEFAULT MUI_DIRECTORYPAGE_TEXT_TOP ""
  590. !insertmacro MUI_DEFAULT MUI_DIRECTORYPAGE_TEXT_DESTINATION ""
  591. PageEx ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}directory
  592. PageCallbacks ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.DirectoryPre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.DirectoryShow_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.DirectoryLeave_${MUI_UNIQUEID}
  593. Caption " "
  594. DirText "${MUI_DIRECTORYPAGE_TEXT_TOP}" "${MUI_DIRECTORYPAGE_TEXT_DESTINATION}"
  595. !ifdef MUI_DIRECTORYPAGE_VARIABLE
  596. DirVar "${MUI_DIRECTORYPAGE_VARIABLE}"
  597. !endif
  598. !ifdef MUI_DIRECTORYPAGE_VERIFYONLEAVE
  599. DirVerify leave
  600. !endif
  601. PageExEnd
  602. !insertmacro MUI_FUNCTION_DIRECTORYPAGE ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.DirectoryPre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.DirectoryShow_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.DirectoryLeave_${MUI_UNIQUEID}
  603. !undef MUI_DIRECTORYPAGE_TEXT_TOP
  604. !undef MUI_DIRECTORYPAGE_TEXT_DESTINATION
  605. !insertmacro MUI_UNSET MUI_DIRECTORYPAGE_BGCOLOR
  606. !insertmacro MUI_UNSET MUI_DIRECTORYPAGE_VARIABLE
  607. !insertmacro MUI_UNSET MUI_DIRECTORYPAGE_VERIFYONLEAVE
  608. !verbose pop
  609. !macroend
  610. !macro MUI_PAGE_STARTMENU ID VAR
  611. !verbose push
  612. !verbose ${MUI_VERBOSE}
  613. !insertmacro MUI_PAGE_INIT
  614. !insertmacro MUI_SET MUI_${MUI_PAGE_UNINSTALLER_PREFIX}STARTMENUPAGE
  615. !insertmacro MUI_DEFAULT MUI_STARTMENUPAGE_DEFAULTFOLDER "$(^Name)"
  616. !insertmacro MUI_DEFAULT MUI_STARTMENUPAGE_TEXT_TOP "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}INNERTEXT_STARTMENU_TOP)"
  617. !insertmacro MUI_DEFAULT MUI_STARTMENUPAGE_TEXT_CHECKBOX "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}INNERTEXT_STARTMENU_CHECKBOX)"
  618. !define MUI_STARTMENUPAGE_VARIABLE "${VAR}"
  619. !define "MUI_STARTMENUPAGE_${ID}_VARIABLE" "${MUI_STARTMENUPAGE_VARIABLE}"
  620. !define "MUI_STARTMENUPAGE_${ID}_DEFAULTFOLDER" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
  621. !ifdef MUI_STARTMENUPAGE_REGISTRY_ROOT
  622. !define "MUI_STARTMENUPAGE_${ID}_REGISTRY_ROOT" "${MUI_STARTMENUPAGE_REGISTRY_ROOT}"
  623. !endif
  624. !ifdef MUI_STARTMENUPAGE_REGISTRY_KEY
  625. !define "MUI_STARTMENUPAGE_${ID}_REGISTRY_KEY" "${MUI_STARTMENUPAGE_REGISTRY_KEY}"
  626. !endif
  627. !ifdef MUI_STARTMENUPAGE_REGISTRY_VALUENAME
  628. !define "MUI_STARTMENUPAGE_${ID}_REGISTRY_VALUENAME" "${MUI_STARTMENUPAGE_REGISTRY_VALUENAME}"
  629. !endif
  630. !ifndef MUI_VAR_HWND
  631. Var MUI_HWND
  632. !define MUI_VAR_HWND
  633. !endif
  634. PageEx ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}custom
  635. PageCallbacks ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.StartmenuPre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.StartmenuLeave_${MUI_UNIQUEID}
  636. Caption " "
  637. PageExEnd
  638. !insertmacro MUI_FUNCTION_STARTMENUPAGE ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.StartmenuPre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.StartmenuLeave_${MUI_UNIQUEID}
  639. !undef MUI_STARTMENUPAGE_VARIABLE
  640. !undef MUI_STARTMENUPAGE_TEXT_TOP
  641. !undef MUI_STARTMENUPAGE_TEXT_CHECKBOX
  642. !undef MUI_STARTMENUPAGE_DEFAULTFOLDER
  643. !insertmacro MUI_UNSET MUI_STARTMENUPAGE_NODISABLE
  644. !insertmacro MUI_UNSET MUI_STARTMENUPAGE_REGISTRY_ROOT
  645. !insertmacro MUI_UNSET MUI_STARTMENUPAGE_REGISTRY_KEY
  646. !insertmacro MUI_UNSET MUI_STARTMENUPAGE_REGISTRY_VALUENAME
  647. !insertmacro MUI_UNSET MUI_STARTMENUPAGE_BGCOLOR
  648. !verbose pop
  649. !macroend
  650. !macro MUI_PAGE_INSTFILES
  651. !verbose push
  652. !verbose ${MUI_VERBOSE}
  653. !insertmacro MUI_PAGE_INIT
  654. !insertmacro MUI_SET MUI_${MUI_PAGE_UNINSTALLER_PREFIX}INSTFILESPAGE
  655. PageEx ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}instfiles
  656. PageCallbacks ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.InstFilesPre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.InstFilesShow_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.InstFilesLeave_${MUI_UNIQUEID}
  657. Caption " "
  658. PageExEnd
  659. !insertmacro MUI_FUNCTION_INSTFILESPAGE ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.InstFilesPre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.InstFilesShow_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.InstFilesLeave_${MUI_UNIQUEID}
  660. !insertmacro MUI_UNSET MUI_INSTFILESPAGE_FINISHHEADER_TEXT
  661. !insertmacro MUI_UNSET MUI_INSTFILESPAGE_FINISHHEADER_SUBTEXT
  662. !insertmacro MUI_UNSET MUI_INSTFILESPAGE_ABORTWARNING_TEXT
  663. !insertmacro MUI_UNSET MUI_INSTFILESPAGE_ABORTWARNING_SUBTEXT
  664. !verbose pop
  665. !macroend
  666. !macro MUI_PAGE_FINISH
  667. !verbose push
  668. !verbose ${MUI_VERBOSE}
  669. !insertmacro MUI_PAGE_INIT
  670. !insertmacro MUI_SET MUI_${MUI_PAGE_UNINSTALLER_PREFIX}FINISHPAGE
  671. !insertmacro MUI_DEFAULT_IOCONVERT MUI_FINISHPAGE_TITLE "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_FINISH_INFO_TITLE)"
  672. !insertmacro MUI_DEFAULT_IOCONVERT MUI_FINISHPAGE_TEXT "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_FINISH_INFO_TEXT)"
  673. !insertmacro MUI_DEFAULT_IOCONVERT MUI_FINISHPAGE_BUTTON "$(MUI_BUTTONTEXT_FINISH)"
  674. !insertmacro MUI_DEFAULT_IOCONVERT MUI_FINISHPAGE_TEXT_REBOOT "$(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_FINISH_INFO_REBOOT)"
  675. !insertmacro MUI_DEFAULT_IOCONVERT MUI_FINISHPAGE_TEXT_REBOOTNOW "$(MUI_TEXT_FINISH_REBOOTNOW)"
  676. !insertmacro MUI_DEFAULT_IOCONVERT MUI_FINISHPAGE_TEXT_REBOOTLATER "$(MUI_TEXT_FINISH_REBOOTLATER)"
  677. !insertmacro MUI_DEFAULT_IOCONVERT MUI_FINISHPAGE_RUN_TEXT "$(MUI_TEXT_FINISH_RUN)"
  678. !insertmacro MUI_DEFAULT_IOCONVERT MUI_FINISHPAGE_SHOWREADME_TEXT "$(MUI_TEXT_FINISH_SHOWREADME)"
  679. !insertmacro MUI_DEFAULT MUI_FINISHPAGE_LINK_COLOR "000080"
  680. !ifndef MUI_VAR_HWND
  681. Var MUI_HWND
  682. !define MUI_VAR_HWND
  683. !endif
  684. !ifndef MUI_PAGE_UNINSTALLER
  685. !ifndef MUI_FINISHPAGE_NOAUTOCLOSE
  686. AutoCloseWindow true
  687. !endif
  688. !endif
  689. !ifdef MUI_FINISHPAGE_CANCEL_ENABLED
  690. !ifndef MUI_VAR_NOABORTWARNING
  691. !define MUI_VAR_NOABORTWARNING
  692. Var MUI_NOABORTWARNING
  693. !endif
  694. !endif
  695. PageEx ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}custom
  696. PageCallbacks ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.FinishPre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.FinishLeave_${MUI_UNIQUEID}
  697. Caption " "
  698. PageExEnd
  699. !insertmacro MUI_FUNCTION_FINISHPAGE ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.FinishPre_${MUI_UNIQUEID} ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}mui.FinishLeave_${MUI_UNIQUEID}
  700. !insertmacro MUI_UNSET MUI_FINISHPAGE_TITLE
  701. !insertmacro MUI_UNSET MUI_FINISHPAGE_TITLE_3LINES
  702. !insertmacro MUI_UNSET MUI_FINISHPAGE_TEXT
  703. !insertmacro MUI_UNSET MUI_FINISHPAGE_TEXT_LARGE
  704. !insertmacro MUI_UNSET MUI_FINISHPAGE_BUTTON
  705. !insertmacro MUI_UNSET MUI_FINISHPAGE_CANCEL_ENABLED
  706. !insertmacro MUI_UNSET MUI_FINISHPAGE_TEXT_REBOOT
  707. !insertmacro MUI_UNSET MUI_FINISHPAGE_TEXT_REBOOTNOW
  708. !insertmacro MUI_UNSET MUI_FINISHPAGE_TEXT_REBOOTLATER
  709. !insertmacro MUI_UNSET MUI_FINISHPAGE_REBOOTLATER_DEFAULT
  710. !insertmacro MUI_UNSET MUI_FINISHPAGE_RUN
  711. !insertmacro MUI_UNSET MUI_FINISHPAGE_RUN_TEXT
  712. !insertmacro MUI_UNSET MUI_FINISHPAGE_RUN_PARAMETERS
  713. !insertmacro MUI_UNSET MUI_FINISHPAGE_RUN_NOTCHECKED
  714. !insertmacro MUI_UNSET MUI_FINISHPAGE_RUN_FUNCTION
  715. !insertmacro MUI_UNSET MUI_FINISHPAGE_SHOWREADME
  716. !insertmacro MUI_UNSET MUI_FINISHPAGE_SHOWREADME_TEXT
  717. !insertmacro MUI_UNSET MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
  718. !insertmacro MUI_UNSET MUI_FINISHPAGE_SHOWREADME_FUNCTION
  719. !insertmacro MUI_UNSET MUI_FINISHPAGE_LINK
  720. !insertmacro MUI_UNSET MUI_FINISHPAGE_LINK_LOCATION
  721. !insertmacro MUI_UNSET MUI_FINISHPAGE_LINK_COLOR
  722. !insertmacro MUI_UNSET MUI_FINISHPAGE_NOREBOOTSUPPORT
  723. !insertmacro MUI_UNSET MUI_FINISHPAGE_CURFIELD_TOP
  724. !insertmacro MUI_UNSET MUI_FINISHPAGE_CURFIELD_BOTTOM
  725. !verbose pop
  726. !macroend
  727. !macro MUI_UNPAGE_WELCOME
  728. !verbose push
  729. !verbose ${MUI_VERBOSE}
  730. !insertmacro MUI_UNPAGE_INIT
  731. !insertmacro MUI_PAGE_WELCOME
  732. !insertmacro MUI_UNPAGE_END
  733. !verbose pop
  734. !macroend
  735. !macro MUI_UNPAGE_CONFIRM
  736. !verbose push
  737. !verbose ${MUI_VERBOSE}
  738. !ifndef MUI_UNINSTALLER
  739. !define MUI_UNINSTALLER
  740. !endif
  741. !insertmacro MUI_PAGE_INIT
  742. !insertmacro MUI_SET MUI_UNCONFIRMPAGE
  743. !insertmacro MUI_DEFAULT MUI_UNCONFIRMPAGE_TEXT_TOP ""
  744. !insertmacro MUI_DEFAULT MUI_UNCONFIRMPAGE_TEXT_LOCATION ""
  745. PageEx un.uninstConfirm
  746. PageCallbacks un.mui.ConfirmPre_${MUI_UNIQUEID} un.mui.ConfirmShow_${MUI_UNIQUEID} un.mui.ConfirmLeave_${MUI_UNIQUEID}
  747. Caption " "
  748. UninstallText "${MUI_UNCONFIRMPAGE_TEXT_TOP}" "${MUI_UNCONFIRMPAGE_TEXT_LOCATION}"
  749. PageExEnd
  750. !insertmacro MUI_UNFUNCTION_CONFIRMPAGE un.mui.ConfirmPre_${MUI_UNIQUEID} un.mui.ConfirmShow_${MUI_UNIQUEID} un.mui.ConfirmLeave_${MUI_UNIQUEID}
  751. !insertmacro MUI_UNSET MUI_UNCONFIRMPAGE_TEXT_TOP
  752. !insertmacro MUI_UNSET MUI_UNCONFIRMPAGE_TEXT_LOCATION
  753. !verbose pop
  754. !macroend
  755. !macro MUI_UNPAGE_LICENSE LICENSEDATA
  756. !verbose push
  757. !verbose ${MUI_VERBOSE}
  758. !insertmacro MUI_UNPAGE_INIT
  759. !insertmacro MUI_PAGE_LICENSE "${LICENSEDATA}"
  760. !insertmacro MUI_UNPAGE_END
  761. !verbose pop
  762. !macroend
  763. !macro MUI_UNPAGE_COMPONENTS
  764. !verbose push
  765. !verbose ${MUI_VERBOSE}
  766. !insertmacro MUI_UNPAGE_INIT
  767. !insertmacro MUI_PAGE_COMPONENTS
  768. !insertmacro MUI_UNPAGE_END
  769. !verbose pop
  770. !macroend
  771. !macro MUI_UNPAGE_DIRECTORY
  772. !verbose push
  773. !verbose ${MUI_VERBOSE}
  774. !insertmacro MUI_UNPAGE_INIT
  775. !insertmacro MUI_PAGE_DIRECTORY
  776. !insertmacro MUI_UNPAGE_END
  777. !verbose pop
  778. !macroend
  779. !macro MUI_UNPAGE_INSTFILES
  780. !verbose push
  781. !verbose ${MUI_VERBOSE}
  782. !insertmacro MUI_UNPAGE_INIT
  783. !insertmacro MUI_PAGE_INSTFILES
  784. !insertmacro MUI_UNPAGE_END
  785. !verbose pop
  786. !macroend
  787. !macro MUI_UNPAGE_FINISH
  788. !verbose push
  789. !verbose ${MUI_VERBOSE}
  790. !insertmacro MUI_UNPAGE_INIT
  791. !insertmacro MUI_PAGE_FINISH
  792. !insertmacro MUI_UNPAGE_END
  793. !verbose pop
  794. !macroend
  795. ;--------------------------------
  796. ;PAGE FUNCTIONS
  797. !macro MUI_PAGE_FUNCTION_CUSTOM TYPE
  798. !ifdef MUI_PAGE_CUSTOMFUNCTION_${TYPE}
  799. Call "${MUI_PAGE_CUSTOMFUNCTION_${TYPE}}"
  800. !undef MUI_PAGE_CUSTOMFUNCTION_${TYPE}
  801. !endif
  802. !macroend
  803. !macro MUI_WELCOMEFINISHPAGE_FUNCTION_CUSTOM
  804. !ifdef MUI_WELCOMEFINISHPAGE_CUSTOMFUNCTION_INIT
  805. Call "${MUI_WELCOMEFINISHPAGE_CUSTOMFUNCTION_INIT}"
  806. !undef MUI_WELCOMEFINISHPAGE_CUSTOMFUNCTION_INIT
  807. !endif
  808. !macroend
  809. !macro MUI_FUNCTION_WELCOMEPAGE PRE LEAVE
  810. Function "${PRE}"
  811. !insertmacro MUI_WELCOMEFINISHPAGE_FUNCTION_CUSTOM
  812. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "NumFields" "3"
  813. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "NextButtonText" ""
  814. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "CancelEnabled" ""
  815. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field 2" "Text" MUI_WELCOMEPAGE_TITLE
  816. !ifndef MUI_WELCOMEPAGE_TITLE_3LINES
  817. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 2" "Bottom" "38"
  818. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Top" "45"
  819. !else
  820. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 2" "Bottom" "48"
  821. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Top" "55"
  822. !endif
  823. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "185"
  824. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field 3" "Text" MUI_WELCOMEPAGE_TEXT
  825. !insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
  826. LockWindow on
  827. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1028
  828. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  829. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1256
  830. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  831. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1035
  832. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  833. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1037
  834. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  835. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1038
  836. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  837. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1039
  838. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  839. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1045
  840. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  841. LockWindow off
  842. !insertmacro INSTALLOPTIONS_INITDIALOG "ioSpecial.ini"
  843. Pop $MUI_HWND
  844. SetCtlColors $MUI_HWND "" "${MUI_BGCOLOR}"
  845. GetDlgItem $MUI_TEMP1 $MUI_HWND 1201
  846. SetCtlColors $MUI_TEMP1 "" "${MUI_BGCOLOR}"
  847. CreateFont $MUI_TEMP2 "$(^Font)" "12" "700"
  848. SendMessage $MUI_TEMP1 ${WM_SETFONT} $MUI_TEMP2 0
  849. GetDlgItem $MUI_TEMP1 $MUI_HWND 1202
  850. SetCtlColors $MUI_TEMP1 "" "${MUI_BGCOLOR}"
  851. !insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
  852. !insertmacro INSTALLOPTIONS_SHOW
  853. LockWindow on
  854. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1028
  855. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  856. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1256
  857. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  858. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1035
  859. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  860. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1037
  861. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  862. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1038
  863. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  864. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1039
  865. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  866. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1045
  867. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  868. LockWindow off
  869. FunctionEnd
  870. Function "${LEAVE}"
  871. !insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
  872. FunctionEnd
  873. !macroend
  874. !macro MUI_FUNCTION_LICENSEPAGE PRE SHOW LEAVE
  875. Function "${PRE}"
  876. !insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
  877. !insertmacro MUI_HEADER_TEXT_PAGE $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_LICENSE_TITLE) $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_LICENSE_SUBTITLE)
  878. FunctionEnd
  879. Function "${SHOW}"
  880. !insertmacro MUI_INNERDIALOG_TEXT 1040 "${MUI_LICENSEPAGE_TEXT_TOP}"
  881. !insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
  882. FunctionEnd
  883. Function "${LEAVE}"
  884. !insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
  885. FunctionEnd
  886. !macroend
  887. !macro MUI_FUNCTION_COMPONENTSPAGE PRE SHOW LEAVE
  888. Function "${PRE}"
  889. !insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
  890. !insertmacro MUI_HEADER_TEXT_PAGE $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_COMPONENTS_TITLE) $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_COMPONENTS_SUBTITLE)
  891. FunctionEnd
  892. Function "${SHOW}"
  893. !insertmacro MUI_INNERDIALOG_TEXT 1042 "${MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_TITLE}"
  894. FindWindow $MUI_TEMP1 "#32770" "" $HWNDPARENT
  895. GetDlgItem $MUI_TEMP1 $MUI_TEMP1 1043
  896. EnableWindow $MUI_TEMP1 0
  897. !insertmacro MUI_INNERDIALOG_TEXT 1043 "${MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_INFO}"
  898. StrCpy $MUI_TEXT "${MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_INFO}"
  899. !insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
  900. FunctionEnd
  901. Function "${LEAVE}"
  902. !insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
  903. FunctionEnd
  904. !macroend
  905. !macro MUI_FUNCTION_DIRECTORYPAGE PRE SHOW LEAVE
  906. Function "${PRE}"
  907. !insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
  908. !insertmacro MUI_HEADER_TEXT_PAGE $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_DIRECTORY_TITLE) $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_DIRECTORY_SUBTITLE)
  909. FunctionEnd
  910. Function "${SHOW}"
  911. !ifdef MUI_DIRECTORYPAGE_BGCOLOR
  912. FindWindow $MUI_TEMP1 "#32770" "" $HWNDPARENT
  913. GetDlgItem $MUI_TEMP1 $MUI_TEMP1 1019
  914. SetCtlColors $MUI_TEMP1 "" "${MUI_DIRECTORYPAGE_BGCOLOR}"
  915. !endif
  916. !insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
  917. FunctionEnd
  918. Function "${LEAVE}"
  919. !insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
  920. FunctionEnd
  921. !macroend
  922. !macro MUI_FUNCTION_STARTMENUPAGE PRE LEAVE
  923. Function "${PRE}"
  924. !insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
  925. !ifdef MUI_STARTMENUPAGE_REGISTRY_ROOT & MUI_STARTMENUPAGE_REGISTRY_KEY & MUI_STARTMENUPAGE_REGISTRY_VALUENAME
  926. StrCmp "${MUI_STARTMENUPAGE_VARIABLE}" "" 0 +4
  927. ReadRegStr $MUI_TEMP1 "${MUI_STARTMENUPAGE_REGISTRY_ROOT}" "${MUI_STARTMENUPAGE_REGISTRY_KEY}" "${MUI_STARTMENUPAGE_REGISTRY_VALUENAME}"
  928. StrCmp $MUI_TEMP1 "" +2
  929. StrCpy "${MUI_STARTMENUPAGE_VARIABLE}" $MUI_TEMP1
  930. !endif
  931. !insertmacro MUI_HEADER_TEXT_PAGE $(MUI_TEXT_STARTMENU_TITLE) $(MUI_TEXT_STARTMENU_SUBTITLE)
  932. StrCmp $(^RTL) 0 mui.startmenu_nortl
  933. !ifndef MUI_STARTMENUPAGE_NODISABLE
  934. StartMenu::Init /rtl /noicon /autoadd /text "${MUI_STARTMENUPAGE_TEXT_TOP}" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" /checknoshortcuts "${MUI_STARTMENUPAGE_TEXT_CHECKBOX}" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
  935. !else
  936. StartMenu::Init /rtl /noicon /autoadd /text "${MUI_STARTMENUPAGE_TEXT_TOP}" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
  937. !endif
  938. Goto mui.startmenu_initdone
  939. mui.startmenu_nortl:
  940. !ifndef MUI_STARTMENUPAGE_NODISABLE
  941. StartMenu::Init /noicon /autoadd /text "${MUI_STARTMENUPAGE_TEXT_TOP}" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" /checknoshortcuts "${MUI_STARTMENUPAGE_TEXT_CHECKBOX}" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
  942. !else
  943. StartMenu::Init /noicon /autoadd /text "${MUI_STARTMENUPAGE_TEXT_TOP}" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
  944. !endif
  945. mui.startmenu_initdone:
  946. Pop $MUI_HWND
  947. !ifdef MUI_STARTMENUPAGE_BGCOLOR
  948. GetDlgItem $MUI_TEMP1 $MUI_HWND 1002
  949. SetCtlColors $MUI_TEMP1 "" "${MUI_STARTMENUPAGE_BGCOLOR}"
  950. GetDlgItem $MUI_TEMP1 $MUI_HWND 1004
  951. SetCtlColors $MUI_TEMP1 "" "${MUI_STARTMENUPAGE_BGCOLOR}"
  952. !endif
  953. !insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
  954. StartMenu::Show
  955. Pop $MUI_TEMP1
  956. StrCmp $MUI_TEMP1 "success" 0 +2
  957. Pop "${MUI_STARTMENUPAGE_VARIABLE}"
  958. FunctionEnd
  959. Function "${LEAVE}"
  960. !insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
  961. FunctionEnd
  962. !macroend
  963. !macro MUI_FUNCTION_INSTFILESPAGE PRE SHOW LEAVE
  964. Function "${PRE}"
  965. !insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
  966. !insertmacro MUI_HEADER_TEXT_PAGE $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_${MUI_PAGE_UNINSTALLER_PREFIX}INSTALLING_TITLE) $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_${MUI_PAGE_UNINSTALLER_PREFIX}INSTALLING_SUBTITLE)
  967. FunctionEnd
  968. Function "${SHOW}"
  969. !insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
  970. FunctionEnd
  971. Function "${LEAVE}"
  972. !insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
  973. !insertmacro MUI_ENDHEADER
  974. !insertmacro MUI_LANGDLL_SAVELANGUAGE
  975. FunctionEnd
  976. !macroend
  977. !macro MUI_FUNCTION_FINISHPAGE PRE LEAVE
  978. Function "${PRE}"
  979. !insertmacro MUI_WELCOMEFINISHPAGE_FUNCTION_CUSTOM
  980. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Settings" "NextButtonText" MUI_FINISHPAGE_BUTTON
  981. !ifdef MUI_FINISHPAGE_CANCEL_ENABLED
  982. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "CancelEnabled" "1"
  983. !endif
  984. !ifndef MUI_FINISHPAGE_TITLE_3LINES
  985. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 2" "Bottom" "38"
  986. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Top" "45"
  987. !else
  988. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 2" "Bottom" "48"
  989. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Top" "55"
  990. !endif
  991. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field 2" "Text" MUI_FINISHPAGE_TITLE
  992. !ifdef MUI_FINISHPAGE_RUN | MUI_FINISHPAGE_SHOWREADME
  993. !ifndef MUI_FINISHPAGE_TITLE_3LINES
  994. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  995. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "85"
  996. !else
  997. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "115"
  998. !endif
  999. !else
  1000. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1001. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "95"
  1002. !else
  1003. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "125"
  1004. !endif
  1005. !endif
  1006. !else
  1007. !ifndef MUI_FINISHPAGE_LINK
  1008. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "185"
  1009. !else
  1010. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "175"
  1011. !endif
  1012. !endif
  1013. !ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
  1014. IfRebootFlag 0 mui.finish_noreboot_init
  1015. !ifndef MUI_FINISHPAGE_TITLE_3LINES
  1016. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1017. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "85"
  1018. !else
  1019. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "115"
  1020. !endif
  1021. !else
  1022. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1023. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "95"
  1024. !else
  1025. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "125"
  1026. !endif
  1027. !endif
  1028. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field 3" "Text" MUI_FINISHPAGE_TEXT_REBOOT
  1029. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "Numfields" "5"
  1030. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Type" "RadioButton"
  1031. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field 4" "Text" MUI_FINISHPAGE_TEXT_REBOOTNOW
  1032. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Left" "120"
  1033. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Right" "321"
  1034. !ifndef MUI_FINISHPAGE_TITLE_3LINES
  1035. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1036. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Top" "90"
  1037. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Bottom" "100"
  1038. !else
  1039. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Top" "120"
  1040. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Bottom" "130"
  1041. !endif
  1042. !else
  1043. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1044. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Top" "100"
  1045. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Bottom" "110"
  1046. !else
  1047. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Top" "130"
  1048. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Bottom" "140"
  1049. !endif
  1050. !endif
  1051. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Type" "RadioButton"
  1052. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field 5" "Text" MUI_FINISHPAGE_TEXT_REBOOTLATER
  1053. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Left" "120"
  1054. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Right" "321"
  1055. !ifndef MUI_FINISHPAGE_TITLE_3LINES
  1056. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Top" "110"
  1057. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Bottom" "120"
  1058. !else
  1059. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Top" "110"
  1060. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Bottom" "120"
  1061. !endif
  1062. !ifdef MUI_FINISHPAGE_REBOOTLATER_DEFAULT
  1063. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "State" "0"
  1064. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "State" "1"
  1065. !else
  1066. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "State" "1"
  1067. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "State" "0"
  1068. !endif
  1069. Goto mui.finish_load
  1070. mui.finish_noreboot_init:
  1071. !endif
  1072. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field 3" "Text" MUI_FINISHPAGE_TEXT
  1073. !ifdef MUI_FINISHPAGE_RUN
  1074. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Type" "CheckBox"
  1075. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field 4" "Text" MUI_FINISHPAGE_RUN_TEXT
  1076. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Left" "120"
  1077. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Right" "315"
  1078. !ifndef MUI_FINISHPAGE_TITLE_3LINES
  1079. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1080. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Top" "90"
  1081. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Bottom" "100"
  1082. !else
  1083. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Top" "120"
  1084. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Bottom" "130"
  1085. !endif
  1086. !else
  1087. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1088. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Top" "100"
  1089. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Bottom" "110"
  1090. !else
  1091. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Top" "130"
  1092. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Bottom" "140"
  1093. !endif
  1094. !endif
  1095. !ifndef MUI_FINISHPAGE_RUN_NOTCHECKED
  1096. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "State" "1"
  1097. !endif
  1098. !endif
  1099. !ifdef MUI_FINISHPAGE_SHOWREADME
  1100. !ifdef MUI_FINISHPAGE_CURFIELD_NO
  1101. !undef MUI_FINISHPAGE_CURFIELD_NO
  1102. !endif
  1103. !ifndef MUI_FINISHPAGE_RUN
  1104. !define MUI_FINISHPAGE_CURFIELD_NO 4
  1105. !ifndef MUI_FINISHPAGE_TITLE_3LINES
  1106. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1107. !define MUI_FINISHPAGE_CURFIELD_TOP 90
  1108. !define MUI_FINISHPAGE_CURFIELD_BOTTOM 100
  1109. !else
  1110. !define MUI_FINISHPAGE_CURFIELD_TOP 120
  1111. !define MUI_FINISHPAGE_CURFIELD_BOTTOM 130
  1112. !endif
  1113. !else
  1114. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1115. !define MUI_FINISHPAGE_CURFIELD_TOP 100
  1116. !define MUI_FINISHPAGE_CURFIELD_BOTTOM 110
  1117. !else
  1118. !define MUI_FINISHPAGE_CURFIELD_TOP 130
  1119. !define MUI_FINISHPAGE_CURFIELD_BOTTOM 140
  1120. !endif
  1121. !endif
  1122. !else
  1123. !define MUI_FINISHPAGE_CURFIELD_NO 5
  1124. !ifndef MUI_FINISHPAGE_TITLE_3LINES
  1125. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1126. !define MUI_FINISHPAGE_CURFIELD_TOP 110
  1127. !define MUI_FINISHPAGE_CURFIELD_BOTTOM 120
  1128. !else
  1129. !define MUI_FINISHPAGE_CURFIELD_TOP 140
  1130. !define MUI_FINISHPAGE_CURFIELD_BOTTOM 150
  1131. !endif
  1132. !else
  1133. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1134. !define MUI_FINISHPAGE_CURFIELD_TOP 120
  1135. !define MUI_FINISHPAGE_CURFIELD_BOTTOM 130
  1136. !else
  1137. !define MUI_FINISHPAGE_CURFIELD_TOP 150
  1138. !define MUI_FINISHPAGE_CURFIELD_BOTTOM 160
  1139. !endif
  1140. !endif
  1141. !endif
  1142. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Type" "CheckBox"
  1143. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Text" MUI_FINISHPAGE_SHOWREADME_TEXT
  1144. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Left" "120"
  1145. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Right" "315"
  1146. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Top" ${MUI_FINISHPAGE_CURFIELD_TOP}
  1147. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Bottom" ${MUI_FINISHPAGE_CURFIELD_BOTTOM}
  1148. !ifndef MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
  1149. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "State" "1"
  1150. !endif
  1151. !endif
  1152. !ifdef MUI_FINISHPAGE_LINK
  1153. !ifdef MUI_FINISHPAGE_CURFIELD_NO
  1154. !undef MUI_FINISHPAGE_CURFIELD_NO
  1155. !endif
  1156. !ifdef MUI_FINISHPAGE_RUN & MUI_FINISHPAGE_SHOWREADME
  1157. !define MUI_FINISHPAGE_CURFIELD_NO 6
  1158. !else ifdef MUI_FINISHPAGE_RUN | MUI_FINISHPAGE_SHOWREADME
  1159. !define MUI_FINISHPAGE_CURFIELD_NO 5
  1160. !else
  1161. !define MUI_FINISHPAGE_CURFIELD_NO 4
  1162. !endif
  1163. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Type" "Link"
  1164. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Text" MUI_FINISHPAGE_LINK
  1165. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Left" "120"
  1166. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Right" "315"
  1167. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Top" "175"
  1168. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Bottom" "185"
  1169. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "State" MUI_FINISHPAGE_LINK_LOCATION
  1170. !endif
  1171. !ifdef MUI_FINISHPAGE_RUN & MUI_FINISHPAGE_SHOWREADME & MUI_FINISHPAGE_LINK
  1172. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "Numfields" "6"
  1173. !else ifdef MUI_FINISHPAGE_RUN & MUI_FINISHPAGE_SHOWREADME
  1174. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "Numfields" "5"
  1175. !else ifdef MUI_FINISHPAGE_RUN & MUI_FINISHPAGE_LINK
  1176. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "Numfields" "5"
  1177. !else ifdef MUI_FINISHPAGE_SHOWREADME & MUI_FINISHPAGE_LINK
  1178. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "Numfields" "5"
  1179. !else ifdef MUI_FINISHPAGE_RUN | MUI_FINISHPAGE_SHOWREADME | MUI_FINISHPAGE_LINK
  1180. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "Numfields" "4"
  1181. !endif
  1182. !ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
  1183. mui.finish_load:
  1184. !endif
  1185. !insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
  1186. LockWindow on
  1187. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1028
  1188. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  1189. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1256
  1190. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  1191. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1035
  1192. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  1193. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1037
  1194. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  1195. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1038
  1196. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  1197. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1039
  1198. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  1199. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1045
  1200. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  1201. LockWindow off
  1202. !insertmacro INSTALLOPTIONS_INITDIALOG "ioSpecial.ini"
  1203. Pop $MUI_HWND
  1204. SetCtlColors $MUI_HWND "" "${MUI_BGCOLOR}"
  1205. GetDlgItem $MUI_TEMP1 $MUI_HWND 1201
  1206. SetCtlColors $MUI_TEMP1 "" "${MUI_BGCOLOR}"
  1207. CreateFont $MUI_TEMP2 "$(^Font)" "12" "700"
  1208. SendMessage $MUI_TEMP1 ${WM_SETFONT} $MUI_TEMP2 0
  1209. GetDlgItem $MUI_TEMP1 $MUI_HWND 1202
  1210. SetCtlColors $MUI_TEMP1 "" "${MUI_BGCOLOR}"
  1211. !ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
  1212. IfRebootFlag 0 mui.finish_noreboot_show
  1213. GetDlgItem $MUI_TEMP1 $MUI_HWND 1203
  1214. SetCtlColors $MUI_TEMP1 "" "${MUI_BGCOLOR}"
  1215. GetDlgItem $MUI_TEMP1 $MUI_HWND 1204
  1216. SetCtlColors $MUI_TEMP1 "" "${MUI_BGCOLOR}"
  1217. Goto mui.finish_show
  1218. mui.finish_noreboot_show:
  1219. !endif
  1220. !ifdef MUI_FINISHPAGE_RUN
  1221. GetDlgItem $MUI_TEMP1 $MUI_HWND 1203
  1222. SetCtlColors $MUI_TEMP1 "" "${MUI_BGCOLOR}"
  1223. !endif
  1224. !ifdef MUI_FINISHPAGE_SHOWREADME
  1225. !ifndef MUI_FINISHPAGE_RUN
  1226. GetDlgItem $MUI_TEMP1 $MUI_HWND 1203
  1227. !else
  1228. GetDlgItem $MUI_TEMP1 $MUI_HWND 1204
  1229. !endif
  1230. SetCtlColors $MUI_TEMP1 "" "${MUI_BGCOLOR}"
  1231. !endif
  1232. !ifdef MUI_FINISHPAGE_LINK
  1233. !ifdef MUI_FINISHPAGE_RUN & MUI_FINISHPAGE_SHOWREADME
  1234. GetDlgItem $MUI_TEMP1 $MUI_HWND 1205
  1235. !else ifdef MUI_FINISHPAGE_RUN | MUI_FINISHPAGE_SHOWREADME
  1236. GetDlgItem $MUI_TEMP1 $MUI_HWND 1204
  1237. !else
  1238. GetDlgItem $MUI_TEMP1 $MUI_HWND 1203
  1239. !endif
  1240. SetCtlColors $MUI_TEMP1 "${MUI_FINISHPAGE_LINK_COLOR}" "${MUI_BGCOLOR}"
  1241. !endif
  1242. !ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
  1243. mui.finish_show:
  1244. !endif
  1245. !insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
  1246. !ifdef MUI_FINISHPAGE_CANCEL_ENABLED
  1247. StrCpy $MUI_NOABORTWARNING "1"
  1248. !endif
  1249. !insertmacro INSTALLOPTIONS_SHOW
  1250. !ifdef MUI_FINISHPAGE_CANCEL_ENABLED
  1251. StrCpy $MUI_NOABORTWARNING ""
  1252. !endif
  1253. LockWindow on
  1254. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1028
  1255. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  1256. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1256
  1257. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  1258. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1035
  1259. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  1260. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1037
  1261. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  1262. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1038
  1263. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  1264. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1039
  1265. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  1266. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1045
  1267. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  1268. LockWindow off
  1269. FunctionEnd
  1270. Function "${LEAVE}"
  1271. !insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
  1272. !ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
  1273. IfRebootFlag "" mui.finish_noreboot_end
  1274. !insertmacro INSTALLOPTIONS_READ $MUI_TEMP1 "ioSpecial.ini" "Field 4" "State"
  1275. StrCmp $MUI_TEMP1 "1" 0 +2
  1276. Reboot
  1277. Return
  1278. mui.finish_noreboot_end:
  1279. !endif
  1280. !ifdef MUI_FINISHPAGE_RUN
  1281. !insertmacro INSTALLOPTIONS_READ $MUI_TEMP1 "ioSpecial.ini" "Field 4" "State"
  1282. StrCmp $MUI_TEMP1 "1" 0 mui.finish_norun
  1283. !ifndef MUI_FINISHPAGE_RUN_FUNCTION
  1284. !ifndef MUI_FINISHPAGE_RUN_PARAMETERS
  1285. StrCpy $MUI_TEMP1 "$\"${MUI_FINISHPAGE_RUN}$\""
  1286. !else
  1287. StrCpy $MUI_TEMP1 "$\"${MUI_FINISHPAGE_RUN}$\" ${MUI_FINISHPAGE_RUN_PARAMETERS}"
  1288. !endif
  1289. Exec "$MUI_TEMP1"
  1290. !else
  1291. Call "${MUI_FINISHPAGE_RUN_FUNCTION}"
  1292. !endif
  1293. mui.finish_norun:
  1294. !endif
  1295. !ifdef MUI_FINISHPAGE_SHOWREADME
  1296. !ifndef MUI_FINISHPAGE_RUN
  1297. !insertmacro INSTALLOPTIONS_READ $MUI_TEMP1 "ioSpecial.ini" "Field 4" "State"
  1298. !else
  1299. !insertmacro INSTALLOPTIONS_READ $MUI_TEMP1 "ioSpecial.ini" "Field 5" "State"
  1300. !endif
  1301. StrCmp $MUI_TEMP1 "1" 0 mui.finish_noshowreadme
  1302. !ifndef MUI_FINISHPAGE_SHOWREADME_FUNCTION
  1303. ExecShell "open" "${MUI_FINISHPAGE_SHOWREADME}"
  1304. !else
  1305. Call "${MUI_FINISHPAGE_SHOWREADME_FUNCTION}"
  1306. !endif
  1307. mui.finish_noshowreadme:
  1308. !endif
  1309. FunctionEnd
  1310. !macroend
  1311. !macro MUI_UNFUNCTION_CONFIRMPAGE PRE SHOW LEAVE
  1312. Function "${PRE}"
  1313. !insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
  1314. !insertmacro MUI_HEADER_TEXT_PAGE $(MUI_UNTEXT_CONFIRM_TITLE) $(MUI_UNTEXT_CONFIRM_SUBTITLE)
  1315. FunctionEnd
  1316. Function "${SHOW}"
  1317. !insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
  1318. FunctionEnd
  1319. Function "${LEAVE}"
  1320. !insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
  1321. FunctionEnd
  1322. !macroend
  1323. ;--------------------------------
  1324. ;INSTALL OPTIONS (CUSTOM PAGES)
  1325. !macro MUI_INSTALLOPTIONS_EXTRACT FILE
  1326. !verbose push
  1327. !verbose ${MUI_VERBOSE}
  1328. !insertmacro INSTALLOPTIONS_EXTRACT "${FILE}"
  1329. !verbose pop
  1330. !macroend
  1331. !macro MUI_INSTALLOPTIONS_EXTRACT_AS FILE FILENAME
  1332. !verbose push
  1333. !verbose ${MUI_VERBOSE}
  1334. !insertmacro INSTALLOPTIONS_EXTRACT_AS "${FILE}" "${FILENAME}"
  1335. !verbose pop
  1336. !macroend
  1337. !macro MUI_INSTALLOPTIONS_DISPLAY FILE
  1338. !verbose push
  1339. !verbose ${MUI_VERBOSE}
  1340. !insertmacro INSTALLOPTIONS_DISPLAY "${FILE}"
  1341. !verbose pop
  1342. !macroend
  1343. !macro MUI_INSTALLOPTIONS_DISPLAY_RETURN FILE
  1344. !verbose push
  1345. !verbose ${MUI_VERBOSE}
  1346. !insertmacro INSTALLOPTIONS_DISPLAY_RETURN "${FILE}"
  1347. !verbose pop
  1348. !macroend
  1349. !macro MUI_INSTALLOPTIONS_INITDIALOG FILE
  1350. !verbose push
  1351. !verbose ${MUI_VERBOSE}
  1352. !insertmacro INSTALLOPTIONS_INITDIALOG "${FILE}"
  1353. !verbose pop
  1354. !macroend
  1355. !macro MUI_INSTALLOPTIONS_SHOW
  1356. !verbose push
  1357. !verbose ${MUI_VERBOSE}
  1358. !insertmacro INSTALLOPTIONS_SHOW
  1359. !verbose pop
  1360. !macroend
  1361. !macro MUI_INSTALLOPTIONS_SHOW_RETURN
  1362. !verbose push
  1363. !verbose ${MUI_VERBOSE}
  1364. !insertmacro INSTALLOPTIONS_SHOW_RETURN
  1365. !verbose pop
  1366. !macroend
  1367. !macro MUI_INSTALLOPTIONS_READ VAR FILE SECTION KEY
  1368. !verbose push
  1369. !verbose ${MUI_VERBOSE}
  1370. !insertmacro INSTALLOPTIONS_READ "${VAR}" "${FILE}" "${SECTION}" "${KEY}"
  1371. !verbose pop
  1372. !macroend
  1373. !macro MUI_INSTALLOPTIONS_WRITE FILE SECTION KEY VALUE
  1374. !verbose push
  1375. !verbose ${MUI_VERBOSE}
  1376. !insertmacro INSTALLOPTIONS_WRITE "${FILE}" "${SECTION}" "${KEY}" "${VALUE}"
  1377. !verbose pop
  1378. !macroend
  1379. !macro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT FILE SECTION KEY SYMBOL
  1380. ;Converts default strings from language files to InstallOptions format
  1381. ;Only for use inside MUI
  1382. !verbose push
  1383. !verbose ${MUI_VERBOSE}
  1384. !ifndef "${SYMBOL}_DEFAULTSET"
  1385. !insertmacro INSTALLOPTIONS_WRITE "${FILE}" "${SECTION}" "${KEY}" "${${SYMBOL}}"
  1386. !else
  1387. Push "${${SYMBOL}}"
  1388. Call ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}Nsis2Io
  1389. Pop $MUI_TEMP1
  1390. !insertmacro INSTALLOPTIONS_WRITE "${FILE}" "${SECTION}" "${KEY}" $MUI_TEMP1
  1391. !endif
  1392. !verbose pop
  1393. !macroend
  1394. ;--------------------------------
  1395. ;RESERVE FILES
  1396. !macro MUI_RESERVEFILE_INSTALLOPTIONS
  1397. !verbose push
  1398. !verbose ${MUI_VERBOSE}
  1399. ReserveFile /plugin InstallOptions.dll
  1400. !verbose pop
  1401. !macroend
  1402. !macro MUI_RESERVEFILE_LANGDLL
  1403. !verbose push
  1404. !verbose ${MUI_VERBOSE}
  1405. ReserveFile /plugin LangDLL.dll
  1406. !verbose pop
  1407. !macroend
  1408. ;--------------------------------
  1409. ;LANGUAGES
  1410. !macro MUI_LANGUAGE NLFID
  1411. ;Include a language
  1412. !verbose push
  1413. !verbose ${MUI_VERBOSE}
  1414. ; MUI_PAGE_UNINSTALLER_PREFIX is undefined by uninstaller pages so we check MUI_UNINSTALLER as well
  1415. !ifndef MUI_PAGE_UNINSTALLER_PREFIX && MUI_UNINSTALLER
  1416. !warning "MUI_LANGUAGE should be inserted after the MUI_[UN]PAGE_* macros"
  1417. !endif
  1418. !insertmacro MUI_INSERT
  1419. LoadLanguageFile "${NSISDIR}\Contrib\Language files\${NLFID}.nlf"
  1420. ;Include language file
  1421. !insertmacro LANGFILE_INCLUDE_WITHDEFAULT \
  1422. "${NSISDIR}\Contrib\Language files\${NLFID}.nsh" "${NSISDIR}\Contrib\Language files\English.nsh"
  1423. ;Add language to list of languages for selection dialog
  1424. !define /ifndef MUI_LANGDLL_LANGUAGES ""
  1425. !define /redef MUI_LANGDLL_LANGUAGES \
  1426. `"${LANGFILE_${NLFID}_LANGDLL}" "${LANG_${NLFID}}" ${MUI_LANGDLL_LANGUAGES}`
  1427. !define /ifndef MUI_LANGDLL_LANGUAGES_CP ""
  1428. !define /redef MUI_LANGDLL_LANGUAGES_CP \
  1429. `"${LANGFILE_${NLFID}_LANGDLL}" "${LANG_${NLFID}}" "${LANG_${NLFID}_CP}" ${MUI_LANGDLL_LANGUAGES_CP}`
  1430. !verbose pop
  1431. !macroend
  1432. ;--------------------------------
  1433. ;LANGUAGE SELECTION DIALOG
  1434. !macro MUI_LANGDLL_DISPLAY
  1435. !verbose push
  1436. !verbose ${MUI_VERBOSE}
  1437. !ifndef MUI_LANGDLL_LANGUAGES
  1438. !warning "MUI_LANGDLL_DISPLAY should only be used after inserting the MUI_LANGUAGE macro(s)"
  1439. !endif
  1440. !insertmacro MUI_DEFAULT MUI_LANGDLL_WINDOWTITLE "Installer Language"
  1441. !insertmacro MUI_DEFAULT MUI_LANGDLL_INFO "Please select a language."
  1442. !ifdef MUI_LANGDLL_REGISTRY_ROOT & MUI_LANGDLL_REGISTRY_KEY & MUI_LANGDLL_REGISTRY_VALUENAME
  1443. ReadRegStr $MUI_TEMP1 "${MUI_LANGDLL_REGISTRY_ROOT}" "${MUI_LANGDLL_REGISTRY_KEY}" "${MUI_LANGDLL_REGISTRY_VALUENAME}"
  1444. StrCmp $MUI_TEMP1 "" mui.langdll_show
  1445. StrCpy $LANGUAGE $MUI_TEMP1
  1446. !ifndef MUI_LANGDLL_ALWAYSSHOW
  1447. Goto mui.langdll_done
  1448. !endif
  1449. mui.langdll_show:
  1450. !endif
  1451. !ifdef NSIS_CONFIG_SILENT_SUPPORT
  1452. IfSilent mui.langdll_done
  1453. !endif
  1454. !ifdef MUI_LANGDLL_ALLLANGUAGES
  1455. LangDLL::LangDialog "${MUI_LANGDLL_WINDOWTITLE}" "${MUI_LANGDLL_INFO}" A ${MUI_LANGDLL_LANGUAGES} ""
  1456. !else
  1457. LangDLL::LangDialog "${MUI_LANGDLL_WINDOWTITLE}" "${MUI_LANGDLL_INFO}" AC ${MUI_LANGDLL_LANGUAGES_CP} ""
  1458. !endif
  1459. Pop $LANGUAGE
  1460. StrCmp $LANGUAGE "cancel" 0 +2
  1461. Abort
  1462. !ifdef NSIS_CONFIG_SILENT_SUPPORT
  1463. mui.langdll_done:
  1464. !else ifdef MUI_LANGDLL_REGISTRY_ROOT & MUI_LANGDLL_REGISTRY_KEY & MUI_LANGDLL_REGISTRY_VALUENAME
  1465. mui.langdll_done:
  1466. !endif
  1467. !verbose pop
  1468. !macroend
  1469. !macro MUI_LANGDLL_SAVELANGUAGE
  1470. !ifndef MUI_PAGE_UNINSTALLER
  1471. IfAbort mui.langdllsavelanguage_abort
  1472. !ifdef MUI_LANGDLL_REGISTRY_ROOT & MUI_LANGDLL_REGISTRY_KEY & MUI_LANGDLL_REGISTRY_VALUENAME
  1473. WriteRegStr "${MUI_LANGDLL_REGISTRY_ROOT}" "${MUI_LANGDLL_REGISTRY_KEY}" "${MUI_LANGDLL_REGISTRY_VALUENAME}" $LANGUAGE
  1474. !endif
  1475. mui.langdllsavelanguage_abort:
  1476. !endif
  1477. !macroend
  1478. !macro MUI_UNGETLANGUAGE
  1479. !verbose pop
  1480. !ifdef MUI_LANGDLL_REGISTRY_ROOT & MUI_LANGDLL_REGISTRY_KEY & MUI_LANGDLL_REGISTRY_VALUENAME
  1481. ReadRegStr $MUI_TEMP1 "${MUI_LANGDLL_REGISTRY_ROOT}" "${MUI_LANGDLL_REGISTRY_KEY}" "${MUI_LANGDLL_REGISTRY_VALUENAME}"
  1482. StrCmp $MUI_TEMP1 "" 0 mui.ungetlanguage_setlang
  1483. !endif
  1484. !insertmacro MUI_LANGDLL_DISPLAY
  1485. !ifdef MUI_LANGDLL_REGISTRY_ROOT & MUI_LANGDLL_REGISTRY_KEY & MUI_LANGDLL_REGISTRY_VALUENAME
  1486. Goto mui.ungetlanguage_done
  1487. mui.ungetlanguage_setlang:
  1488. StrCpy $LANGUAGE $MUI_TEMP1
  1489. mui.ungetlanguage_done:
  1490. !endif
  1491. !verbose pop
  1492. !macroend
  1493. ;--------------------------------
  1494. ;END
  1495. !verbose pop
  1496. !endif