System.nsh 63 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226
  1. /*
  2. NSIS Modern User Interface - Version 1.8
  3. Copyright 2002-2017 Joost Verburg
  4. */
  5. !ifndef MUI_INCLUDED
  6. !echo "NSIS Modern User Interface version 1.8 - Copyright 2002-2017 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. !ifdef MUI_UNCONFIRMPAGE_VARIABLE
  750. DirVar "${MUI_UNCONFIRMPAGE_VARIABLE}"
  751. !endif
  752. PageExEnd
  753. !insertmacro MUI_UNFUNCTION_CONFIRMPAGE un.mui.ConfirmPre_${MUI_UNIQUEID} un.mui.ConfirmShow_${MUI_UNIQUEID} un.mui.ConfirmLeave_${MUI_UNIQUEID}
  754. !insertmacro MUI_UNSET MUI_UNCONFIRMPAGE_TEXT_TOP
  755. !insertmacro MUI_UNSET MUI_UNCONFIRMPAGE_TEXT_LOCATION
  756. !verbose pop
  757. !macroend
  758. !macro MUI_UNPAGE_LICENSE LICENSEDATA
  759. !verbose push
  760. !verbose ${MUI_VERBOSE}
  761. !insertmacro MUI_UNPAGE_INIT
  762. !insertmacro MUI_PAGE_LICENSE "${LICENSEDATA}"
  763. !insertmacro MUI_UNPAGE_END
  764. !verbose pop
  765. !macroend
  766. !macro MUI_UNPAGE_COMPONENTS
  767. !verbose push
  768. !verbose ${MUI_VERBOSE}
  769. !insertmacro MUI_UNPAGE_INIT
  770. !insertmacro MUI_PAGE_COMPONENTS
  771. !insertmacro MUI_UNPAGE_END
  772. !verbose pop
  773. !macroend
  774. !macro MUI_UNPAGE_DIRECTORY
  775. !verbose push
  776. !verbose ${MUI_VERBOSE}
  777. !insertmacro MUI_UNPAGE_INIT
  778. !insertmacro MUI_PAGE_DIRECTORY
  779. !insertmacro MUI_UNPAGE_END
  780. !verbose pop
  781. !macroend
  782. !macro MUI_UNPAGE_INSTFILES
  783. !verbose push
  784. !verbose ${MUI_VERBOSE}
  785. !insertmacro MUI_UNPAGE_INIT
  786. !insertmacro MUI_PAGE_INSTFILES
  787. !insertmacro MUI_UNPAGE_END
  788. !verbose pop
  789. !macroend
  790. !macro MUI_UNPAGE_FINISH
  791. !verbose push
  792. !verbose ${MUI_VERBOSE}
  793. !insertmacro MUI_UNPAGE_INIT
  794. !insertmacro MUI_PAGE_FINISH
  795. !insertmacro MUI_UNPAGE_END
  796. !verbose pop
  797. !macroend
  798. ;--------------------------------
  799. ;PAGE FUNCTIONS
  800. !macro MUI_PAGE_FUNCTION_CUSTOM TYPE
  801. !ifdef MUI_PAGE_CUSTOMFUNCTION_${TYPE}
  802. Call "${MUI_PAGE_CUSTOMFUNCTION_${TYPE}}"
  803. !undef MUI_PAGE_CUSTOMFUNCTION_${TYPE}
  804. !endif
  805. !macroend
  806. !macro MUI_WELCOMEFINISHPAGE_FUNCTION_CUSTOM
  807. !ifdef MUI_WELCOMEFINISHPAGE_CUSTOMFUNCTION_INIT
  808. Call "${MUI_WELCOMEFINISHPAGE_CUSTOMFUNCTION_INIT}"
  809. !undef MUI_WELCOMEFINISHPAGE_CUSTOMFUNCTION_INIT
  810. !endif
  811. !macroend
  812. !macro MUI_FUNCTION_WELCOMEPAGE PRE LEAVE
  813. Function "${PRE}"
  814. !insertmacro MUI_WELCOMEFINISHPAGE_FUNCTION_CUSTOM
  815. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "NumFields" "3"
  816. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "NextButtonText" ""
  817. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "CancelEnabled" ""
  818. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field 2" "Text" MUI_WELCOMEPAGE_TITLE
  819. !ifndef MUI_WELCOMEPAGE_TITLE_3LINES
  820. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 2" "Bottom" "38"
  821. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Top" "45"
  822. !else
  823. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 2" "Bottom" "48"
  824. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Top" "55"
  825. !endif
  826. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "185"
  827. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field 3" "Text" MUI_WELCOMEPAGE_TEXT
  828. !insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
  829. LockWindow on
  830. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1028
  831. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  832. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1256
  833. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  834. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1035
  835. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  836. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1037
  837. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  838. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1038
  839. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  840. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1039
  841. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  842. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1045
  843. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  844. LockWindow off
  845. !insertmacro INSTALLOPTIONS_INITDIALOG "ioSpecial.ini"
  846. Pop $MUI_HWND
  847. SetCtlColors $MUI_HWND "" "${MUI_BGCOLOR}"
  848. GetDlgItem $MUI_TEMP1 $MUI_HWND 1201
  849. SetCtlColors $MUI_TEMP1 "" "${MUI_BGCOLOR}"
  850. CreateFont $MUI_TEMP2 "$(^Font)" "12" "700"
  851. SendMessage $MUI_TEMP1 ${WM_SETFONT} $MUI_TEMP2 0
  852. GetDlgItem $MUI_TEMP1 $MUI_HWND 1202
  853. SetCtlColors $MUI_TEMP1 "" "${MUI_BGCOLOR}"
  854. !insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
  855. !insertmacro INSTALLOPTIONS_SHOW
  856. LockWindow on
  857. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1028
  858. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  859. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1256
  860. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  861. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1035
  862. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  863. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1037
  864. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  865. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1038
  866. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  867. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1039
  868. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  869. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1045
  870. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  871. LockWindow off
  872. FunctionEnd
  873. Function "${LEAVE}"
  874. !insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
  875. FunctionEnd
  876. !macroend
  877. !macro MUI_FUNCTION_LICENSEPAGE PRE SHOW LEAVE
  878. Function "${PRE}"
  879. !insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
  880. !insertmacro MUI_HEADER_TEXT_PAGE $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_LICENSE_TITLE) $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_LICENSE_SUBTITLE)
  881. FunctionEnd
  882. Function "${SHOW}"
  883. !insertmacro MUI_INNERDIALOG_TEXT 1040 "${MUI_LICENSEPAGE_TEXT_TOP}"
  884. !insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
  885. FunctionEnd
  886. Function "${LEAVE}"
  887. !insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
  888. FunctionEnd
  889. !macroend
  890. !macro MUI_FUNCTION_COMPONENTSPAGE PRE SHOW LEAVE
  891. Function "${PRE}"
  892. !insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
  893. !insertmacro MUI_HEADER_TEXT_PAGE $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_COMPONENTS_TITLE) $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_COMPONENTS_SUBTITLE)
  894. FunctionEnd
  895. Function "${SHOW}"
  896. !insertmacro MUI_INNERDIALOG_TEXT 1042 "${MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_TITLE}"
  897. FindWindow $MUI_TEMP1 "#32770" "" $HWNDPARENT
  898. GetDlgItem $MUI_TEMP1 $MUI_TEMP1 1043
  899. EnableWindow $MUI_TEMP1 0
  900. !insertmacro MUI_INNERDIALOG_TEXT 1043 "${MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_INFO}"
  901. StrCpy $MUI_TEXT "${MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_INFO}"
  902. !insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
  903. FunctionEnd
  904. Function "${LEAVE}"
  905. !insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
  906. FunctionEnd
  907. !macroend
  908. !macro MUI_FUNCTION_DIRECTORYPAGE PRE SHOW LEAVE
  909. Function "${PRE}"
  910. !insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
  911. !insertmacro MUI_HEADER_TEXT_PAGE $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_DIRECTORY_TITLE) $(MUI_${MUI_PAGE_UNINSTALLER_PREFIX}TEXT_DIRECTORY_SUBTITLE)
  912. FunctionEnd
  913. Function "${SHOW}"
  914. !ifdef MUI_DIRECTORYPAGE_BGCOLOR
  915. FindWindow $MUI_TEMP1 "#32770" "" $HWNDPARENT
  916. GetDlgItem $MUI_TEMP1 $MUI_TEMP1 1019
  917. SetCtlColors $MUI_TEMP1 "" "${MUI_DIRECTORYPAGE_BGCOLOR}"
  918. !endif
  919. !insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
  920. FunctionEnd
  921. Function "${LEAVE}"
  922. !insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
  923. FunctionEnd
  924. !macroend
  925. !macro MUI_FUNCTION_STARTMENUPAGE PRE LEAVE
  926. Function "${PRE}"
  927. !insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
  928. !ifdef MUI_STARTMENUPAGE_REGISTRY_ROOT & MUI_STARTMENUPAGE_REGISTRY_KEY & MUI_STARTMENUPAGE_REGISTRY_VALUENAME
  929. StrCmp "${MUI_STARTMENUPAGE_VARIABLE}" "" 0 +4
  930. ReadRegStr $MUI_TEMP1 "${MUI_STARTMENUPAGE_REGISTRY_ROOT}" "${MUI_STARTMENUPAGE_REGISTRY_KEY}" "${MUI_STARTMENUPAGE_REGISTRY_VALUENAME}"
  931. StrCmp $MUI_TEMP1 "" +2
  932. StrCpy "${MUI_STARTMENUPAGE_VARIABLE}" $MUI_TEMP1
  933. !endif
  934. !insertmacro MUI_HEADER_TEXT_PAGE $(MUI_TEXT_STARTMENU_TITLE) $(MUI_TEXT_STARTMENU_SUBTITLE)
  935. StrCmp $(^RTL) 0 mui.startmenu_nortl
  936. !ifndef MUI_STARTMENUPAGE_NODISABLE
  937. StartMenu::Init /rtl /noicon /autoadd /text "${MUI_STARTMENUPAGE_TEXT_TOP}" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" /checknoshortcuts "${MUI_STARTMENUPAGE_TEXT_CHECKBOX}" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
  938. !else
  939. StartMenu::Init /rtl /noicon /autoadd /text "${MUI_STARTMENUPAGE_TEXT_TOP}" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
  940. !endif
  941. Goto mui.startmenu_initdone
  942. mui.startmenu_nortl:
  943. !ifndef MUI_STARTMENUPAGE_NODISABLE
  944. StartMenu::Init /noicon /autoadd /text "${MUI_STARTMENUPAGE_TEXT_TOP}" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" /checknoshortcuts "${MUI_STARTMENUPAGE_TEXT_CHECKBOX}" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
  945. !else
  946. StartMenu::Init /noicon /autoadd /text "${MUI_STARTMENUPAGE_TEXT_TOP}" /lastused "${MUI_STARTMENUPAGE_VARIABLE}" "${MUI_STARTMENUPAGE_DEFAULTFOLDER}"
  947. !endif
  948. mui.startmenu_initdone:
  949. Pop $MUI_HWND
  950. !ifdef MUI_STARTMENUPAGE_BGCOLOR
  951. GetDlgItem $MUI_TEMP1 $MUI_HWND 1002
  952. SetCtlColors $MUI_TEMP1 "" "${MUI_STARTMENUPAGE_BGCOLOR}"
  953. GetDlgItem $MUI_TEMP1 $MUI_HWND 1004
  954. SetCtlColors $MUI_TEMP1 "" "${MUI_STARTMENUPAGE_BGCOLOR}"
  955. !endif
  956. !insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
  957. StartMenu::Show
  958. Pop $MUI_TEMP1
  959. StrCmp $MUI_TEMP1 "success" 0 +2
  960. Pop "${MUI_STARTMENUPAGE_VARIABLE}"
  961. FunctionEnd
  962. Function "${LEAVE}"
  963. !insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
  964. FunctionEnd
  965. !macroend
  966. !macro MUI_FUNCTION_INSTFILESPAGE PRE SHOW LEAVE
  967. Function "${PRE}"
  968. !insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
  969. !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)
  970. FunctionEnd
  971. Function "${SHOW}"
  972. !insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
  973. FunctionEnd
  974. Function "${LEAVE}"
  975. !insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
  976. !insertmacro MUI_ENDHEADER
  977. !insertmacro MUI_LANGDLL_SAVELANGUAGE
  978. FunctionEnd
  979. !macroend
  980. !macro MUI_FUNCTION_FINISHPAGE PRE LEAVE
  981. Function "${PRE}"
  982. !insertmacro MUI_WELCOMEFINISHPAGE_FUNCTION_CUSTOM
  983. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Settings" "NextButtonText" MUI_FINISHPAGE_BUTTON
  984. !ifdef MUI_FINISHPAGE_CANCEL_ENABLED
  985. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "CancelEnabled" "1"
  986. !endif
  987. !ifndef MUI_FINISHPAGE_TITLE_3LINES
  988. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 2" "Bottom" "38"
  989. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Top" "45"
  990. !else
  991. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 2" "Bottom" "48"
  992. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Top" "55"
  993. !endif
  994. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field 2" "Text" MUI_FINISHPAGE_TITLE
  995. !ifdef MUI_FINISHPAGE_RUN | MUI_FINISHPAGE_SHOWREADME
  996. !ifndef MUI_FINISHPAGE_TITLE_3LINES
  997. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  998. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "85"
  999. !else
  1000. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "115"
  1001. !endif
  1002. !else
  1003. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1004. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "95"
  1005. !else
  1006. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "125"
  1007. !endif
  1008. !endif
  1009. !else
  1010. !ifndef MUI_FINISHPAGE_LINK
  1011. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "185"
  1012. !else
  1013. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "175"
  1014. !endif
  1015. !endif
  1016. !ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
  1017. IfRebootFlag 0 mui.finish_noreboot_init
  1018. !ifndef MUI_FINISHPAGE_TITLE_3LINES
  1019. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1020. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "85"
  1021. !else
  1022. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "115"
  1023. !endif
  1024. !else
  1025. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1026. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "95"
  1027. !else
  1028. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 3" "Bottom" "125"
  1029. !endif
  1030. !endif
  1031. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field 3" "Text" MUI_FINISHPAGE_TEXT_REBOOT
  1032. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "Numfields" "5"
  1033. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Type" "RadioButton"
  1034. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field 4" "Text" MUI_FINISHPAGE_TEXT_REBOOTNOW
  1035. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Left" "120"
  1036. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Right" "321"
  1037. !ifndef MUI_FINISHPAGE_TITLE_3LINES
  1038. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1039. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Top" "90"
  1040. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Bottom" "100"
  1041. !else
  1042. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Top" "120"
  1043. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Bottom" "130"
  1044. !endif
  1045. !else
  1046. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1047. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Top" "100"
  1048. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Bottom" "110"
  1049. !else
  1050. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Top" "130"
  1051. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Bottom" "140"
  1052. !endif
  1053. !endif
  1054. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Type" "RadioButton"
  1055. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field 5" "Text" MUI_FINISHPAGE_TEXT_REBOOTLATER
  1056. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Left" "120"
  1057. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Right" "321"
  1058. !ifndef MUI_FINISHPAGE_TITLE_3LINES
  1059. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Top" "110"
  1060. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Bottom" "120"
  1061. !else
  1062. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Top" "110"
  1063. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "Bottom" "120"
  1064. !endif
  1065. !ifdef MUI_FINISHPAGE_REBOOTLATER_DEFAULT
  1066. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "State" "0"
  1067. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "State" "1"
  1068. !else
  1069. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "State" "1"
  1070. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 5" "State" "0"
  1071. !endif
  1072. Goto mui.finish_load
  1073. mui.finish_noreboot_init:
  1074. !endif
  1075. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field 3" "Text" MUI_FINISHPAGE_TEXT
  1076. !ifdef MUI_FINISHPAGE_RUN
  1077. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Type" "CheckBox"
  1078. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field 4" "Text" MUI_FINISHPAGE_RUN_TEXT
  1079. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Left" "120"
  1080. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Right" "315"
  1081. !ifndef MUI_FINISHPAGE_TITLE_3LINES
  1082. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1083. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Top" "90"
  1084. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Bottom" "100"
  1085. !else
  1086. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Top" "120"
  1087. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Bottom" "130"
  1088. !endif
  1089. !else
  1090. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1091. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Top" "100"
  1092. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Bottom" "110"
  1093. !else
  1094. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Top" "130"
  1095. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "Bottom" "140"
  1096. !endif
  1097. !endif
  1098. !ifndef MUI_FINISHPAGE_RUN_NOTCHECKED
  1099. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field 4" "State" "1"
  1100. !endif
  1101. !endif
  1102. !ifdef MUI_FINISHPAGE_SHOWREADME
  1103. !ifdef MUI_FINISHPAGE_CURFIELD_NO
  1104. !undef MUI_FINISHPAGE_CURFIELD_NO
  1105. !endif
  1106. !ifndef MUI_FINISHPAGE_RUN
  1107. !define MUI_FINISHPAGE_CURFIELD_NO 4
  1108. !ifndef MUI_FINISHPAGE_TITLE_3LINES
  1109. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1110. !define MUI_FINISHPAGE_CURFIELD_TOP 90
  1111. !define MUI_FINISHPAGE_CURFIELD_BOTTOM 100
  1112. !else
  1113. !define MUI_FINISHPAGE_CURFIELD_TOP 120
  1114. !define MUI_FINISHPAGE_CURFIELD_BOTTOM 130
  1115. !endif
  1116. !else
  1117. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1118. !define MUI_FINISHPAGE_CURFIELD_TOP 100
  1119. !define MUI_FINISHPAGE_CURFIELD_BOTTOM 110
  1120. !else
  1121. !define MUI_FINISHPAGE_CURFIELD_TOP 130
  1122. !define MUI_FINISHPAGE_CURFIELD_BOTTOM 140
  1123. !endif
  1124. !endif
  1125. !else
  1126. !define MUI_FINISHPAGE_CURFIELD_NO 5
  1127. !ifndef MUI_FINISHPAGE_TITLE_3LINES
  1128. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1129. !define MUI_FINISHPAGE_CURFIELD_TOP 110
  1130. !define MUI_FINISHPAGE_CURFIELD_BOTTOM 120
  1131. !else
  1132. !define MUI_FINISHPAGE_CURFIELD_TOP 140
  1133. !define MUI_FINISHPAGE_CURFIELD_BOTTOM 150
  1134. !endif
  1135. !else
  1136. !ifndef MUI_FINISHPAGE_TEXT_LARGE
  1137. !define MUI_FINISHPAGE_CURFIELD_TOP 120
  1138. !define MUI_FINISHPAGE_CURFIELD_BOTTOM 130
  1139. !else
  1140. !define MUI_FINISHPAGE_CURFIELD_TOP 150
  1141. !define MUI_FINISHPAGE_CURFIELD_BOTTOM 160
  1142. !endif
  1143. !endif
  1144. !endif
  1145. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Type" "CheckBox"
  1146. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Text" MUI_FINISHPAGE_SHOWREADME_TEXT
  1147. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Left" "120"
  1148. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Right" "315"
  1149. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Top" ${MUI_FINISHPAGE_CURFIELD_TOP}
  1150. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Bottom" ${MUI_FINISHPAGE_CURFIELD_BOTTOM}
  1151. !ifndef MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
  1152. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "State" "1"
  1153. !endif
  1154. !endif
  1155. !ifdef MUI_FINISHPAGE_LINK
  1156. !ifdef MUI_FINISHPAGE_CURFIELD_NO
  1157. !undef MUI_FINISHPAGE_CURFIELD_NO
  1158. !endif
  1159. !ifdef MUI_FINISHPAGE_RUN & MUI_FINISHPAGE_SHOWREADME
  1160. !define MUI_FINISHPAGE_CURFIELD_NO 6
  1161. !else ifdef MUI_FINISHPAGE_RUN | MUI_FINISHPAGE_SHOWREADME
  1162. !define MUI_FINISHPAGE_CURFIELD_NO 5
  1163. !else
  1164. !define MUI_FINISHPAGE_CURFIELD_NO 4
  1165. !endif
  1166. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Type" "Link"
  1167. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Text" MUI_FINISHPAGE_LINK
  1168. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Left" "120"
  1169. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Right" "315"
  1170. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Top" "175"
  1171. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "Bottom" "185"
  1172. !insertmacro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT "ioSpecial.ini" "Field ${MUI_FINISHPAGE_CURFIELD_NO}" "State" MUI_FINISHPAGE_LINK_LOCATION
  1173. !endif
  1174. !ifdef MUI_FINISHPAGE_RUN & MUI_FINISHPAGE_SHOWREADME & MUI_FINISHPAGE_LINK
  1175. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "Numfields" "6"
  1176. !else ifdef MUI_FINISHPAGE_RUN & MUI_FINISHPAGE_SHOWREADME
  1177. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "Numfields" "5"
  1178. !else ifdef MUI_FINISHPAGE_RUN & MUI_FINISHPAGE_LINK
  1179. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "Numfields" "5"
  1180. !else ifdef MUI_FINISHPAGE_SHOWREADME & MUI_FINISHPAGE_LINK
  1181. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "Numfields" "5"
  1182. !else ifdef MUI_FINISHPAGE_RUN | MUI_FINISHPAGE_SHOWREADME | MUI_FINISHPAGE_LINK
  1183. !insertmacro INSTALLOPTIONS_WRITE "ioSpecial.ini" "Settings" "Numfields" "4"
  1184. !endif
  1185. !ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
  1186. mui.finish_load:
  1187. !endif
  1188. !insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
  1189. LockWindow on
  1190. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1028
  1191. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  1192. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1256
  1193. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  1194. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1035
  1195. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  1196. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1037
  1197. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  1198. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1038
  1199. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  1200. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1039
  1201. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  1202. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1045
  1203. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  1204. LockWindow off
  1205. !insertmacro INSTALLOPTIONS_INITDIALOG "ioSpecial.ini"
  1206. Pop $MUI_HWND
  1207. SetCtlColors $MUI_HWND "" "${MUI_BGCOLOR}"
  1208. GetDlgItem $MUI_TEMP1 $MUI_HWND 1201
  1209. SetCtlColors $MUI_TEMP1 "" "${MUI_BGCOLOR}"
  1210. CreateFont $MUI_TEMP2 "$(^Font)" "12" "700"
  1211. SendMessage $MUI_TEMP1 ${WM_SETFONT} $MUI_TEMP2 0
  1212. GetDlgItem $MUI_TEMP1 $MUI_HWND 1202
  1213. SetCtlColors $MUI_TEMP1 "" "${MUI_BGCOLOR}"
  1214. !ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
  1215. IfRebootFlag 0 mui.finish_noreboot_show
  1216. GetDlgItem $MUI_TEMP1 $MUI_HWND 1203
  1217. SetCtlColors $MUI_TEMP1 "" "${MUI_BGCOLOR}"
  1218. GetDlgItem $MUI_TEMP1 $MUI_HWND 1204
  1219. SetCtlColors $MUI_TEMP1 "" "${MUI_BGCOLOR}"
  1220. Goto mui.finish_show
  1221. mui.finish_noreboot_show:
  1222. !endif
  1223. !ifdef MUI_FINISHPAGE_RUN
  1224. GetDlgItem $MUI_TEMP1 $MUI_HWND 1203
  1225. SetCtlColors $MUI_TEMP1 "" "${MUI_BGCOLOR}"
  1226. !endif
  1227. !ifdef MUI_FINISHPAGE_SHOWREADME
  1228. !ifndef MUI_FINISHPAGE_RUN
  1229. GetDlgItem $MUI_TEMP1 $MUI_HWND 1203
  1230. !else
  1231. GetDlgItem $MUI_TEMP1 $MUI_HWND 1204
  1232. !endif
  1233. SetCtlColors $MUI_TEMP1 "" "${MUI_BGCOLOR}"
  1234. !endif
  1235. !ifdef MUI_FINISHPAGE_LINK
  1236. !ifdef MUI_FINISHPAGE_RUN & MUI_FINISHPAGE_SHOWREADME
  1237. GetDlgItem $MUI_TEMP1 $MUI_HWND 1205
  1238. !else ifdef MUI_FINISHPAGE_RUN | MUI_FINISHPAGE_SHOWREADME
  1239. GetDlgItem $MUI_TEMP1 $MUI_HWND 1204
  1240. !else
  1241. GetDlgItem $MUI_TEMP1 $MUI_HWND 1203
  1242. !endif
  1243. SetCtlColors $MUI_TEMP1 "${MUI_FINISHPAGE_LINK_COLOR}" "${MUI_BGCOLOR}"
  1244. !endif
  1245. !ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
  1246. mui.finish_show:
  1247. !endif
  1248. !insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
  1249. !ifdef MUI_FINISHPAGE_CANCEL_ENABLED
  1250. StrCpy $MUI_NOABORTWARNING "1"
  1251. !endif
  1252. !insertmacro INSTALLOPTIONS_SHOW
  1253. !ifdef MUI_FINISHPAGE_CANCEL_ENABLED
  1254. StrCpy $MUI_NOABORTWARNING ""
  1255. !endif
  1256. LockWindow on
  1257. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1028
  1258. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  1259. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1256
  1260. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  1261. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1035
  1262. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  1263. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1037
  1264. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  1265. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1038
  1266. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  1267. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1039
  1268. ShowWindow $MUI_TEMP1 ${SW_NORMAL}
  1269. GetDlgItem $MUI_TEMP1 $HWNDPARENT 1045
  1270. ShowWindow $MUI_TEMP1 ${SW_HIDE}
  1271. LockWindow off
  1272. FunctionEnd
  1273. Function "${LEAVE}"
  1274. !insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
  1275. !ifndef MUI_FINISHPAGE_NOREBOOTSUPPORT
  1276. IfRebootFlag "" mui.finish_noreboot_end
  1277. !insertmacro INSTALLOPTIONS_READ $MUI_TEMP1 "ioSpecial.ini" "Field 4" "State"
  1278. StrCmp $MUI_TEMP1 "1" 0 +2
  1279. Reboot
  1280. Return
  1281. mui.finish_noreboot_end:
  1282. !endif
  1283. !ifdef MUI_FINISHPAGE_RUN
  1284. !insertmacro INSTALLOPTIONS_READ $MUI_TEMP1 "ioSpecial.ini" "Field 4" "State"
  1285. StrCmp $MUI_TEMP1 "1" 0 mui.finish_norun
  1286. !ifndef MUI_FINISHPAGE_RUN_FUNCTION
  1287. !ifndef MUI_FINISHPAGE_RUN_PARAMETERS
  1288. StrCpy $MUI_TEMP1 "$\"${MUI_FINISHPAGE_RUN}$\""
  1289. !else
  1290. StrCpy $MUI_TEMP1 "$\"${MUI_FINISHPAGE_RUN}$\" ${MUI_FINISHPAGE_RUN_PARAMETERS}"
  1291. !endif
  1292. Exec "$MUI_TEMP1"
  1293. !else
  1294. Call "${MUI_FINISHPAGE_RUN_FUNCTION}"
  1295. !endif
  1296. mui.finish_norun:
  1297. !endif
  1298. !ifdef MUI_FINISHPAGE_SHOWREADME
  1299. !ifndef MUI_FINISHPAGE_RUN
  1300. !insertmacro INSTALLOPTIONS_READ $MUI_TEMP1 "ioSpecial.ini" "Field 4" "State"
  1301. !else
  1302. !insertmacro INSTALLOPTIONS_READ $MUI_TEMP1 "ioSpecial.ini" "Field 5" "State"
  1303. !endif
  1304. StrCmp $MUI_TEMP1 "1" 0 mui.finish_noshowreadme
  1305. !ifndef MUI_FINISHPAGE_SHOWREADME_FUNCTION
  1306. ExecShell "open" "${MUI_FINISHPAGE_SHOWREADME}"
  1307. !else
  1308. Call "${MUI_FINISHPAGE_SHOWREADME_FUNCTION}"
  1309. !endif
  1310. mui.finish_noshowreadme:
  1311. !endif
  1312. FunctionEnd
  1313. !macroend
  1314. !macro MUI_UNFUNCTION_CONFIRMPAGE PRE SHOW LEAVE
  1315. Function "${PRE}"
  1316. !insertmacro MUI_PAGE_FUNCTION_CUSTOM PRE
  1317. !insertmacro MUI_HEADER_TEXT_PAGE $(MUI_UNTEXT_CONFIRM_TITLE) $(MUI_UNTEXT_CONFIRM_SUBTITLE)
  1318. FunctionEnd
  1319. Function "${SHOW}"
  1320. !insertmacro MUI_PAGE_FUNCTION_CUSTOM SHOW
  1321. FunctionEnd
  1322. Function "${LEAVE}"
  1323. !insertmacro MUI_PAGE_FUNCTION_CUSTOM LEAVE
  1324. FunctionEnd
  1325. !macroend
  1326. ;--------------------------------
  1327. ;INSTALL OPTIONS (CUSTOM PAGES)
  1328. !macro MUI_INSTALLOPTIONS_EXTRACT FILE
  1329. !verbose push
  1330. !verbose ${MUI_VERBOSE}
  1331. !insertmacro INSTALLOPTIONS_EXTRACT "${FILE}"
  1332. !verbose pop
  1333. !macroend
  1334. !macro MUI_INSTALLOPTIONS_EXTRACT_AS FILE FILENAME
  1335. !verbose push
  1336. !verbose ${MUI_VERBOSE}
  1337. !insertmacro INSTALLOPTIONS_EXTRACT_AS "${FILE}" "${FILENAME}"
  1338. !verbose pop
  1339. !macroend
  1340. !macro MUI_INSTALLOPTIONS_DISPLAY FILE
  1341. !verbose push
  1342. !verbose ${MUI_VERBOSE}
  1343. !insertmacro INSTALLOPTIONS_DISPLAY "${FILE}"
  1344. !verbose pop
  1345. !macroend
  1346. !macro MUI_INSTALLOPTIONS_DISPLAY_RETURN FILE
  1347. !verbose push
  1348. !verbose ${MUI_VERBOSE}
  1349. !insertmacro INSTALLOPTIONS_DISPLAY_RETURN "${FILE}"
  1350. !verbose pop
  1351. !macroend
  1352. !macro MUI_INSTALLOPTIONS_INITDIALOG FILE
  1353. !verbose push
  1354. !verbose ${MUI_VERBOSE}
  1355. !insertmacro INSTALLOPTIONS_INITDIALOG "${FILE}"
  1356. !verbose pop
  1357. !macroend
  1358. !macro MUI_INSTALLOPTIONS_SHOW
  1359. !verbose push
  1360. !verbose ${MUI_VERBOSE}
  1361. !insertmacro INSTALLOPTIONS_SHOW
  1362. !verbose pop
  1363. !macroend
  1364. !macro MUI_INSTALLOPTIONS_SHOW_RETURN
  1365. !verbose push
  1366. !verbose ${MUI_VERBOSE}
  1367. !insertmacro INSTALLOPTIONS_SHOW_RETURN
  1368. !verbose pop
  1369. !macroend
  1370. !macro MUI_INSTALLOPTIONS_READ VAR FILE SECTION KEY
  1371. !verbose push
  1372. !verbose ${MUI_VERBOSE}
  1373. !insertmacro INSTALLOPTIONS_READ "${VAR}" "${FILE}" "${SECTION}" "${KEY}"
  1374. !verbose pop
  1375. !macroend
  1376. !macro MUI_INSTALLOPTIONS_WRITE FILE SECTION KEY VALUE
  1377. !verbose push
  1378. !verbose ${MUI_VERBOSE}
  1379. !insertmacro INSTALLOPTIONS_WRITE "${FILE}" "${SECTION}" "${KEY}" "${VALUE}"
  1380. !verbose pop
  1381. !macroend
  1382. !macro MUI_INSTALLOPTIONS_WRITE_DEFAULTCONVERT FILE SECTION KEY SYMBOL
  1383. ;Converts default strings from language files to InstallOptions format
  1384. ;Only for use inside MUI
  1385. !verbose push
  1386. !verbose ${MUI_VERBOSE}
  1387. !ifndef "${SYMBOL}_DEFAULTSET"
  1388. !insertmacro INSTALLOPTIONS_WRITE "${FILE}" "${SECTION}" "${KEY}" "${${SYMBOL}}"
  1389. !else
  1390. Push "${${SYMBOL}}"
  1391. Call ${MUI_PAGE_UNINSTALLER_FUNCPREFIX}Nsis2Io
  1392. Pop $MUI_TEMP1
  1393. !insertmacro INSTALLOPTIONS_WRITE "${FILE}" "${SECTION}" "${KEY}" $MUI_TEMP1
  1394. !endif
  1395. !verbose pop
  1396. !macroend
  1397. ;--------------------------------
  1398. ;RESERVE FILES
  1399. !macro MUI_RESERVEFILE_INSTALLOPTIONS
  1400. !verbose push
  1401. !verbose ${MUI_VERBOSE}
  1402. ReserveFile /plugin InstallOptions.dll
  1403. !verbose pop
  1404. !macroend
  1405. !macro MUI_RESERVEFILE_LANGDLL
  1406. !verbose push
  1407. !verbose ${MUI_VERBOSE}
  1408. ReserveFile /plugin LangDLL.dll
  1409. !verbose pop
  1410. !macroend
  1411. ;--------------------------------
  1412. ;LANGUAGES
  1413. !macro MUI_LANGUAGE NLFID
  1414. ;Include a language
  1415. !verbose push
  1416. !verbose ${MUI_VERBOSE}
  1417. ; MUI_PAGE_UNINSTALLER_PREFIX is undefined by uninstaller pages so we check MUI_UNINSTALLER as well
  1418. !ifndef MUI_PAGE_UNINSTALLER_PREFIX && MUI_UNINSTALLER
  1419. !warning "MUI_LANGUAGE should be inserted after the MUI_[UN]PAGE_* macros"
  1420. !endif
  1421. !insertmacro MUI_INSERT
  1422. LoadLanguageFile "${NSISDIR}\Contrib\Language files\${NLFID}.nlf"
  1423. ;Include language file
  1424. !insertmacro LANGFILE_INCLUDE_WITHDEFAULT \
  1425. "${NSISDIR}\Contrib\Language files\${NLFID}.nsh" "${NSISDIR}\Contrib\Language files\English.nsh"
  1426. ;Add language to list of languages for selection dialog
  1427. !define /ifndef MUI_LANGDLL_LANGUAGES ""
  1428. !define /redef MUI_LANGDLL_LANGUAGES \
  1429. `"${LANGFILE_${NLFID}_LANGDLL}" "${LANG_${NLFID}}" ${MUI_LANGDLL_LANGUAGES}`
  1430. !define /ifndef MUI_LANGDLL_LANGUAGES_CP ""
  1431. !define /redef MUI_LANGDLL_LANGUAGES_CP \
  1432. `"${LANGFILE_${NLFID}_LANGDLL}" "${LANG_${NLFID}}" "${LANG_${NLFID}_CP}" ${MUI_LANGDLL_LANGUAGES_CP}`
  1433. !verbose pop
  1434. !macroend
  1435. ;--------------------------------
  1436. ;LANGUAGE SELECTION DIALOG
  1437. !macro MUI_LANGDLL_DISPLAY
  1438. !verbose push
  1439. !verbose ${MUI_VERBOSE}
  1440. !ifndef MUI_LANGDLL_LANGUAGES
  1441. !warning "MUI_LANGDLL_DISPLAY should only be used after inserting the MUI_LANGUAGE macro(s)"
  1442. !endif
  1443. !insertmacro MUI_DEFAULT MUI_LANGDLL_WINDOWTITLE "Installer Language"
  1444. !insertmacro MUI_DEFAULT MUI_LANGDLL_INFO "Please select a language."
  1445. !ifdef MUI_LANGDLL_REGISTRY_ROOT & MUI_LANGDLL_REGISTRY_KEY & MUI_LANGDLL_REGISTRY_VALUENAME
  1446. ReadRegStr $MUI_TEMP1 "${MUI_LANGDLL_REGISTRY_ROOT}" "${MUI_LANGDLL_REGISTRY_KEY}" "${MUI_LANGDLL_REGISTRY_VALUENAME}"
  1447. StrCmp $MUI_TEMP1 "" mui.langdll_show
  1448. StrCpy $LANGUAGE $MUI_TEMP1
  1449. !ifndef MUI_LANGDLL_ALWAYSSHOW
  1450. Goto mui.langdll_done
  1451. !endif
  1452. mui.langdll_show:
  1453. !endif
  1454. !ifdef NSIS_CONFIG_SILENT_SUPPORT
  1455. IfSilent mui.langdll_done
  1456. !endif
  1457. !ifdef MUI_LANGDLL_ALLLANGUAGES
  1458. LangDLL::LangDialog "${MUI_LANGDLL_WINDOWTITLE}" "${MUI_LANGDLL_INFO}" A ${MUI_LANGDLL_LANGUAGES} ""
  1459. !else
  1460. LangDLL::LangDialog "${MUI_LANGDLL_WINDOWTITLE}" "${MUI_LANGDLL_INFO}" AC ${MUI_LANGDLL_LANGUAGES_CP} ""
  1461. !endif
  1462. Pop $LANGUAGE
  1463. StrCmp $LANGUAGE "cancel" 0 +2
  1464. Abort
  1465. !ifdef NSIS_CONFIG_SILENT_SUPPORT
  1466. mui.langdll_done:
  1467. !else ifdef MUI_LANGDLL_REGISTRY_ROOT & MUI_LANGDLL_REGISTRY_KEY & MUI_LANGDLL_REGISTRY_VALUENAME
  1468. mui.langdll_done:
  1469. !endif
  1470. !verbose pop
  1471. !macroend
  1472. !macro MUI_LANGDLL_SAVELANGUAGE
  1473. !ifndef MUI_PAGE_UNINSTALLER
  1474. IfAbort mui.langdllsavelanguage_abort
  1475. !ifdef MUI_LANGDLL_REGISTRY_ROOT & MUI_LANGDLL_REGISTRY_KEY & MUI_LANGDLL_REGISTRY_VALUENAME
  1476. WriteRegStr "${MUI_LANGDLL_REGISTRY_ROOT}" "${MUI_LANGDLL_REGISTRY_KEY}" "${MUI_LANGDLL_REGISTRY_VALUENAME}" $LANGUAGE
  1477. !endif
  1478. mui.langdllsavelanguage_abort:
  1479. !endif
  1480. !macroend
  1481. !macro MUI_UNGETLANGUAGE
  1482. !verbose push
  1483. !verbose ${MUI_VERBOSE}
  1484. !ifdef MUI_LANGDLL_REGISTRY_ROOT & MUI_LANGDLL_REGISTRY_KEY & MUI_LANGDLL_REGISTRY_VALUENAME
  1485. ReadRegStr $MUI_TEMP1 "${MUI_LANGDLL_REGISTRY_ROOT}" "${MUI_LANGDLL_REGISTRY_KEY}" "${MUI_LANGDLL_REGISTRY_VALUENAME}"
  1486. StrCmp $MUI_TEMP1 "" 0 mui.ungetlanguage_setlang
  1487. !endif
  1488. !insertmacro MUI_LANGDLL_DISPLAY
  1489. !ifdef MUI_LANGDLL_REGISTRY_ROOT & MUI_LANGDLL_REGISTRY_KEY & MUI_LANGDLL_REGISTRY_VALUENAME
  1490. Goto mui.ungetlanguage_done
  1491. mui.ungetlanguage_setlang:
  1492. StrCpy $LANGUAGE $MUI_TEMP1
  1493. mui.ungetlanguage_done:
  1494. !endif
  1495. !verbose pop
  1496. !macroend
  1497. ;--------------------------------
  1498. ;END
  1499. !verbose pop
  1500. !endif