home *** CD-ROM | disk | FTP | other *** search
/ Hackers Magazine 57 / CdHackersMagazineNr57.iso / Software / Programming / nsis-2.46-setup.exe / Examples / nsDialogs / timer.nsi < prev    next >
Encoding:
Text File  |  2008-12-12  |  1.7 KB  |  103 lines

  1. !include LogicLib.nsh
  2. !include nsDialogs.nsh
  3.  
  4. Name "nsDialogs Timer Example"
  5. OutFile "nsDialogs Timer Example.exe"
  6. XPStyle on
  7.  
  8. Var DIALOG
  9. Var TEXT
  10. Var PROGBAR
  11. Var PROGBAR2
  12. Var PROGBAR3
  13. Var BUTTON
  14. Var BUTTON2
  15.  
  16. Page custom nsDialogsPage
  17.  
  18. Function OnTimer
  19.  
  20.       SendMessage $PROGBAR ${PBM_GETPOS} 0 0 $1
  21.     ${If} $1 = 100
  22.         SendMessage $PROGBAR ${PBM_SETPOS} 0 0
  23.     ${Else}
  24.         SendMessage $PROGBAR ${PBM_DELTAPOS} 10 0
  25.     ${EndIf}
  26.  
  27. FunctionEnd
  28.  
  29. Function OnTimer2
  30.  
  31.       SendMessage $PROGBAR2 ${PBM_GETPOS} 0 0 $1
  32.     ${If} $1 = 100
  33.         SendMessage $PROGBAR2 ${PBM_SETPOS} 0 0
  34.     ${Else}
  35.         SendMessage $PROGBAR2 ${PBM_DELTAPOS} 5 0
  36.     ${EndIf}
  37.  
  38. FunctionEnd
  39.  
  40. Function OnTimer3
  41.  
  42.       SendMessage $PROGBAR3 ${PBM_GETPOS} 0 0 $1
  43.     ${If} $1 >= 100
  44.         ${NSD_KillTimer} OnTimer3
  45.          MessageBox MB_OK "Timer 3 killed"
  46.     ${Else}
  47.         SendMessage $PROGBAR3 ${PBM_DELTAPOS} 2 0
  48.     ${EndIf}
  49.  
  50. FunctionEnd
  51.  
  52. Function OnClick
  53.  
  54.     Pop $0
  55.  
  56.     ${NSD_KillTimer} OnTimer
  57.  
  58. FunctionEnd
  59.  
  60. Function OnClick2
  61.  
  62.     Pop $0
  63.  
  64.     ${NSD_KillTimer} OnTimer2
  65.  
  66. FunctionEnd
  67.  
  68. Function nsDialogsPage
  69.  
  70.     nsDialogs::Create 1018
  71.     Pop $DIALOG
  72.  
  73.     ${NSD_CreateLabel} 0u 0u 100% 9u "nsDialogs timer example"
  74.     Pop $TEXT
  75.  
  76.     ${NSD_CreateProgressBar} 0u 10u 100% 12u ""
  77.     Pop $PROGBAR
  78.  
  79.     ${NSD_CreateButton} 0u 25u 100u 14u "Kill Timer 1"
  80.     Pop $BUTTON
  81.     ${NSD_OnClick} $BUTTON OnClick
  82.  
  83.     ${NSD_CreateProgressBar} 0u 52u 100% 12u ""
  84.     Pop $PROGBAR2
  85.  
  86.     ${NSD_CreateButton} 0u 67u 100u 14u "Kill Timer 2"
  87.     Pop $BUTTON2
  88.     ${NSD_OnClick} $BUTTON2 OnClick2
  89.  
  90.     ${NSD_CreateProgressBar} 0u 114u 100% 12u ""
  91.     Pop $PROGBAR3
  92.  
  93.     ${NSD_CreateTimer} OnTimer 1000
  94.     ${NSD_CreateTimer} OnTimer2 100
  95.     ${NSD_CreateTimer} OnTimer3 200
  96.  
  97.     nsDialogs::Show
  98.  
  99. FunctionEnd
  100.  
  101. Section
  102. SectionEnd
  103.