EasyManua.ls Logo

MACROMEDIA FLASH MX 2004 - ACTIONSCRIPT - Page 621

MACROMEDIA FLASH MX 2004 - ACTIONSCRIPT
816 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
SharedObject.flush() 621
If this method returns "pending", the Flash Player displays a dialog box asking the user to
increase the amount of disk space available to objects from this domain. To allow space for the
shared object to “grow” when it is saved in the future, thus avoiding return values of
"pending",
pass a value for
minimumDiskSpace. When Flash tries to write the file, it looks for the number of
bytes passed to
minimumDiskSpace, instead of looking for just enough space to save the shared
object at its current size.
For example, if you expect a shared object to grow to a maximum size of 500 bytes, even though
it may start out much smaller, pass 500 for
minimumDiskSpace. If Flash asks the user to allot disk
space for the shared object, it will ask for 500 bytes. After the user allots the requested amount of
space, Flash wont have to ask for more space on future attempts to flush the object (as long as its
size doesnt exceed 500 bytes).
After the user responds to the dialog box, this method is called again and returns either
true or
false; also, SharedObject.onStatus is invoked with a code property of
SharedObject.Flush.Success or SharedObject.Flush.Failed.
For more information, see “Local disk space considerations” on page 617.
Example
The following function gets a shared object, SO, and fills writable properties with user-provided
settings. Finally,
flush() is called to save the settings and allot a minimum of 1000 bytes of
disk space.
this.SyncSettingsCore=function(soname, override, settings)
{
var SO=SharedObject.getLocal(soname, "http://www.mydomain.com/app/sys");
// settings list index
var i;
// For each specified value in settings:
// If override is true, set the persistent setting to the provided value.
// If override is false, fetch the persistent setting, unless there
// isn't one, in which case, set it to the provided value.
for (i in settings) {
if (override || (SO.data[i] == null)) {
SO.data[i]= settings[i];
} else {
settings[i]= SO.data[i];
}
}
SO.flush(1000);
}

Table of Contents

Related product manuals