#!/bin/sh # MetaCard 2.4 stack # The following is not ASCII text, # so now would be a good time to q out of more exec mc $0 "$@" sweatScriptBrowser?/****************************************************************** Sweat Technologies - Script Browser @author Monte Goulding @copyright Sweat Technologies @version 1.2.1 @modified 2003.07.25 @url http://www.sweattechnologies.com/rev @url mailto:monte@sweattechnologies.com ******************************************************************/ constant kScriptIcon = 202312 -- The script icon local lReferences -- Array of references for each handler local lNotHandlers -- Array of varables etc declared in the comments --===================== MAIN FUNCTIONALITY =====================-- /***************************************************************** Javadoc style documentation for an objects script. @param pObject The long id or long name of the object whose script the function will parse @returns htmlText styled script documentation *****************************************************************/ function getDocs pObject local tComment -- Boolean that indicates in line is within a comment or not local tDoc -- The docs that are created local tFirstHandler -- Boolean check variable to make sure no docs are added on the first "/**" local tHandler -- Array used to hold the info for each handler/header block local tInHandler -- Boolean like tComment indicates that the handler is being parsed local tScript -- Hmmm... the script? local tSeparator -- Holds a separator until the next heading local tHeader -- Header info local tFront -- front scripts local tBack -- back scripts local tLibraries -- library stacks local tVar -- variable type local tMeaning -- variable meaning try put the script of pObject into tScript catch tError throw "Error accesing object script" end try -- can't have an owner if word 1 of pObject = "stack" then put "

"&markupH1(the abbrev name of pObject) &\ "

"&cr into tHeader else put "

"&markupH1(the abbrev name of pObject) &\ "

"&cr& \ "

Owner: "& the abbrev owner of pObject& \ "

" into tHeader end if put tHeader into tHandler["Heading"] put true into tFirstHandler set the cursor to watch -- setup the not handlers checker if not lReferences["it"] then repeat for each line tLine in commandNames()&cr&propertyNames()&cr&functionNames()&cr&constantNames()&cr&the cNotHandlers of this stack put true into lNotHandlers[tLine] end repeat end if put the hilite of btn "frontscripts" into tFront put the hilite of btn "backscripts" into tBack put the hilite of btn "libraries" into tLibraries repeat for each line tLine in tScript switch case char 1 to 3 of tLine is "/**" put true into tComment if tHandler["Heading"] = "" or tFirstHandler then break case char 1 to 3 of tLine = "end" delete variable lReferences put false into tInHandler if tDoc is "" and char 1 to 3 of tLine = "end" then put tHeader&"

" into tDoc end if put tHandler["Heading"]&"

" after tDoc if tHandler["Comment"] <> "" then put "

"&tHandler["Comment"]&"

" after tDoc put keys(tHandler) into tKeys sort tKeys repeat for each line tKey in tKeys if tKey is not among the items of "Heading,Comment" then if the number of lines of tHandler[tKey] > 1 then put "

"&markupH3(tKey)&"

" after tDoc repeat for each line l in tHandler[tKey] put "

"&tab&"- "&l&"

" after tDoc end repeat else put "

"&markupH3(tKey)&": "&tHandler[tKey]&"

" after tDoc end if end if end repeat put "

" after tDoc delete variable tHandler break case char -2 to -1 of replaceText(tLine," ","") is "*/" put false into tFirstHandler put false into tComment break case tComment repeat for each char tChar in tLine if tChar <> " " then exit repeat else delete char 1 of tLine end if end repeat if char 1 of tLine = "*" then delete char 1 of tLine -- can handle any type but you need to alter the merge source if char 1 word 1 of tLine is "@" then if char 2 to -1 of word 1 of tLine is among the items of "local,temp,constant,global,param" then put markupLabel(word 2 of tLine)&tab&word 3 to -1 of tLine&cr after tHandler[char 2 to -1 of word 1 of tLine] put word 2 of tLine&cr after tNotHandlers else if char 2 to -1 of word 1 of tLine is among the items of "requires,calledby" then put ""&word 2 to -1 of tLine&" " & cr after tHandler[char 2 to -1 of word 1 of tLine] else if char 2 to -1 of word 1 of tLine = "url" then put ""&word 2 to -1 of tLine&"" & cr after tHandler[char 2 to -1 of word 1 of tLine] else put word 2 to -1 of tLine & cr after tHandler[char 2 to -1 of word 1 of tLine] end if else put tLine after tHandler["Comment"] end if break case word 1 of tLine is among the items of "on,function,setProp,getProp" if word 1 of tLine is "on" then put "message" into word 1 of tLine put tSeparator&markupH2(tLine) into tHandler["Heading"] put "" into tSeparator put true into tInHandler break case word 1 of tLine is among the items of "local,global" repeat for each item tItem in word 2 to -1 of tLine put word 2 to -1 of tItem into tMeaning if char 1 to 2 of tMeaning = "--" then delete char 1 to 2 of tMeaning if char 1 of tMeaning = "#" then delete char 1 of tMeaning if tInHandler then put word 1 of tLine into tVar else put "script "&word 1 of tLine into tVar end if put markupLabel(word 1 of tItem)&tab&tMeaning&cr after tHandler[tVar] put word 1 of tItem&cr after tNotHandlers end repeat break case word 1 of tLine is "constant" repeat for each item tItem in word 2 to -1 of tLine put tItem into tMeaning delete token 1 to 3 of tMeaning put word 1 to -1 of tMeaning into tMeaning if char 1 to 2 of tMeaning = "--" then delete char 1 to 2 of tMeaning if char 1 of tMeaning = "#" then delete char 1 of tMeaning put markupLabel(token 1 to 3 of tItem)&tab&tMeaning&cr after tHandler[word 1 of tLine] put word 1 of tItem&cr after tNotHandlers end repeat break case tInHandler if not (char 1 of token 1 of tLine = "#" or char 1 to 2 of token 1 of tLine = "--") then repeat for each token tToken in tLine if tToken is not among the lines of tReferences["Calls"] then if not (tNotHandlers[tToken] = true) and tToken is not a number then try if tFront then repeat for each line tTempObject in frontScripts() if tToken is among the lines of the cRevGeneral["handlerList"] of tTempObject then if tTempObject is not among the lines of tReferences["front"] then put tTempObject & cr after tReferences["front"] put ""&"front scipt - "&the long name of tTempObject&" " & cr after tHandler["requires"] end if throw "found" end if end repeat end if put pObject into tTempObject repeat forever if tToken is among the lines of the cRevGeneral["handlerList"] of tTempObject then throw "found" end if if word 1 of tTempObject <> "stack" then put the long owner of tTempObject into tTempObject else exit repeat end if end repeat if tLibraries then repeat for each line tTempObject in stacksInUse() if tToken is among the lines of the cRevGeneral["handlerList"] of tTempObject then if tTempObject is not among the lines of tReferences["library"] then put tTempObject & cr after tReferences["library"] put ""&"library - "&the long name of tTempObject&" " & cr after tHandler["requires"] end if throw "found" end if end repeat end if if tBack then repeat for each line tTempObject in backScripts() if tToken is among the lines of the cRevGeneral["handlerList"] of tTempObject then if tTempObject is not among the lines of tReferences["back"] then put tTempObject & cr after tReferences["back"] put ""&"back scipt - "&the long name of tTempObject&" " & cr after tHandler["requires"] end if throw "found" end if end repeat end if catch tError if tError <> "found" then throw tError else put tToken & cr after tReferences["calls"] put ""&tToken&" " & cr after tHandler["calls"] end if end try end if end if end repeat end if break case char 1 to 4 of tLine = "--==" put "

"&markupLabel(tLine)&"

" into tSeparator break end switch end repeat if tDoc is "" then put tHeader&"

" into tDoc end if return tDoc end getDocs /***************************************************************** Display the docs for a particular object @param pObject The the object with script is being parsed *****************************************************************/ on objectDocs pObject if line 1 of the cBackList of this stack <> the cCurrent of this stack then set the cBackList of this stack to the cCurrent of this stack&cr&the cBackList of this stack end if set the cCurrent of this stack to "doc",pObject enable btn "back" if pObject <> "" then if "libXMLText" is among the lines of the stacksInUse then set the xmlText of fld 1 to getDocs(pObject) else set the htmlText of fld 1 to getDocs(pObject) end if end if end objectDocs /***************************************************************** Index a particular stack @param pStack The stack being indexed *****************************************************************/ on indexStack pStack if the cCurrent of this stack <> "" then set the cBackList of this stack to the cCurrent of this stack&cr&the cBackList of this stack set the cCurrent of this stack to "index",pStack put "

"&markupH1(""&the abbrev name of stack pStack&"

")&"

" into tindex repeat with tCardNum =1 to the number of cds of stack pStack put "

"&the abbrev name of cd tCardNum of stack pStack&"

" & cr after tIndex repeat with tControlNum =1 to the number of controls of card tCardNum of stack pStack put the long name of control tControlNum of cd tCardNum of stack pStack into tGroupExp put tab&""&the abbrev name of control tControlNum of cd tCardNum of stack pStack&"

" into tIndented repeat for each word w in word 2 to -1 of tGroupExp if w is "group" then put tab before tIndented end repeat put "

"&tIndented & cr after tIndex end repeat end repeat if "libXMLText" is among the lines of the stacksInUse then set the xmlText of fld 1 to tIndex else set the htmlText of fld 1 to tIndex end if end indexStack --===================== PLUGIN MESSAGES =====================-- /***************************************************************** Activate whenever a script is edited @param pObject The the object with script is being edited @example edit script command @example script button on menubar @bug Does not seem to work but will leave it in for now as it could be a Rev bug @calledby button "revFrontScript" of card id 1002 of stack "revLibrary" *****************************************************************/ on revEditScript pObject objectDocs pObject end revEditScript /***************************************************************** Activate whenever an object is selected @example select command @example inspect object with inspector @example click on object in application browser @calledby button "revBackScript" of card id 1002 of stack "revLibrary" *****************************************************************/ on revSelectedObjectChanged objectDocs the selectedObject end revSelectedObjectChanged --====================== USER INTERFACE =====================-- /***************************************************************** Needed because stacks with rev prefix don't get geometry updated on resizeStack *****************************************************************/ on resizeStack revUpdateGeometry end resizeStack function markupH1 pHead if "libXMLText" is not among the lines of the stacksInUse then return ""&pHead&"" else return "

"&pHead&"

" end if end markupH1 function markupH2 pHead if "libXMLText" is not among the lines of the stacksInUse then return ""&pHead&"" else return "

"&pHead&"

" end if end markupH2 function markupH3 pHead if "libXMLText" is not among the lines of the stacksInUse then return ""&pHead&"" else return "

"&pHead&"

" end if end markupH3 function markupLabel pHead if "libXMLText" is not among the lines of the stacksInUse then return ""&pHead&"" else return "" end if end markupLabel l  cBackList StyleXML New York,12 b cMergeSourceB

[[tHandler[Heading] ]]

[[tHandler[Comment] ]]

cForwardList cNotHandlersif then else repeat for with while on end switch case getprop setprop try catch a there me it of is not to into among the in token tokens item items word words line lines element char character chars chatacters card cards cd cds stack stacks each and or this control part button btn field fld scollbar image img graphic grc player group grp background bg bkgnd url EPS file - + = / * & ^ ( ) [ ] # - , cCurrentindex,sweatScriptBrowser$Sweat Technologies - Script Browser@Y Ums sans serifUms sans serifUms sans serifWms sans serif Wms sans serif UArial WArialUArialWArialUArialWArialUms sans serifWms sans serifUms sans serifWms sans serifWms sans serif UVerdanaUVerdanaWVerdanaUVerdanaWVerdanaUVerdanaWVerdana WVerdana UVerdana WVerdana Ums sans serif Wms sans serif W WVerdanaWVerdana WVerdanaUVerdanaWVerdanaWVerdana @UVerdanaUVerdana ULucida Grande @WVerdana AUVerdana@WVerdanaAUVerdana@UVerdana@UVerdana@WVerdana UArialUArialWArial UCourierUCourierWCourier@WArial USongUSongWSong USkiaUSkiaWSkia USeoulUSeoulWSeoul U Monaco CYU Monaco CYW Monaco CY U HerculanumU HerculanumW Herculanum UFuturaUFuturaWFutura UDidotUDidotWDidot UBeijingUBeijingWBeijing UAmerican TypewriterUAmerican TypewriterWAmerican Typewriter UCochinUCochinWCochin U Gill SansU Gill SansW Gill Sans U Trebuchet MSU Trebuchet MSW Trebuchet MS@W Trebuchet MS StyleXMLheadingArial,20,#6a7454 bh1Trebuchet MS,20,#3b1fb0 bh2Courier,18,#000000 bh3Verdana,14,#000000 bsubheadCourier,18,#000000 bstrongVerdana,12,#000000 b cREVGeneralscriptChecksumBLu4( e bookmarks handlerListwgetDocs objectDocs indexStack revEditScript revSelectedObjectChanged resizeStack markupH1 markupH2 markupH3 markupLabel tempScript prevHandlergetDocsscriptSelectionchar 192 to 191scriptb

/******************************************************************

Sweat Technologies - Script Browser

@author Monte Goulding

@copyright Sweat Technologies

@version 1.2.1

@modified 2003.07.25

@url http://www.sweattechnologies.com/rev

@url mailto:monte@sweattechnologies.com

******************************************************************/

constant kScriptIcon = 202312 -- The script icon

local lReferences -- Array of references for each handler

local lNotHandlers -- Array of varables etc declared in the comments

--===================== MAIN FUNCTIONALITY =====================--

/*****************************************************************

Javadoc style documentation for an objects script.

@param pObject The long id or long name of the object whose script the function will parse

@returns htmlText styled script documentation

*****************************************************************/

function getDocs pObject

local tComment -- Boolean that indicates in line is within a comment or not

local tDoc -- The docs that are created

local tFirstHandler -- Boolean check variable to make sure no docs are added on the first "/**"

local tHandler -- Array used to hold the info for each handler/header block

local tInHandler -- Boolean like tComment indicates that the handler is being parsed

local tScript -- Hmmm... the script?

local tSeparator -- Holds a separator until the next heading

local tHeader -- Header info

local tFront -- front scripts

local tBack -- back scripts

local tLibraries -- library stacks

local tVar -- variable type

local tMeaning -- variable meaning

try

put the script of pObject into tScript

catch tError

throw "Error accesing object script"

end try

-- can't have an owner

if word 1 of pObject = "stack" then

put "<p>"&markupH1(the abbrev name of pObject) &\

" <a href="&quote&urlEncode("edit the script of "&(the long name of pObject))&\

quote&"><img src="&quote&kScriptIcon&quote& "/></a></p>"&cr into tHeader

else

put "<p>"&markupH1(the abbrev name of pObject) &\

" <a href="&quote&urlEncode("edit the script of "&(the long name of pObject))&\

quote&"><img src="&quote&kScriptIcon&quote& "/></a></p>"&cr& \

"<p><b>Owner: </b><a href="&quote&urlEncode(the long owner of pObject)&quote&">"& the abbrev owner of pObject& \

"</a> <a href="&quote&urlEncode("edit the script of "&(the long owner of pObject))&\

quote&"><img src="&quote&kScriptIcon&quote& "/></a></p>" into tHeader

end if

put tHeader into tHandler["Heading"]

put true into tFirstHandler

set the cursor to watch

-- setup the not handlers checker

if not lReferences["it"] then

repeat for each line tLine in commandNames()&cr&propertyNames()&cr&functionNames()&cr&constantNames()&cr&the cNotHandlers of this stack

put true into lNotHandlers[tLine]

end repeat

end if

put the hilite of btn "frontscripts" into tFront

put the hilite of btn "backscripts" into tBack

put the hilite of btn "libraries" into tLibraries

repeat for each line tLine in tScript

switch

case char 1 to 3 of tLine is "/**"

put true into tComment

if tHandler["Heading"] = "" or tFirstHandler then break

case char 1 to 3 of tLine = "end"

delete variable lReferences

put false into tInHandler

if tDoc is "" and char 1 to 3 of tLine = "end" then

put tHeader&"<P>" into tDoc

end if

put tHandler["Heading"]&"<p>" after tDoc

if tHandler["Comment"] <> "" then put "<p>"&tHandler["Comment"]&"</p>" after tDoc

put keys(tHandler) into tKeys

sort tKeys

repeat for each line tKey in tKeys

if tKey is not among the items of "Heading,Comment" then

if the number of lines of tHandler[tKey] > 1 then

put "<p>"&markupH3(tKey)&"</p>" after tDoc

repeat for each line l in tHandler[tKey]

put "<p>"&tab&"- "&l&"</p>" after tDoc

end repeat

else

put "<p>"&markupH3(tKey)&": </b></font>"&tHandler[tKey]&"</p>" after tDoc

end if

end if

end repeat

put "<p><p>" after tDoc

delete variable tHandler

break

case char -2 to -1 of replaceText(tLine," ","") is "*/"

put false into tFirstHandler

put false into tComment

break

case tComment

repeat for each char tChar in tLine

if tChar <> " " then

exit repeat

else

delete char 1 of tLine

end if

end repeat

if char 1 of tLine = "*" then delete char 1 of tLine

-- can handle any type but you need to alter the merge source

if char 1 word 1 of tLine is "@" then

if char 2 to -1 of word 1 of tLine is among the items of "local,temp,constant,global,param" then

put markupLabel(word 2 of tLine)&tab&word 3 to -1 of tLine&cr after tHandler[char 2 to -1 of word 1 of tLine]

put word 2 of tLine&cr after tNotHandlers

else if char 2 to -1 of word 1 of tLine is among the items of "requires,calledby" then

put "<a href="&quote&urlEncode(word 2 to -1 of tLine)&quote&">"&word 2 to -1 of tLine&"</a> <a href="&quote&urlEncode("edit the script of "&word 2 to -1 of tLine)&quote&"><img src="&quote&kScriptIcon&quote&"/></a>" & cr after tHandler[char 2 to -1 of word 1 of tLine]

else if char 2 to -1 of word 1 of tLine = "url" then

put "<a href="&quote&word 2 to -1 of tLine&quote&">"&word 2 to -1 of tLine&"</a>" & cr after tHandler[char 2 to -1 of word 1 of tLine]

else

put word 2 to -1 of tLine & cr after tHandler[char 2 to -1 of word 1 of tLine]

end if

else

put tLine after tHandler["Comment"]

end if

break

case word 1 of tLine is among the items of "on,function,setProp,getProp"

if word 1 of tLine is "on" then put "message" into word 1 of tLine

put tSeparator&markupH2(tLine) into tHandler["Heading"]

put "" into tSeparator

put true into tInHandler

break

case word 1 of tLine is among the items of "local,global"

repeat for each item tItem in word 2 to -1 of tLine

put word 2 to -1 of tItem into tMeaning

if char 1 to 2 of tMeaning = "--" then delete char 1 to 2 of tMeaning

if char 1 of tMeaning = "#" then delete char 1 of tMeaning

if tInHandler then

put word 1 of tLine into tVar

else

put "script "&word 1 of tLine into tVar

end if

put markupLabel(word 1 of tItem)&tab&tMeaning&cr after tHandler[tVar]

put word 1 of tItem&cr after tNotHandlers

end repeat

break

case word 1 of tLine is "constant"

repeat for each item tItem in word 2 to -1 of tLine

put tItem into tMeaning

delete token 1 to 3 of tMeaning

put word 1 to -1 of tMeaning into tMeaning

if char 1 to 2 of tMeaning = "--" then delete char 1 to 2 of tMeaning

if char 1 of tMeaning = "#" then delete char 1 of tMeaning

put markupLabel(token 1 to 3 of tItem)&tab&tMeaning&cr after tHandler[word 1 of tLine]

put word 1 of tItem&cr after tNotHandlers

end repeat

break

case tInHandler

if not (char 1 of token 1 of tLine = "#" or char 1 to 2 of token 1 of tLine = "--") then

repeat for each token tToken in tLine

if tToken is not among the lines of tReferences["Calls"] then

if not (tNotHandlers[tToken] = true) and tToken is not a number then

try

if tFront then

repeat for each line tTempObject in frontScripts()

if tToken is among the lines of the cRevGeneral["handlerList"] of tTempObject then

if tTempObject is not among the lines of tReferences["front"] then

put tTempObject & cr after tReferences["front"]

put "<a href="&quote&urlEncode(tTempObject)&quote&">"&"front scipt - "&the long name of tTempObject&"</a> <a href="&quote&urlEncode("edit the script of "&tTempObject)&quote&"><img src="&quote&kScriptIcon&quote&"/></a>" & cr after tHandler["requires"]

end if

throw "found"

end if

end repeat

end if

put pObject into tTempObject

repeat forever

if tToken is among the lines of the cRevGeneral["handlerList"] of tTempObject then

throw "found"

end if

if word 1 of tTempObject <> "stack" then

put the long owner of tTempObject into tTempObject

else

exit repeat

end if

end repeat

if tLibraries then

repeat for each line tTempObject in stacksInUse()

if tToken is among the lines of the cRevGeneral["handlerList"] of tTempObject then

if tTempObject is not among the lines of tReferences["library"] then

put tTempObject & cr after tReferences["library"]

put "<a href="&quote&urlEncode(tTempObject)&quote&">"&"library - "&the long name of tTempObject&"</a> <a href="&quote&urlEncode("edit the script of "&tTempObject)&quote&"><img src="&quote&kScriptIcon&quote&"/></a>" & cr after tHandler["requires"]

end if

throw "found"

end if

end repeat

end if

if tBack then

repeat for each line tTempObject in backScripts()

if tToken is among the lines of the cRevGeneral["handlerList"] of tTempObject then

if tTempObject is not among the lines of tReferences["back"] then

put tTempObject & cr after tReferences["back"]

put "<a href="&quote&urlEncode(tTempObject)&quote&">"&"back scipt - "&the long name of tTempObject&"</a> <a href="&quote&urlEncode("edit the script of "&tTempObject)&quote&"><img src="&quote&kScriptIcon&quote&"/></a>" & cr after tHandler["requires"]

end if

throw "found"

end if

end repeat

end if

catch tError

if tError <> "found" then

throw tError

else

put tToken & cr after tReferences["calls"]

put "<a href="&quote&urlEncode(tTempObject)&quote&">"&tToken&"</a> <a href="&quote&urlEncode("edit the script of "&tTempObject)&quote&"><img src="&quote&kScriptIcon&quote&"/></a>" & cr after tHandler["calls"]

end if

end try

end if

end if

end repeat

end if

break

case char 1 to 4 of tLine = "--=="

put "<p>"&markupLabel(tLine)&"<p><p>" into tSeparator

break

end switch

end repeat

if tDoc is "" then

put tHeader&"<P>" into tDoc

end if

return tDoc

end getDocs

/*****************************************************************

Display the docs for a particular object

@param pObject The the object with script is being parsed

*****************************************************************/

on objectDocs pObject

if line 1 of the cBackList of this stack <> the cCurrent of this stack then

set the cBackList of this stack to the cCurrent of this stack&cr&the cBackList of this stack

end if

set the cCurrent of this stack to "doc",pObject

enable btn "back"

if pObject <> "" then

if "libXMLText" is among the lines of the stacksInUse then

set the xmlText of fld 1 to getDocs(pObject)

else

set the htmlText of fld 1 to getDocs(pObject)

end if

end if

end objectDocs

/*****************************************************************

Index a particular stack

@param pStack The stack being indexed

*****************************************************************/

on indexStack pStack

if the cCurrent of this stack <> "" then set the cBackList of this stack to the cCurrent of this stack&cr&the cBackList of this stack

set the cCurrent of this stack to "index",pStack

put "<p>"&markupH1("<a href="&quote&urlEncode(the long name of stack pStack)&quote&">"&the abbrev name of stack pStack&"</a> <a href="&quote&urlEncode("edit the script of "&the abbrev name of stack pStack)&quote&"><img src="&quote&kScriptIcon&quote&"/></a></p>")&"<p>" into tindex

repeat with tCardNum =1 to the number of cds of stack pStack

put "<p><a href="&quote&urlEncode(the long name of cd tCardNum of stack pStack)&quote&">"&the abbrev name of cd tCardNum of stack pStack&"</a> <a href="&quote&urlEncode("edit the script of "&the long name of cd tCardNum of stack pStack)&quote&"><img src="&quote&kScriptIcon&quote&"/></a></p>" & cr after tIndex

repeat with tControlNum =1 to the number of controls of card tCardNum of stack pStack

put the long name of control tControlNum of cd tCardNum of stack pStack into tGroupExp

put tab&"<a href="&quote&urlEncode(tGroupExp)&quote&">"&the abbrev name of control tControlNum of cd tCardNum of stack pStack&"</a> <a href="&quote&urlEncode("edit the script of "&the long name of control tControlNum of cd tCardNum of stack pStack)&quote&"><img src="&quote&kScriptIcon&quote&"/></a></p>" into tIndented

repeat for each word w in word 2 to -1 of tGroupExp

if w is "group" then put tab before tIndented

end repeat

put "<p>"&tIndented & cr after tIndex

end repeat

end repeat

if "libXMLText" is among the lines of the stacksInUse then

set the xmlText of fld 1 to tIndex

else

set the htmlText of fld 1 to tIndex

end if

end indexStack

--===================== PLUGIN MESSAGES =====================--

/*****************************************************************

Activate whenever a script is edited

@param pObject The the object with script is being edited

@example edit script command

@example script button on menubar

@bug Does not seem to work but will leave it in for now as it could be a Rev bug

@calledby button "revFrontScript" of card id 1002 of stack "revLibrary"

*****************************************************************/

on revEditScript pObject

objectDocs pObject

end revEditScript

/*****************************************************************

Activate whenever an object is selected

@example select command

@example inspect object with inspector

@example click on object in application browser

@calledby button "revBackScript" of card id 1002 of stack "revLibrary"

*****************************************************************/

on revSelectedObjectChanged

objectDocs the selectedObject

end revSelectedObjectChanged

--====================== USER INTERFACE =====================--

/*****************************************************************

Needed because stacks with rev prefix don't get geometry updated on resizeStack

*****************************************************************/

on resizeStack

revUpdateGeometry

end resizeStack

function markupH1 pHead

if "libXMLText" is not among the lines of the stacksInUse then

return "<font size=20><b>"&pHead&"</b></font>"

else

return "<h1>"&pHead&"</h1>"

end if

end markupH1

function markupH2 pHead

if "libXMLText" is not among the lines of the stacksInUse then

return "<font size=18><i>"&pHead&"</i></font>"

else

return "<h2>"&pHead&"</h2>"

end if

end markupH2

function markupH3 pHead

if "libXMLText" is not among the lines of the stacksInUse then

return "<font size=14><b>"&pHead&"</b></font>"

else

return "<h3>"&pHead&"</h3>"

end if

end markupH3

function markupLabel pHead

if "libXMLText" is not among the lines of the stacksInUse then

return "<b>"&pHead&"</b>"

else

return "<label>"&pHead&"</label>"

end if

end markupLabel

cREVGeometryCachestackID1020 cREVLoadInforevEditScripttruerevResumeStackfalsemodeModelessrevSelectedObjectChangedtrue Pon preOpenCard set the cCurrent of this stack to "" set the cBackList of this stack to "" set the cForwardList of this stack to "" disable btn "back" disable btn "forward" indexStack the short name of the topStack end preOpenCard   cREVGeneralscriptChecksumGU' $J օj` bookmarks handlerList preOpenCard tempScript prevHandlerscriptSelectionchar 242 to 241scriptk

on preOpenCard

set the cCurrent of this stack to ""

set the cBackList of this stack to ""

set the cForwardList of this stack to ""

disable btn "back"

disable btn "forward"

indexStack the short name of the topStack

end preOpenCard

cREVGeometryCacheIDs 1055936116401101310559774803891018105597743970310151055331696284100910553157976931003105660713237110201055936118993101410553316420681008105597747418310161055330946647100610559774776141017cREVGeometrycacheorder1055315797693 1055330946647 1055331696284 1055936116401 1055936118993 1055977439703 1055977474183 1055977477614 1055977480389 1056607132371 total11 doc x@on linkClicked pLink if char 1 to 4 of pLink is "http" then revGoURL pLink else if char 1 to 6 of pLink is "mailto" then revMail char 8 to -1 of pLink else put urlDecode(pLink) into pLink if there is a pLink then objectDocs pLink else do pLink end if end if end linkClicked - htmltextxmlText

stack "sweatScriptBrowser"

card id 1002

field "doc"

button "Help"

image "webheader.png"

button "Index TopStack"

button "Forward"

button "Back"

field "Field 1"

button "frontscripts"

button "backscripts"

button "libraries"

button "Text Style"

 cREVGeometryMaster,scaleBottomObjectSideBottomMaster,scaleBottomscaleBottomtrueMaster,movehDistancefalseMaster,scaleRightscaleBottomtrueMastertrueMaster,scaleBottomObjectRefcardMaster,scaleBottomAbsolutetrueMaster,scaleBottomtrueMaster,expectedRect -1,45,555,510Master,scalebottomDistance-26Master,movevDistancefalseMaster,scaleRightAbsolutetrueMaster,scaleRighttrueMaster,scalerightDistance0Master,scaleRightObjectSideRightMaster,scaleRightObjectRefcardMaster,cardRanking2Master,scaleleftDistanceMaster,scaletopDistance cREVGeneralscriptChecksum)rԮv Ɩ}R revUniqueID 1055315797693 bookmarks handlerList linkClicked tempScript prevHandler linkClickedscriptSelectionchar 273 to 272script

on linkClicked pLink

if char 1 to 4 of pLink is "http" then

revGoURL pLink

else if char 1 to 6 of pLink is "mailto" then

revMail char 8 to -1 of pLink

else

put urlDecode(pLink) into pLink

if there is a pLink then

objectDocs pLink

else

do pLink

end if

end if

end linkClicked

 stack "sweatScriptBrowser" ,\stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22  `,2edit+the+script+of+stack+%22sweatScriptBrowser%22202312 , card id 1002 #lcard+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22   `#edit+the+script+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22202312  #  field "doc"  #field+%22doc%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22   `#edit+the+script+of+field+%22doc%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22202312  #  button "Help"  #button+%22Help%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22  `#edit+the+script+of+button+%22Help%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22202312 #  image "webheader.png"  #image+%22webheader.png%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22  `#edit+the+script+of+image+%22webheader.png%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22202312 #  button "Index TopStack"  #button+%22Index+TopStack%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22  `#edit+the+script+of+button+%22Index+TopStack%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22202312 #  button "Forward"  #button+%22Forward%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22  `#edit+the+script+of+button+%22Forward%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22202312 #  button "Back"  #button+%22Back%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22  `#edit+the+script+of+button+%22Back%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22202312 #  field "Field 1"  #field+%22Field+1%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22  `#edit+the+script+of+field+%22Field+1%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22202312 #  button "frontscripts"  #button+%22frontscripts%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22  `#edit+the+script+of+button+%22frontscripts%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22202312 #  button "backscripts"  #button+%22backscripts%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22  `#edit+the+script+of+button+%22backscripts%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22202312 #  button "libraries"  #button+%22libraries%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22  `#edit+the+script+of+button+%22libraries%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22202312 #  button "Text Style"  #button+%22Text+Style%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22  `#edit+the+script+of+button+%22Text+Style%22+of+card+id+1002+of+stack+%22C%3A%2FDocuments+and+Settings%2FMonster%2FMy+Documents%2FsweatScriptBrowser.rev%22202312 #`@.a@HelpexGon mouseUp set the htmlText of fld 1 to the cHelp of me end mouseUp  

cHelp n

Sweat Technologies - Script Browser 1.2

Developed by Monte Goulding

Copyright © 2003 Sweat Technologies

Sweat Technologies - Script Browser provides a way for Revolution scripters to incorporate javadoc script comments into object scripts and view them in a graphical format.

LICENSE

You can use this plugin in any way you like, however, you may not modify it, redistribute it or resell it without the author's permission.

INSTALLATION

Save this file into your plugins folder within the Revolution folder. This plugin is compatable with Revolution 2.0 and up only.

USE

To view your javadoc comments using the plugin just select the object whose script you wish to view. For an example have a look at the sweatScriptBrowser stack script . Note that when you see the script icon next to an object reference you can click it to edit the script of the object.

There are a few extra attributes that javadoc doesn't have and far greater flexibility. In this implementation you can use any attribute type, however, some attributes (local, global, temp, param and constant) have special formatting characteristics to handle name, definition pairs.

To write javadoc comments you use a special form of the new "/* */" comments. The opening comment must have at least 2 *s. For Example, "/**" or "/********". It also must start at char 1 of the line in the script editor and be above the handler it relates to. The closing one must be at least "*/" but could be "****/" etc. It must be at the end ot the line (char -2 to -1 must be */).

The main comment or description of the handler is written in htmlText. You don't need to surround it in the p tag because the code already does that. Attributes are written by prefixing the attribute name with @. For example:

@param pSomething Means something

@returns something else

Any local, global or constant declarations (whether inside a handler on not) are automatically included as attributes. If you have comments after the declaration they are also included. For example:

local lSomething -- Means something

Variables declared outside of handlers are referred to as script local or script global. The value of each constant is also shown as this may often be sufficient for documenting the constant.

For an example have a look at the sweatScriptBrowser stack script .

For scripting style information refer to the Fourth World Scripting Style Guide

For javadoc comment information refer to How To Write Doc Comments For the JavaDoc(TM) Tool

To check for updates to this plugin go to the Sweat Technologies Revolution Developer Secion

Rev Script Documentation Help? cREVGeometryMaster,movehDistance-22Master,scaleRightscaleBottomtrueMastertrueMaster,moveHObjectRefcardMaster,expectedRect 522,13,545,36Master,scalebottomDistanceMaster,movevDistancefalseMaster,moveHObjectSiderightMaster,scaleRightAbsolutefalseMaster,scaleRightfalseMaster,scalerightDistance -0.014749Master,scaleRightObjectRefcardMaster,scaleRightObjectSideRightMaster,cardRanking1Master,scaleleftDistanceMaster,scaletopDistanceMaster,moveHAbsolutetrue Master,moveHtrue cREVGeneralscriptChecksumKU(Ԏa bookmarks revUniqueID 1055330946647 handlerListmouseUpscriptSelection char 14 to 13 prevHandlermouseUp tempScriptscript

on mouseUp

set the htmlText of fld 1 to the cHelp of me

end mouseUp

webheader.png (PNG  IHDR(jlgAMA7tEXtSoftwareAdobe ImageReadyqe<IDATxb?(h h4A h4A ]q` $IJ@r@,23OK# ]@l 241]@A<@B)<3c_ڵoF(,A CS o,M(&J@<_DFF2._|WRm Cl@ --whT[h |$PH2A?\(@Gr@_ Y@lEp);8fƿ ؙ~3p1bcåIp†e"@lh_4= %@<GeDv0v`e`aoqǕ L.d&d# q1\4(1(Q#Nz K4X rg? 0y2i&_@ 3J ~J0x?lca#aWS ? M@)p"$ܡ=~:Ixb n6/И{hP9@?ٱv_@  >yHmPxf2 X9$Fj{6(1\p"j -,10ԋb/OQ| ~af,wuc4AսVFd`(q@%5P5@''h.rhcI0 P1Ns$%H@\X]#@\ P?(k@3v(spȄ8Wa 3p_fX ,oy $ğ^bh20$:~I@J`PLr#e&, " |>{"%F&2rR%B0{DT1## 7@1 H(U> wvvmJw!Sh t`Aa|# 3D1Ln^ +V? @jexK TV,nW Zj VaIM@*q#Ff!GJ*69RJ*P@P@&G $0%1ȳ`pL)aT ~<'\3;B_>(= &gقo`Q&7=޾/ Z:0@*9$T(nŖ''}WƂ&XXׁRV2.FPLB S=26`eÍr _^`, _yZߵV3\fWm`Be*DI)02!Ɖ8#,F(:J.MLD- ~ H ?ZHl88 -AC;K#Ml0tHepɧ me܃aTߠ!'&)}(s7~b8Eh zV 6&%B|`'Vh[%#-5`f0O=h$p0%(@3ed8Ϳ>?dsoq\"EHA T21e 7*p6n:JD L$%)lԑ0v~H,A vPyd|,%:%So G'n HY]+(.Z!^`7`xw:6 +Ҟ10<%O9[g Gj<Og*%W&$0Fj @UXaR}X: $JP9fAX[4 Kdv6 0hŚUԪi>>)F@#0cx!q-_2 /qi?r`'* O 3W20KzCj /\`]0 F *~g 30}['O'A/ 7_RTW[,=|o [>Y 0%%_,AL([p66FK1vVj>fiFb@tz#z+~/0l<!PŒ8AmF UX=6k4'DPg?% ;SMTp]n+;E`@Brtޞ Գ% S)\vg8_IbI0 +>9A:JS 2Pߐޖ .;nZ4x2ˁͅ7j?ֆ(p6us;Uy( TM%⪮ Q _ec] Gw5C5 ͆PupIDӃ(3RBdUH>PG8 rD- r6Ou130Qe`cyp g0| 3*1O0"Li, (~BV@UW"o" X:#-VM#m+eR$B.$u}p1 uQ I1 ^>Uϖ ϊ^ bg@Ms LG3 EЕ@#tHҢ W :]vܰ~RڦĚ[ L@ Dm-Fhg@} :q rѱ U|CV' q32 8`@)TT6hu? kGN0) R2`Yv&c8@P頪<򟙕J ;T . iF7q)h[q?{U#u B-U(VM-\hf>)vqn9 OjV0=j`|Tp*62Ӏ#a6"ufq84T m= d?T A(f"b s!331Z5V"uZ@'8{xlPFf%"Ӂ9{ D`R=<:{qym`q#@Q+'7r e6st:'-` ' DA+f7h@=&֑@|rb3%8z( FQ0@`,a1IENDB` cREVGeneral revUniqueID 1055331642068Index TopStackEpDon mouseUp indexStack the short name of the topStack end mouseUp  h!Rev Script Documentation Example cREVGeometryMaster,movehDistance-199Master,scaleRightscaleBottomtrueMastertrueMaster,moveHObjectRefcardMaster,movevDistancefalseMaster,scalebottomDistanceMaster,expectedRect 305,13,409,36Master,moveHObjectSiderightMaster,scaleRightAbsolutefalseMaster,scaleRightfalseMaster,scalerightDistance -0.216814Master,scaleRightObjectSideRightMaster,scaleRightObjectRefcardMaster,cardRanking1Master,moveHAbsolutetrueMaster,scaletopDistanceMaster,scaleleftDistance Master,moveHtrue cREVGeneralscriptChecksumZZt2eX6xc revUniqueID 1055331696284 bookmarks handlerListmouseUp tempScript prevHandlermouseUpscriptSelection char 56 to 55scriptW

on mouseUp

indexStack the short name of the topStack

end mouseUp

Forwardexon mouseUp enable btn "back" put the cForwardList of this stack into tForward set the cBackList of this stack to line 1 of tForward &cr& the cBackList of this stack if item 1 of line 1 of tForward = "index" then indexStack item 2 of line 1 of tForward else objectDocs item 2 of line 1 of tForward end if delete line 1 of tForward set the cForwardList of this stack to tForward if tForward = "" then disable btn "forward" end mouseUp  

cHelp

Rev Script Documentation 1.0

Developed by Monte Goulding

Copyright © 2003 Sweat Technologies

Rev Script Documentation provides a way for Revolution scripters to incorporate javadoc script comments into object scripts and view them in a graphical format.

LICENSE

You can use this plugin in any way you like, however, you may not modify it, redistribute it or resell it without the author's permission.

INSTALLATION

Save this file into your plugins folder within the Revolution folder. This plugin is compatable with Revolution 2.0 and up only.

USE

To view your javadoc comments using the plugin just select the object whose script you wish to view. For an example have a look at the revDoc stack script . Note that when you see the script icon next to an object reference you can click it to edit the script of the object.

There are a few extra attributes that javadoc doesn't have and far greater flexibility. In this implementation you can use any attribute type, however, some attributes (local, global, temp, param and constant) have special formatting characteristics to handle name, definition pairs.

To write javadoc comments you use a special form of the new "/* */" comments. The opening comment must have at least 2 *s. For Example, "/**" or "/********". It also must start at char 1 of the line in the script editor and be above the handler it relates to. The closing one must be at least "*/" but could be "****/" etc. It must be at the end ot the line (char -2 to -1 must be */).

The main comment or description of the handler is written in htmlText. You don't need to surround it in the p tag because the code already does that. Attributes are written by prefixing the attribute name with @. For example:

@local lSomething Means something

@returns something else

For further examples click on the example button.

For scripting style information refer to the Fourth World Scripting Style Guide

For javadoc comment information refer to How To Write Doc Comments For the JavaDoc(TM) Tool

To check for updates to this plugin go to the Sweat Technologies Revolution Developer Secion

Rev Script Documentation Help> cREVGeometryMaster,movehDistance-267Master,scaleRightscaleBottomtrueMastertrueMaster,moveHObjectRefcardMaster,movevDistancefalseMaster,scalebottomDistanceMaster,expectedRect 277,13,300,36Master,moveHObjectSiderightMaster,scaleRightAbsolutefalseMaster,scaleRightfalseMaster,scalerightDistance -0.376106Master,scaleRightObjectSideRightMaster,scaleRightObjectRefcardMaster,cardRanking1Master,moveHAbsolutetrueMaster,scaletopDistanceMaster,scaleleftDistance Master,moveHtrue cREVGeneralscriptChecksumnd/ukQc revUniqueID 1055936116401 bookmarks handlerListmouseUp tempScript prevHandlermouseUpscriptSelectionchar 315 to 314script-

on mouseUp

enable btn "back"

put the cForwardList of this stack into tForward

set the cBackList of this stack to line 1 of tForward &cr& the cBackList of this stack

if item 1 of line 1 of tForward = "index" then

indexStack item 2 of line 1 of tForward

else

objectDocs item 2 of line 1 of tForward

end if

delete line 1 of tForward

set the cForwardList of this stack to tForward

if tForward = "" then disable btn "forward"

end mouseUp

Backexon mouseUp enable btn "forward" put the cBackList of this stack into tBack set the cForwardList of this stack to line 1 of tBack &cr& the cForwardList of this stack if item 1 of line 1 of tBack = "index" then indexStack item 2 of line 1 of tBack else objectDocs item 2 of line 1 of tBack end if delete line 1 of tBack set the cBackList of this stack to tBack if tBack = "" then disable btn "Back" end mouseUp t 

cHelp

Rev Script Documentation 1.0

Developed by Monte Goulding

Copyright © 2003 Sweat Technologies

Rev Script Documentation provides a way for Revolution scripters to incorporate javadoc script comments into object scripts and view them in a graphical format.

LICENSE

You can use this plugin in any way you like, however, you may not modify it, redistribute it or resell it without the author's permission.

INSTALLATION

Save this file into your plugins folder within the Revolution folder. This plugin is compatable with Revolution 2.0 and up only.

USE

To view your javadoc comments using the plugin just select the object whose script you wish to view. For an example have a look at the revDoc stack script . Note that when you see the script icon next to an object reference you can click it to edit the script of the object.

There are a few extra attributes that javadoc doesn't have and far greater flexibility. In this implementation you can use any attribute type, however, some attributes (local, global, temp, param and constant) have special formatting characteristics to handle name, definition pairs.

To write javadoc comments you use a special form of the new "/* */" comments. The opening comment must have at least 2 *s. For Example, "/**" or "/********". It also must start at char 1 of the line in the script editor and be above the handler it relates to. The closing one must be at least "*/" but could be "****/" etc. It must be at the end ot the line (char -2 to -1 must be */).

The main comment or description of the handler is written in htmlText. You don't need to surround it in the p tag because the code already does that. Attributes are written by prefixing the attribute name with @. For example:

@local lSomething Means something

@returns something else

For further examples click on the example button.

For scripting style information refer to the Fourth World Scripting Style Guide

For javadoc comment information refer to How To Write Doc Comments For the JavaDoc(TM) Tool

To check for updates to this plugin go to the Sweat Technologies Revolution Developer Secion

Rev Script Documentation Help< cREVGeometryMaster,movehDistance-295Master,scaleRightscaleBottomtrueMastertrueMaster,moveHObjectRefcardMaster,expectedRect 249,13,272,36Master,scalebottomDistanceMaster,movevDistancefalseMaster,moveHObjectSiderightMaster,scaleRightAbsolutefalseMaster,scaleRightfalseMaster,scalerightDistance -0.417404Master,scaleRightObjectRefcardMaster,scaleRightObjectSideRightMaster,cardRanking1Master,scaleleftDistanceMaster,scaletopDistanceMaster,moveHAbsolutetrue Master,moveHtrue cREVGeneralscriptChecksumҋg/ bookmarks revUniqueID 1055936118993 handlerListmouseUpscriptSelectionchar 174 to 173 prevHandlermouseUp tempScriptscript

on mouseUp

enable btn "forward"

put the cBackList of this stack into tBack

set the cForwardList of this stack to line 1 of tBack &cr& the cForwardList of this stack

if item 1 of line 1 of tBack = "index" then

indexStack item 2 of line 1 of tBack

else

objectDocs item 2 of line 1 of tBack

end if

delete line 1 of tBack

set the cBackList of this stack to tBack

if tBack = "" then disable btn "Back"

end mouseUp

Field 1 E cREVGeometryMaster,scaleBottomObjectSideBottomMaster,moveVObjectSidebottomMaster,movehDistancefalseMaster,scaleBottomscaleBottomtrueMaster,scaleRightscaleBottomtrueMastertrueMaster,scaleBottomObjectRefcardMaster,moveVObjectRefcardMaster,scaleBottomAbsolutefalseMaster,moveVAbsolutetrueMaster,scaleBottomfalse Master,moveVtrueMaster,movevDistance-13Master,scalebottomDistance -0.003831Master,expectedRect 5,512,74,534Master,scaleRightAbsolutefalseMaster,scaleRightfalseMaster,scalerightDistance -0.890855Master,scaleRightObjectSideRightMaster,scaleRightObjectRefcardMaster,cardRanking1Master,scaletopDistanceMaster,scaleleftDistance cREVGeneral revUniqueID 1055977439703 bookmarks handlerList tempScript prevHandlerscriptSelection char 1 to 0script Search: frontscripts`eHon mouseUp set the dontWrap of fld 1 to the hilite of me end mouseUp Bhfront scripts cREVGeometryMaster,moveVObjectSidebottomMaster,movehDistance -0.825959Master,scaleRightscaleBottomtrueMastertrueMaster,moveVObjectRefcardMaster,moveHObjectRefcardMaster,moveVAbsolutetrue Master,moveVtrueMaster,movevDistance-12Master,scalebottomDistanceMaster,expectedRect66,513,170,536Master,moveHObjectSiderightMaster,scaleRightAbsolutefalseMaster,scaleRightfalseMaster,scalerightDistance -0.749263Master,scaleRightObjectSideRightMaster,scaleRightObjectRefcardMaster,cardRanking1Master,moveHAbsolutefalseMaster,scaletopDistanceMaster,scaleleftDistance Master,moveHfalse cREVGeneralscriptChecksumP@ig ": revUniqueID 1055977474183 bookmarks handlerListmouseUp tempScript prevHandlerscriptSelection char 59 to 58script[

on mouseUp

set the dontWrap of fld 1 to the hilite of me

end mouseUp

 backscripts`eHon mouseUp set the dontWrap of fld 1 to the hilite of me end mouseUp e back scripts cREVGeometryMaster,moveVObjectSidebottomMaster,movehDistance -0.682891Master,scaleRightscaleBottomtrueMastertrueMaster,moveVObjectRefcardMaster,moveHObjectRefcardMaster,moveVAbsolutetrue Master,moveVtrueMaster,expectedRect165,513,266,536Master,scalebottomDistanceMaster,movevDistance-12Master,moveHObjectSiderightMaster,scaleRightAbsolutefalseMaster,scaleRightfalseMaster,scalerightDistance-0.60767Master,scaleRightObjectRefcardMaster,scaleRightObjectSideRightMaster,cardRanking1Master,scaleleftDistanceMaster,scaletopDistanceMaster,moveHAbsolutefalse Master,moveHfalse cREVGeneralscriptChecksumP@ig ": bookmarks revUniqueID 1055977477614 handlerListmouseUpscriptSelection char 59 to 58 prevHandler tempScriptscript[

on mouseUp

set the dontWrap of fld 1 to the hilite of me

end mouseUp

 libraries`eHon mouseUp set the dontWrap of fld 1 to the hilite of me end mouseUp  nlibrary stacks cREVGeometryMaster,moveVObjectSidebottomMaster,movehDistance -0.526549Master,scaleRightscaleBottomtrueMastertrueMaster,moveVObjectRefcardMaster,moveHObjectRefcardMaster,moveVAbsolutetrue Master,moveVtrueMaster,movevDistance-12Master,scalebottomDistanceMaster,expectedRect266,513,376,536Master,moveHObjectSiderightMaster,scaleRightAbsolutefalseMaster,scaleRightfalseMaster,scalerightDistance -0.445428Master,scaleRightObjectSideRightMaster,scaleRightObjectRefcardMaster,cardRanking1Master,moveHAbsolutefalseMaster,scaletopDistanceMaster,scaleleftDistance Master,moveHfalse cREVGeneralscriptChecksumP@ig ": revUniqueID 1055977480389 bookmarks handlerListmouseUp tempScript prevHandlerscriptSelection char 59 to 58script[

on mouseUp

set the dontWrap of fld 1 to the hilite of me

end mouseUp

 Text StyleEpon mouseUp set the xmlTree of fld 1 to false set the xmlText of fld 1 to the cHelp of btn "help" sheet "sweatStyle" end mouseUp  h!Rev Script Documentation Example cREVGeometryMaster,movehDistance-90Master,scaleRightscaleBottomtrueMastertrueMaster,moveHObjectRefcardMaster,expectedRect 413,13,517,36Master,scalebottomDistanceMaster,movevDistancefalseMaster,moveHObjectSiderightMaster,scaleRightAbsolutefalseMaster,scaleRightfalseMaster,scalerightDistance -0.056047Master,scaleRightObjectRefcardMaster,scaleRightObjectSideRightMaster,cardRanking1Master,scaleleftDistanceMaster,scaletopDistanceMaster,moveHAbsolutetrue Master,moveHtrue cREVGeneralscriptChecksum&{:Z-mսRT bookmarks revUniqueID 1056607132371 handlerListmouseUpscriptSelection char 13 to 12 prevHandlermouseUp tempScriptscript

on mouseUp

set the xmlTree of fld 1 to false

set the xmlText of fld 1 to the cHelp of btn "help"

sheet "sweatStyle"

end mouseUp

 sweatStyleQ\ cBackList cForwardList cCurrent Text StyleN WArial U ULucida Grande UArialUArialWArialWArial U Charcoal CY UAmerican Typewriter UCourierUCourierUCourierWCourier WLucida GrandeULucida Grande UTechnoUTechno UVerdanaUVerdana UVerdana WVerdanaUCourierWCourierUVerdanaWVerdana"ULucida Grande"WLucida Grande UTimesUTimesWTimes UOsakaUOsakaWOsaka UMonacoUMonacoWMonacoULucida GrandeWLucida GrandeULucida GrandeWLucida GrandeWVerdana USongUSongWSong USkiaUSkiaWSkia USeoulUSeoulWSeoul U Monaco CYU Monaco CYW Monaco CY U HerculanumU HerculanumW Herculanum UFuturaUFuturaWFutura UDidotUDidotWDidot UBeijingUBeijingWBeijingUAmerican TypewriterWAmerican Typewriter UCochinUCochinWCochin U Gill SansU Gill SansW Gill SansUVerdanaWVerdana U Trebuchet MSU Trebuchet MSW Trebuchet MScREVGeometryCachestackID1021 cREVGeneral bookmarks handlerList tempScript prevHandlerscriptSelection char 1 to 0script P/on escapeKey close this stack end escapeKey \ cREVGeneralscriptChecksum{Y Ґ O bookmarks handlerList escapeKey tempScript prevHandlerscriptSelection char 32 to 31script|

on escapeKey

close this stack

end escapeKey

cREVGeometryCacheIDs105660400356910191056606601534102110566039702001003105660397020110041056603970202100910566039702031010105660397020410111056606354591102010566039702051012105660397020610131056603970207101410566039702081015 99366522687110061056603970209101610566039702101017 993665226872100710566039702111018 9936652268731008cREVGeometrycacheorder1056606601534 total19 example `&/XMLText

Heading 1

 cREVGeneral revUniqueID 1056603970200  Heading 1 @M;; Stylei0Con mouseUp put "" into tStyle if short name of the target is not "plain" then repeat with X=2 to the number of btns of me if the hilite of btn X of me then put the short name of btn x of me & "," after tStyle end repeat delete the last char of tStyle set the hilite of btn "plain" to (tStyle = "") else repeat with X=2 to the number of btns of me set the hilite of btn X of me to false end repeat set the hilite of btn "plain" to true end if put line (the menuHistory of btn "type") of the ctags of btn "type" into tTag set the StyleXMLtextStyle[tTag] of stack "sweatScriptBrowser" to tStyle set the xmlText of fld "example" to the xmlText of fld "example" set the xmlText of fld 1 of stack "sweatScriptBrowser" to the xmlText of fld 1 of stack "sweatScriptBrowser" end mouseUp ' - cREVGeneralscriptChecksumKI彍PWon mouseUp

put "" into tStyle

if short name of the target is not "plain" then

repeat with X=2 to the number of btns of me

if the hilite of btn X of me then put the short name of btn x of me & "," after tStyle

end repeat

delete the last char of tStyle

set the hilite of btn "plain" to (tStyle = "")

else

repeat with X=2 to the number of btns of me

set the hilite of btn X of me to false

end repeat

set the hilite of btn "plain" to true

end if

put line (the menuHistory of btn "type") of the ctags of btn "type" into tTag

set the StyleXMLtextStyle[tTag] of stack "sweatScriptBrowser" to tStyle

set the xmlText of fld "example" to the xmlText of fld "example"

set the xmlText of fld 1 of stack "sweatScriptBrowser" to the xmlText of fld 1 of stack "sweatScriptBrowser"

end mouseUp

plainBE-<cTrue200441cFalse200454 cMultiple201373Plain cREVGeneral revUniqueID 993665226871 bookmarks handlerList tempScript prevHandlerscriptSelection char 1 to 0script boldBEi<cTrue200441cFalse200454 cMultiple201373Bold cREVGeneral bookmarks revUniqueID 993665226871 handlerListscriptSelection char 1 to 0 prevHandler tempScriptscript italicBE8cTrue200442cFalse200455 cMultiple201376Italic cREVGeneral revUniqueID 993665226872  underlineBENcTrue200443cFalse200456 cMultiple201381 Underline cREVGeneral revUniqueID 993665226873 Areaepon mouseUp put line (the menuHistory of btn "type") of the ctags of btn "type" into tTag answer color with (the backgroundColor of fld "color") if it is "" or the result is "cancel" then exit to top set the backgroundColor of fld "color" to it set the StyleXMLcolor[tTag] of stack "sweatScriptBrowser" to it set the xmlText of fld "example" to the xmlText of fld "example" set the xmlText of fld 1 of stack "sweatScriptBrowser" to the xmlText of fld 1 of stack "sweatScriptBrowser" end mouseUp 2Set... cREVGeneralscriptChecksumqU2XvA bookmarks revUniqueID 1056603970202 handlerListmouseUpscriptSelectionchar 311 to 310 prevHandlermouseUp tempScriptscript

on mouseUp

put line (the menuHistory of btn "type") of the ctags of btn "type" into tTag

answer color with (the backgroundColor of fld "color")

if it is "" or the result is "cancel" then exit to top

set the backgroundColor of fld "color" to it

set the StyleXMLcolor[tTag] of stack "sweatScriptBrowser" to it

set the xmlText of fld "example" to the xmlText of fld "example"

set the xmlText of fld 1 of stack "sweatScriptBrowser" to the xmlText of fld 1 of stack "sweatScriptBrowser"

end mouseUp

color `;;#3b1fb0' cDefault0,153,0 cREVGeneral revUniqueID 1056603970203  size+uhon menuPick pWhich put line (the menuHistory of btn "type") of the ctags of btn "type" into tTag set the StyleXMLsize[tTag] of stack "sweatScriptBrowser" to pWhich set the xmlText of fld "example" to the xmlText of fld "example" set the xmlText of fld 1 of stack "sweatScriptBrowser" to the xmlText of fld 1 of stack "sweatScriptBrowser" end menuPick @ revButtonfalsecommandfalse textSize1010 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72  cREVGeneralscriptChecksumYځ9 l-P442U bookmarks revUniqueID 1056603970204 handlerListmenuPickscriptSelectionchar 157 to 156 prevHandlermenuPick tempScriptscript

on menuPick pWhich

put line (the menuHistory of btn "type") of the ctags of btn "type" into tTag

set the StyleXMLsize[tTag] of stack "sweatScriptBrowser" to pWhich

set the xmlText of fld "example" to the xmlText of fld "example"

set the xmlText of fld 1 of stack "sweatScriptBrowser" to the xmlText of fld 1 of stack "sweatScriptBrowser"

end menuPick

Font+} on menuPick pWhich put line (the menuHistory of btn "type") of the ctags of btn "type" into tTag put fontSizes(pWhich) into tSizes if tSizes = 0 then put the cSizes of me into tSizes put tSizes into btn "Size" set the StyleXMLface[tTag] of stack "sweatScriptBrowser" to pWhich set the xmlText of fld "example" to the xmlText of fld "example" set the xmlText of fld 1 of stack "sweatScriptBrowser" to the xmlText of fld 1 of stack "sweatScriptBrowser" end menuPick on mouseDown put the fontNames into me end mouseDown ycSizes(8 10 12 14 16 18 22 24 26 28 30 32 34 36 textFont Trebuchet MSMApple LiGothic Medium AppleGothic Courier Courier CE Geneva Geneva CE Hei Helvetica Helvetica CE Lucida Grande Monaco Monaco CE Osaka Osaka| Symbol Times Times CE Zapf Dingbats qMmS Pro W4 qMm Pro W3 qMm Pro W6 qMmpS Pro W3 qMmpS Pro W6 qMmpS Std W8   # #ϵۿA #PC̡ # American Typewriter American Typewriter Condensed American Typewriter Light American Typewriter Condensed Light Apple LiSung Light AppleMyungjo Arial Arial Black Arial Narrow Arial Rounded MT Bold Baskerville Baskerville Semibold Beijing BiauKai Big Caslon Brush Script MT Charcoal CY Cochin Comic Sans MS Copperplate Copperplate Light Courier New Didot Fang Song Futura Futura Condensed Geneva CY Georgia Gill Sans Gill Sans Light Helvetica CY Helvetica Neue Helvetica Neue Bold Condensed Helvetica Neue UltraLight Helvetica Neue Light Helvetica Neue Black Condensed Herculanum Kai Marker Felt Monaco CY Optima Optima ExtraBlack Papyrus Seoul Skia Song Taipei Times New Roman Times CY Trebuchet MS Verdana Webdings Zapfino  Andale Mono Apple Chancery Aristocrat LET Bertram LET Bickley Script LET BlairMdITC TT-Medium Bodoni Ornaments ITC TT Bodoni SvtyTwo ITC TT-BookIta Bodoni SvtyTwo ITC TT-Book Bodoni SvtyTwo ITC TT-Bold Bodoni SvtyTwo OS ITC TT-Book Bodoni SvtyTwo OS ITC TT-Bold Bodoni SvtyTwo OS ITC TT-BookIt Bordeaux Roman Bold LET Bradley Hand ITC TT-Bold Capitals Century Gothic Charcoal Chicago Copperplate Gothic Bold Copperplate Gothic Light Curlz MT Edwardian Script ITC MT Extra Gadget Hoefler Text Hoefler Text Ornaments Humana Serif ITC TT-MedIta Humana Serif ITC TT-Light Humana Serif ITC TT-LightIta Humana Serif ITC TT-Medium Impact Jokerman LET Lucida Handwriting LunaITC TT-Bold Machine ITC TT Mona Lisa Solid ITC TT Monotype Sorts New York Palatino Party LET PortagoITC TT Sand Stone Sans ITC TT-Bold Stone Sans ITC TT-SemiIta Stone Sans ITC TT-Semi Stone Sans OS ITC TT-Bold Stone Sans OS ITCTT-SemiIta Stone Sans OS ITC TT-Semi Stone Sans SC ITC TT-Semi Tahoma Techno Textile TremorITC TT VT100 Wanted LET WingdingsP cREVGeneralscriptChecksum V{㸲d9{A bookmarks revUniqueID 1056603970205 handlerListmenuPick mouseDownscriptSelectionchar 535 to 534 prevHandlermenuPick tempScriptscript

on menuPick pWhich

put line (the menuHistory of btn "type") of the ctags of btn "type" into tTag

put fontSizes(pWhich) into tSizes

if tSizes = 0 then put the cSizes of me into tSizes

put tSizes into btn "Size"

set the StyleXMLface[tTag] of stack "sweatScriptBrowser" to pWhich

set the xmlText of fld "example" to the xmlText of fld "example"

set the xmlText of fld 1 of stack "sweatScriptBrowser" to the xmlText of fld 1 of stack "sweatScriptBrowser"

end menuPick

on mouseDown

put the fontNames into me

end mouseDown

revlabel textSize %~ textSize cREVGeneral revUniqueID 1056603970206 Example revlabel textSize k textSize cREVGeneral revUniqueID 1056603970207 Colortype+}on menuPick put line the menuHistory of me of the cTags of me into tTag set the xmlText of fld "example" to "<"&tTag&">"&the label of me&"" put the StyleXML[tTag] of stack "sweatScriptBrowser" into tStyle put item 1 of line 1 of tStyle into tFace set the itemDel to tab repeat for each item tItem in tFace if tItem is among the lines of the fontNames then set the label of btn "font" to tItem exit repeat end if end repeat set the itemDel to comma set the label of btn "size" to item 2 of line 1 of tStyle set the backgroundColor of fld "color" to item 3 of line 1 of tStyle put line 2 of tStyle into tText repeat with x=1 to the number of btns of group "style" set the hilite of btn x of group "style" to false end repeat repeat for each item tItem in tText switch tItem case "b" put "bold" into tItem break case "i" put "italic" into tItem break case "u" put "underline" into tItem break end switch if there is a btn tItem of group "Style" then set the hilite of btn tItem of group "Style" to true end if end repeat end menuPick Yh1 h2 h3 labelcTagsh1 h2 h3 strong Heading 1$Heading 1 Heading 2 Heading 3 Label cREVGeneralscriptChecksumΒCl ^:on menuPick

put line the menuHistory of me of the cTags of me into tTag

set the xmlText of fld "example" to "<"&tTag&">"&the label of me&"</"&tTag&">"

put the StyleXML[tTag] of stack "sweatScriptBrowser" into tStyle

put item 1 of line 1 of tStyle into tFace

set the itemDel to tab

repeat for each item tItem in tFace

if tItem is among the lines of the fontNames then

set the label of btn "font" to tItem

exit repeat

end if

end repeat

set the itemDel to comma

set the label of btn "size" to item 2 of line 1 of tStyle

set the backgroundColor of fld "color" to item 3 of line 1 of tStyle

put line 2 of tStyle into tText

repeat with x=1 to the number of btns of group "style"

set the hilite of btn x of group "style" to false

end repeat

repeat for each item tItem in tText

switch tItem

case "b"

put "bold" into tItem

break

case "i"

put "italic" into tItem

break

case "u"

put "underline" into tItem

break

end switch

if there is a btn tItem of group "Style" then

set the hilite of btn tItem of group "Style" to true

end if

end repeat

end menuPick

revlabel textFont w; textFont cREVGeneral revUniqueID 1056603970209 Font revlabel textSize ; textSize cREVGeneral revUniqueID 1056603970210 Size revlabel textFont [; textFont cREVGeneral revUniqueID 1056603970211 Type Field 1 $2 cREVGeneral revUniqueID 1056604003569 vTo use this feature you need to have libXMLText in use. You can download it from http://www.sweattechnologies.com/revCloseEp+on mouseUp close this stack end mouseUp #yS cREVGeneralscriptChecksume0e-+ Pb revUniqueID 1056606354591 bookmarks handlerListmouseUp tempScript prevHandlerscriptSelection char 30 to 29scriptx

on mouseUp

close this stack

end mouseUp

Don't wrap the browser text`Efon mouseUp set the dontWrap of fld 1 of stack "sweatScriptBrowser" to the hilite of me end mouseUp *T cREVGeometryMaster,movehDistance-195Master,scaleRightscaleBottomtrueMastertrueMaster,moveHObjectRefcardMaster,movevDistancefalseMaster,scalebottomDistanceMaster,expectedRect 544,14,634,37Master,moveHObjectSiderightMaster,scaleRightAbsolutefalseMaster,scaleRightfalseMaster,scalerightDistance -0.244253Master,scaleRightObjectSideRightMaster,scaleRightObjectRefcardMaster,cardRanking1Master,moveHAbsolutetrueMaster,scaletopDistanceMaster,scaleleftDistance Master,moveHtrue cREVGeneralscriptChecksum|бdO7TI revUniqueID 1056606601534 bookmarks handlerListmouseUp tempScript prevHandlermouseUpscriptSelection char 58 to 57script

on mouseUp

set the dontWrap of fld 1 of stack "sweatScriptBrowser" to the hilite of me

end mouseUp