home *** CD-ROM | disk | FTP | other *** search
/ Club KidSoft Volume 3 #2 / CKSPCV32.BIN / movies / dialogs.dir / 00001_Script_1 next >
Text File  |  1995-02-07  |  4KB  |  136 lines

  1. -- *** Need to add win dialog looks
  2.  
  3. on startMovie
  4.   ShowAllChannels
  5.   
  6.   SetTextInfo "Dialog Text", " ", "left", "chicago", 12, "plain"
  7.   SetTextInfo "Ask Text", " ", "left", "chicago", 12, "plain"
  8.   
  9.   global gDialogType
  10.   go to marker(gDialogType)
  11. end
  12.  
  13. on stopMovie
  14.   RestoreKeyDownScript
  15. end
  16.  
  17. on CloseAnswer buttonPressed
  18.   ForgetAMIAW "DIALOGS"
  19.   global gDialogCloseHandler
  20.   if voidP(gDialogCloseHandler) = TRUE or gDialogCloseHandler = empty then
  21.     set doIt = empty
  22.   else
  23.     set doIt = gDialogCloseHandler & "(" & quote & buttonPressed & quote & ")"
  24.   end if
  25.   return doIt
  26. end
  27.  
  28. on CloseAsk buttonPressed, askText
  29.   ForgetAMIAW "DIALOGS"
  30.   global gDialogCloseHandler
  31.   if voidP(gDialogCloseHandler) = TRUE or gDialogCloseHandler = empty then
  32.     set doIt = return
  33.   else
  34.     set doIt = gDialogCloseHandler & "(" & quote & buttonPressed & quote & "," & quote & askText & quote & ")"
  35.   end if
  36.   return doIt
  37. end
  38.  
  39. on CloseDialog buttonText
  40.   cursor 4
  41.   if label(0) = marker("MacAnswer") then
  42.     set doIt = CloseAnswer(buttonText)
  43.   else
  44.     set foo = field "Ask Text"
  45.     set doIt = CloseAsk(buttonText, foo)
  46.   end if
  47.   ExecuteDialogHandler(doIt)
  48. end
  49.  
  50. on DialogKeyDownScript
  51.   -- Can only deal with default button since we have no idea what the text of any other button might be
  52.   -- and whether cmd-. or escape should be used on them...
  53.   set stdKey = IsOKCancelKey(the key)
  54.   if stdKey = "OK" then
  55.     set buttonText = the text of cast "OK Button"
  56.     CloseDialog(buttonText)
  57.   else if stdKey = "Cancel" then
  58.     -- do nothing
  59.   end if
  60. end
  61.  
  62. on HideDialogItems
  63.   set the visible of sprite 3 to FALSE -- Button 1 (Left)
  64.   set the visible of sprite 4 to FALSE -- Button 2 (Center)
  65.   set the visible of sprite 5 to FALSE -- OK button (Right/Default)
  66.   set the visible of sprite 6 to FALSE -- OK Button outline
  67. end
  68.  
  69. on InitDialog
  70.   global gDialogText, gDialogAskText
  71.   global gDialogButton1, gDialogButton2, gDialogButton3
  72.   
  73.   put gDialogText into field "Dialog Text"
  74.   put gDialogAskText into field "Ask Text"
  75.   
  76.   global gDialogHeight
  77.   set windowRect = the rect of window "DIALOGS"
  78.   set curHeight = getAt(windowRect, 4) - getAt(windowRect, 2)
  79.   if curHeight <> gDialogHeight then
  80.     set top = getAt(windowRect, 2)
  81.     setAt(windowRect, 4, top + gDialogHeight)
  82.     set the rect of window "DIALOGS" = windowRect
  83.   end if
  84.   
  85.   set buttonV = gDialogHeight - 40
  86.   
  87.   if gDialogButton1 <> empty and voidP(gDialogButton1) <> TRUE then -- Left
  88.     set the text of cast "Button 1" = gDialogButton1
  89.     puppetSprite 3, TRUE
  90.     set the locV of sprite 3 = buttonV
  91.     set the visible of sprite 3 to TRUE
  92.   else
  93.     set the visible of sprite 3 to FALSE
  94.   end if
  95.   
  96.   if gDialogButton2 <> empty and voidP(gDialogButton2) <> TRUE then -- Center
  97.     set the text of cast "Button 2" = gDialogButton2
  98.     puppetSprite 4, TRUE
  99.     set the locV of sprite 4 = buttonV
  100.     set the visible of sprite 4 to TRUE
  101.   else
  102.     set the visible of sprite 4 to FALSE
  103.   end if
  104.   
  105.   if gDialogButton3 <> empty and voidP(gDialogButton3) <> TRUE then -- Right
  106.     set the text of cast "OK Button" = gDialogButton3
  107.     puppetSprite 5, TRUE
  108.     set the locV of sprite 5 = buttonV
  109.     puppetSprite 6, TRUE -- OK outline
  110.     set the locV of sprite 6 = buttonV + the height of sprite 6 / 2 - 4
  111.     set the visible of sprite 5 to TRUE
  112.     set the visible of sprite 6 to TRUE
  113.   else
  114.     set the visible of sprite 5 to FALSE
  115.     set the visible of sprite 6 to FALSE
  116.   end if
  117.   updateStage
  118. end
  119.  
  120. on RestoreKeyDownScript
  121.   global savedKeyDownScript
  122.   set the keyDownScript to savedKeyDownScript
  123.   set the exitLock = TRUE
  124. end
  125.  
  126. on SetDialogKeyDownScript
  127.   global savedKeyDownScript
  128.   set savedKeyDownScript = the keyDownScript
  129.   set the keyDownScript to "DialogKeyDownScript"
  130.   set the exitLock = TRUE
  131. end
  132.  
  133. on UpdateCurrentDialog
  134.   -- stage calls this when it wants to change the dialog in place, but not bring the current one down first
  135.   InitDialog
  136. end