From Cedric Pinson, "Here a patch to be able to clone stateattribute, in order to do that i

moved the StateAttribute::Callback structure to a file
StateAttributeCallback with the same behavior as NodeCallback.
"
This commit is contained in:
Robert Osfield
2009-10-22 10:33:16 +00:00
parent 8efd251b10
commit 2d38e187fd
10 changed files with 51 additions and 37 deletions

View File

@@ -29,12 +29,12 @@ bool StateAttribute_readLocalData(Object& obj, Input& fr)
bool iteratorAdvanced = false;
StateAttribute& stateAttribute = static_cast<StateAttribute&>(obj);
static ref_ptr<StateAttribute::Callback> s_callback = new osg::StateAttribute::Callback;
static ref_ptr<StateAttributeCallback> s_callback = new osg::StateAttributeCallback;
while (fr.matchSequence("UpdateCallback {"))
{
//int entry = fr[0].getNoNestedBrackets();
fr += 2;
StateAttribute::Callback* callback = dynamic_cast<StateAttribute::Callback*>(fr.readObjectOfType(*s_callback));
StateAttributeCallback* callback = dynamic_cast<StateAttributeCallback*>(fr.readObjectOfType(*s_callback));
if (callback) {
stateAttribute.setUpdateCallback(callback);
}
@@ -45,7 +45,7 @@ bool StateAttribute_readLocalData(Object& obj, Input& fr)
{
//int entry = fr[0].getNoNestedBrackets();
fr += 2;
StateAttribute::Callback* callback = dynamic_cast<StateAttribute::Callback*>(fr.readObjectOfType(*s_callback));
StateAttributeCallback* callback = dynamic_cast<StateAttributeCallback*>(fr.readObjectOfType(*s_callback));
if (callback) {
stateAttribute.setEventCallback(callback);
}