home *** CD-ROM | disk | FTP | other *** search
/ Carousel / CAROUSEL.cdr / mactosh / hc / hypersou.sit / HyperSource / stack.txt < prev   
Text File  |  1988-01-24  |  6KB  |  212 lines

  1. -- stack: in
  2. -- format: 8 (HyperCard 1)
  3. -- flags: 0x0 (none)
  4. -- protect password hash: 0
  5. -- maximum user level: 5 (scripting)
  6. -- window: Rect(x1=0, y1=0, x2=0, y2=0)
  7. -- screen: Rect(x1=0, y1=0, x2=0, y2=0)
  8. -- card dimensions: w=0 h=0
  9. -- scroll: x=0 y=0
  10. -- background count: 2
  11. -- first background id: 2345
  12. -- card count: 2
  13. -- first card id: 3870
  14. -- list block id: 4352
  15. -- print block id: 5173
  16. -- font table block id: 0
  17. -- style table block id: 0
  18. -- free block count: 0
  19. -- free size: 0 bytes
  20. -- total size: 33984 bytes
  21. -- stack block size: 5632 bytes
  22. -- created by hypercard version: 0x00000000
  23. -- compacted by hypercard version: 0x00000000
  24. -- modified by hypercard version: 0x00000000
  25. -- opened by hypercard version: 0x00000000
  26. -- patterns[0]: 0x0000000000000000
  27. -- patterns[1]: 0x8000000008000000
  28. -- patterns[2]: 0x8800220088002200
  29. -- patterns[3]: 0x8888222288882222
  30. -- patterns[4]: 0x88AA22AA88AA22AA
  31. -- patterns[5]: 0xCCAA33AACCAA33AA
  32. -- patterns[6]: 0xEEAABBAAEEAABBAA
  33. -- patterns[7]: 0xEEBBBBEEEEBBBBEE
  34. -- patterns[8]: 0xFFBBFFEEFFBBFFEE
  35. -- patterns[9]: 0xFFBBFFFFFFBBFFFF
  36. -- patterns[10]: 0x8010022001084004
  37. -- patterns[11]: 0xFFFFFFFFFFFFFFFF
  38. -- patterns[12]: 0x8822882288228822
  39. -- patterns[13]: 0x1122448811224488
  40. -- patterns[14]: 0xC4800C6843023026
  41. -- patterns[15]: 0xB130031BD8C00C8D
  42. -- patterns[16]: 0xAA00AA00AA00AA00
  43. -- patterns[17]: 0x8822552288225522
  44. -- patterns[18]: 0x8855225588552255
  45. -- patterns[19]: 0x77DD77DD77DD77DD
  46. -- patterns[20]: 0x8000000000000000
  47. -- patterns[21]: 0xAA55AA55AA55AA55
  48. -- patterns[22]: 0x038448300C020101
  49. -- patterns[23]: 0x8244394482010101
  50. -- patterns[24]: 0x8814224188412214
  51. -- patterns[25]: 0x8080413E080814E3
  52. -- patterns[26]: 0x22048C7422179810
  53. -- patterns[27]: 0xBE808808EB088880
  54. -- patterns[28]: 0x25C8328964244C92
  55. -- patterns[29]: 0xA29C41BE2AC914EB
  56. -- patterns[30]: 0x40A00000040A0000
  57. -- patterns[31]: 0x8040200002040800
  58. -- patterns[32]: 0xAA00800088008000
  59. -- patterns[33]: 0xFF80808080808080
  60. -- patterns[34]: 0x081C22C180010204
  61. -- patterns[35]: 0xFF808080FF080808
  62. -- patterns[36]: 0xF87422478F172271
  63. -- patterns[37]: 0xBF00BFBFB0B0B0B0
  64. -- patterns[38]: 0xFF7FBE5DA2418000
  65. -- patterns[39]: 0xFAF5FAF5A050A050
  66. -- checksum: 0x0
  67. ----- HyperTalk script -----
  68. on openStack
  69.   hide message box
  70. end openStack
  71.  
  72. on copyCard
  73.   global thisStack,newStack,authorVar,titleVar,pubVar,notesVar, keyVar,holdCard
  74.   put the name of this stack into thisStack
  75.   push card
  76.   answer "Put selected cards into?" with "New stack" or "Existing one" or "Cancel"
  77.   if it is "Cancel" then exit copyCard
  78.   if it is "New Stack" then
  79.     set lockMessages to true
  80.     doMenu "New Stack..."
  81.     put the name of this stack into newStack
  82.     if newStack = thisStack then exit copyCard
  83.     pop card
  84.     set lockscreen to false
  85.     show bkgnd button id 53
  86.     set lockscreen to true
  87.   end if
  88.   if it is "Existing one" then
  89.     doMenu "Open Stack..."
  90.     put the name of this stack into newStack
  91.     if newStack = thisStack then exit copyCard
  92.     pop card
  93.     set lockscreen to false
  94.     show bkgnd button id 53
  95.     set lockscreen to true
  96.   end if
  97.   push card
  98.   repeat with x = 1 to the number of items in holdCard
  99.     go to item x of holdCard
  100.     repeat with y = 1 to the number of fields
  101.       if return is in field y then
  102.         repeat
  103.           put offset (return, field y) into retLoc
  104.           if retLoc = 0 then exit repeat
  105.           delete char retLoc of field y
  106.         end repeat
  107.       end if
  108.     end repeat
  109.     put field 1 & return after authorVar
  110.     put field 2 & return after titleVar
  111.     put field 3 & return after pubVar
  112.     put field 4 & return after notesVar
  113.     put field 5 & return after keyVar
  114.   end repeat
  115.   go to last card of newStack
  116.   repeat with x = 1 to the number of lines in authorVar
  117.     doMenu "New Card"
  118.     put line x of authorVar into field 1
  119.     put line x of titleVar into field 2
  120.     put line x of pubVar into field 3
  121.     put line x of notesVar into field 4
  122.     put line x of keyVar into field 5
  123.   end repeat
  124.   go first card
  125.   if field 1 is empty then doMenu "Delete Card"
  126.   put empty into authorVar
  127.   put empty into titleVar
  128.   put empty into pubVar
  129.   put empty into notesVar
  130.   put empty into keyVar
  131.   pop card
  132.   set lockscreen to false
  133.   hide bkgnd button id 53
  134.   answer "Go to stack with selected cards?" with "OK" or "Cancel"
  135.   if it is "OK" then
  136.     set lockscreen to true
  137.     go newStack
  138.   end if
  139. end copyCard
  140.  
  141. on exportData
  142.   global fileName
  143.   put the short name of this stack & ".txt" into fileName
  144.   ask "Export text to what file?" with fileName
  145.   if it is empty then exit exportData
  146.   put it into fileName
  147.   answer "Number of fields to include?" with "Three" or "Five" or "Cancel"
  148.   if it is "Three" then doThree
  149.   if it is "Five" then doFive
  150. end exportData
  151.  
  152. on doThree
  153.   global fileName,holdCard
  154.   open file fileName
  155.   set lockscreen to false
  156.   show bkgnd button id 73
  157.   set lockscreen to true
  158.   set cursor to 4
  159.   push card
  160.   repeat with x = 1 to the number of items in holdCard
  161.     go to item x of holdCard
  162.     repeat with y = 1 to the number of fields
  163.       if return is in field y then
  164.         repeat
  165.           put offset (return, field y) into retLoc
  166.           if retLoc = 0 then exit repeat
  167.           delete char retLoc of field y
  168.         end repeat
  169.       end if
  170.     end repeat
  171.     put field 1 && field 2 && field 3 into exRef
  172.     write exRef to file fileName
  173.     write return & return to file fileName
  174.   end repeat
  175.   pop card
  176.   set lockscreen to false
  177.   hide bkgnd button id 73
  178.   close file fileName
  179. end doThree
  180.  
  181. on doFive
  182.   global fileName,holdCard
  183.   open file fileName
  184.   set lockscreen to false
  185.   show bkgnd button id 73
  186.   set lockscreen to true
  187.   set cursor to 4
  188.   push card
  189.   repeat with x = 1 to the number of items in holdCard
  190.     go to item x of holdCard
  191.     repeat with y = 1 to the number of fields
  192.       if return is in field y then
  193.         repeat
  194.           put offset (return, field y) into retLoc
  195.           if retLoc = 0 then exit repeat
  196.           delete char retLoc of field y
  197.         end repeat
  198.       end if
  199.     end repeat
  200.     put field 1 && field 2 && field 3 && "[" & field 4 && field 5 & "]" into exRef
  201.     write exRef to file fileName
  202.     write return & return to file fileName
  203.   end repeat
  204.   pop card
  205.   set lockscreen to false
  206.   hide bkgnd button id 73
  207.   close file fileName
  208. end doFive
  209.  
  210.  
  211.  
  212.