I am trying to save whole script objects in user defaults and it’s registering zero count …
property gRecentFiles : {}
on MakeNewFile(itsName)
script
property theName : itsName
property otherParms : true or false
on func1(value)
set otherParms to value
end func1
on func2()
return otherParms
end getStopped
end script
end MakeNewFile
on will finish launching theObject
tell user defaults
make new default entry at end of default entries with properties {name:"recentFiles", contents:gRecentFiles}
register
end tell
tell user defaults to set gRecentFiles to contents of default entry "recentFiles" as list
end will finish launching
on will quit theObject
tell user defaults to set contents of default entry "recentFiles" to gRecentFiles
end will quit
-- elsewhere ..
set theFile to MakeNewFile(theNewName)
copy theFile to the beginning of gRecentFiles
If I do not place a list of script objects in the list gRecentFiles, for example, strings or booleans, everything works completely; however, if each list item is a script object, with quitting the count of gRecentFiles is 2 (as it should be, for example) … and then upon a fresh launch, the count of gRecentFiles is always zero.
Am I allowed to place script objects in user defaults, or am I limited to simple parameters, such as a string or a boolean?