Dispatch an event when config values change.

git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4603 542714f4-19e9-0310-aa3c-eee0fc999fb1
This commit is contained in:
Ray Greenwell
2007-02-26 20:11:40 +00:00
parent 09f0bee0f3
commit aedd77c17c
2 changed files with 39 additions and 1 deletions
+5 -1
View File
@@ -22,11 +22,12 @@
package com.threerings.util {
import flash.events.NetStatusEvent;
import flash.events.EventDispatcher;
import flash.net.SharedObject;
import flash.net.SharedObjectFlushStatus;
public class Config
public class Config extends EventDispatcher
{
/**
* Constructs a new config object which will obtain configuration
@@ -53,6 +54,9 @@ public class Config
{
_so.data[name] = value;
_so.flush(); // flushing is not strictly necessary
// dispatch an event corresponding
dispatchEvent(new ConfigValueSetEvent(name, value));
}
/**
@@ -0,0 +1,34 @@
package com.threerings.util {
import flash.events.Event;
/**
* Dispatched whenever a config value is changed.
*/
public class ConfigValueSetEvent extends Event
{
/** The type of a ConfigValueSetEvent. */
public static const TYPE :String = "ConfigValSet";
/** The name of the config value set. */
public var name :String;
/** The new value. */
public var value :Object;
/**
*/
public function ConfigValueSetEvent (name :String, value :Object)
{
super(TYPE);
this.name = name;
this.value = value;
}
override public function clone () :Event
{
return new ConfigValueSetEvent(name, value);
}
}
}