home *** CD-ROM | disk | FTP | other *** search
/ Inventor Labs: Technology / INVENTORLABS_TECHNOLOGY.BIN / mac / FILES / SHARED.CST / 00032_Script_HSDataObject < prev    next >
Text File  |  1997-07-24  |  5KB  |  156 lines

  1. -- p: Hotspot Data Object
  2.  
  3.  
  4.  
  5.  
  6. property pHSnum, pArea, pHSaction, pHSfilename, pLabel, pDescription, pInstruction
  7. property pAreaFunctionObject
  8. property pPICTfilename, pSNDfilename
  9.  
  10.  
  11. ----------------------------------------------------------------------------ò
  12. on Birth me
  13.   
  14.   return( me )
  15.   
  16. end 
  17. ----------------------------------------------------------------------------ò
  18. on mInit me, HStext, aAreaFunctionObject, Delimators
  19.   
  20.   
  21.   
  22.   set PICTsprite = 18
  23.   set pAreaFunctionObject = aAreaFunctionObject
  24.   
  25.   set dbline = line 1 of HSText
  26.   mInit(pAreaFunctionObject, dbline, PICTsprite)
  27.   
  28.   -- init multi-line variables and tracking variables
  29.   set pLabel = EMPTY
  30.   set pDescription = EMPTY
  31.   set pInstruction = EMPTY
  32.   set lineText = EMPTY
  33.   set lineNumber = 1
  34.   
  35.   set StartDelimator = line 1 of Delimators
  36.   set EndDelimintor = line 2 of Delimators
  37.   
  38.   -- ( me, HSText, "╢","║")        
  39.   set pLabel = mDeriveData ( me, HSText, StartDelimator,EndDelimintor)
  40.  
  41.   set StartDelimator = line 3 of Delimators
  42.   set EndDelimintor = line 4 of Delimators
  43.   -- ( me, HSText, "║","ò")  
  44.   set pDescription = mDeriveData ( me, HSText, StartDelimator,EndDelimintor)
  45.   
  46.   set StartDelimator = line 5 of Delimators
  47.   set EndDelimintor = line 6 of Delimators
  48.   -- ( me, HSText, "ò","^") 
  49.   set pInstruction = mDeriveData ( me, HSText, StartDelimator,EndDelimintor)
  50.   
  51.   MoveBar( 5 )
  52.   
  53.   return( me )
  54.   
  55. end mInit
  56. ----------------------------------------------------------------------------ò
  57. on mDeriveData me, hotSpotText, startDelimiter, endDelimiter
  58.   
  59.   -- initialize utility variables
  60.   set lineText = EMPTY
  61.   set lineNumber = 1
  62.   set requestedData = Empty
  63.   
  64.   -- move down to start of data lines
  65.   repeat while (lineText <> startDelimiter)
  66.     set lineNumber = lineNumber + 1
  67.     set lineText = line lineNumber of hotSpotText
  68.   end repeat
  69.   -- find label data; set label
  70.   set lineNumber = lineNumber + 2                                                        -- move to actual first line
  71.   set lineText = line lineNumber of hotSpotText                                     -- check that firstLine is not end character
  72.   repeat while (lineText <> endDelimiter)                                    -- collect all label lines
  73.     set requestedData = requestedData & line lineNumber of hotSpotText
  74.     set lineNumber = lineNumber + 1
  75.     set lineText = line lineNumber of hotSpotText
  76.     set requestedData = requestedData & Return                                     -- add returns at end of lines
  77.   end repeat
  78.   if (requestedData = EMPTY ) then set requestedData = " "
  79.   return (requestedData )
  80.   
  81. end 
  82. ----------------------------------------------------------------------------ò
  83. on mGetFileName me
  84.   
  85.   return ( pHSfilename )
  86.   
  87. end  
  88. ----------------------------------------------------------------------------ò
  89. on mGetHSType me
  90.   
  91.   return ( pHStype )
  92.   
  93. end  
  94. ----------------------------------------------------------------------------ò
  95. -- pLabel is rollover text
  96. ----------------------------------------------------------------------------ò
  97. on mGetLabel me
  98.   
  99.   return( pLabel )
  100.   
  101. end  
  102.  
  103. ----------------------------------------------------------------------------ò
  104. -- pDescription if text displayed when clicked
  105. ----------------------------------------------------------------------------ò
  106. on mGetDescription me               
  107.   
  108.   return ( pDescription )
  109.   
  110. end  
  111. ----------------------------------------------------------------------------ò
  112. -- pInstruction 
  113. ----------------------------------------------------------------------------ò
  114. on mGetInstruction me
  115.   
  116.   return ( pInstruction )
  117.   
  118. end
  119. ----------------------------------------------------------------------------ò
  120. on mClose me
  121.   
  122.   mClose(pAreaFunctionObject)
  123.   
  124. end mClose
  125. ----------------------------------------------------------------------------ò
  126. on mActivate  me
  127.   
  128.   mActivate( pAreaFunctionObject )
  129.   
  130. end mActivate
  131. ----------------------------------------------------------------------------ò
  132. on mClickEvent me
  133.   
  134.   mClickEvent (pAreaFunctionObject)
  135.   
  136. end mClickEvent
  137. ----------------------------------------------------------------------------ò
  138. on mDisclose me
  139.   
  140.   mDisclose(pAreaFunctionObject)
  141.   
  142. end
  143. ----------------------------------------------------------------------------ò
  144. on mDiscloseFunctionalityType me
  145.   
  146.   set NewFunction = mDiscloseFunctionalityType(pAreaFunctionObject)
  147.   return NewFunction
  148.   
  149. end mDiscloseFunctionalityType
  150. ----------------------------------------------------------------------------ò
  151. on mSetAreaHotSpotID me, aAreaHotSpotID
  152.   
  153.   mSetAreaHotSpotID(pAreaFunctionObject, aAreaHotSpotID)
  154.   
  155. end mSetAreaHotSpotID
  156. ----------------------------------------------------------------------------ò