home *** CD-ROM | disk | FTP | other *** search
- global gPrefsFile, gPrefSettings, gExternalParams
-
- on makePref prefName, prefData
- if voidp(gPrefSettings) then
- set gPrefSettings to [:]
- end if
- setaProp(gPrefSettings, prefName, prefData)
- debug(string(gPrefSettings))
- end
-
- on deletePref prefName
- deleteProp(gPrefSettings, prefName)
- end
-
- on writePrefs prefsFile
- if (the movieName contains ".dcr") and listp(gPrefSettings) then
- if voidp(prefsFile) then
- if voidp(gPrefsFile) then
- set gPrefsFile to "DXM.txt"
- end if
- set prefsFile to gPrefsFile
- end if
- set prefData to "--Shockwave User Preferences File" & RETURN & RETURN
- repeat with i = 1 to count(gPrefSettings)
- set prefName to getPropAt(gPrefSettings, i)
- set prefSetting to getProp(gPrefSettings, prefName)
- set prefData to prefData & prefName & "=" & prefSetting & RETURN
- end repeat
- setPref(prefsFile, prefData)
- debug("writing preferences: " & prefData)
- end if
- end
-
- on readPrefs prefsFile, debugArg
- if voidp(prefsFile) then
- if not gPrefsFile then
- set gPrefsFile to "DXM.txt"
- end if
- set prefsFile to gPrefsFile
- end if
- if voidp(gPrefSettings) then
- if voidp(debugArg) then
- set gPrefSettings to [:]
- end if
- if not (the movieName contains ".dcr") then
- exit
- end if
- set prefsText to getPref(prefsFile)
- else
- set prefsText to debugArg
- end if
- set oldDelim to the itemDelimiter
- set the itemDelimiter to "="
- if not voidp(prefsText) then
- repeat with i = 1 to the number of lines in prefsText
- if (the number of items in line i of prefsText > 1) and not (line i of prefsText starts "--") then
- set prefName to item 1 of line i of prefsText
- repeat with j = the number of chars in prefName down to 1
- if char j of prefName = numToChar(32) then
- delete char j of prefName
- end if
- end repeat
- set prefData to item 2 to the number of items in line i of prefsText of line i of prefsText
- repeat with k = 1 to the number of chars in prefData
- if char 1 of prefData <> numToChar(32) then
- exit repeat
- end if
- delete char 1 of prefData
- end repeat
- if not voidp(integer(prefData)) then
- set prefData to integer(prefData)
- end if
- makePref(prefName, prefData)
- end if
- end repeat
- end if
- end
-
- on readExternalParams
- if not (the movieName contains ".dcr") then
- exit
- end if
- set pCount to externalParamCount()
- if pCount then
- if voidp(gExternalParams) then
- set gExternalParams to [:]
- end if
- repeat with i = 1 to pCount
- set pName to externalParamName(i)
- set pData to externalParamValue(i)
- setaProp(gExternalParams, pName, pData)
- end repeat
- debug(string(gExternalParams), "paramData")
- end if
- end
-