Changeset 161 for branches/turbo/avango-core/src/avango/nodes/tests/TestFieldConnectionChangeInNotify.cpp
- Timestamp:
- 05/15/09 17:33:25 (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/turbo/avango-core/src/avango/nodes/tests/TestFieldConnectionChangeInNotify.cpp
r155 r161 43 43 public: 44 44 45 MyObject(); 46 void valueChanged(const av::SFInt::ChangedEvent event); 45 MyObject() {} 46 MyObject(av::Field* field); 47 void fieldHasChanged(const av::Field& field); 47 48 49 private: 50 av::Field* mOtherField; 48 51 }; 49 52 … … 59 62 } 60 63 61 MyObject::MyObject() 64 MyObject::MyObject(av::Field* field) : 65 mOtherField(field) 62 66 { 63 Value.addChangedCallback(boost::bind(&MyObject::valueChanged, this, _1));64 67 } 65 68 66 void MyObject:: valueChanged(const av::SFInt::ChangedEvent event)69 void MyObject::fieldHasChanged(const av::Field& field) 67 70 { 68 if ( event.getTriggeredFromField() &&Value.getValue() == 1)71 if (Value.getValue() == 1) 69 72 { 70 73 AVANGO_LOG(logger,av::logging::INFO , "fieldHasChanged: disconnecting from source field"); 71 74 Value.enableNotify(false); 72 Value.disconnectFrom( event.getTriggeredFromField());75 Value.disconnectFrom(mOtherField); 73 76 Value.enableNotify(true); 74 77 } 75 if ( event.getTriggeredFromField() &&Value.getValue() == 3)78 if (Value.getValue() == 3) 76 79 { 77 80 AVANGO_LOG(logger,av::logging::INFO , "fieldHasChanged: disconnecting all fields from source field"); 78 81 Value.enableNotify(false); 79 event.getTriggeredFromField()->disconnectAuditors();82 mOtherField->disconnectAuditors(); 80 83 Value.enableNotify(true); 81 84 } … … 87 90 88 91 av::Link<av::IntObject> src(new av::IntObject); 89 av::Link<MyObject> dst1(new MyObject );92 av::Link<MyObject> dst1(new MyObject(&src->Value)); 90 93 av::Link<av::IntObject> dst2(new av::IntObject); 91 94
Note: See TracChangeset
for help on using the changeset viewer.
