[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug #36967] Manual Key Value Observing Not Using Passed Objects
From: |
Robin |
Subject: |
[bug #36967] Manual Key Value Observing Not Using Passed Objects |
Date: |
Thu, 02 Aug 2012 20:20:58 +0000 |
User-agent: |
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:14.0) Gecko/20100101 Firefox/14.0.1 |
Follow-up Comment #2, bug #36967 (project gnustep):
Hi Richard, I realise that my original posting was a bit short on details so I
have put together a short program (attached) to show the behaviour under OSX
Lion when posting manual kvo notifications.
Here's the output under OSX. I can also compare with your modifications under
Linux when I get a chance.
However the first thing I notice is that the OSX implementation does seem to
query the keyPath property for the willChangeValueForKey: but then uses the
passed object for doing whatever set delta operation you specify.
Output on OSX is :
2012-08-02 22:17:13.724 kvohow[4207:303] >>DataClass setValue '(null)' now
renamed to 'initial value'
2012-08-02 22:17:13.727 kvohow[4207:303] >>DataClass setValue 'initial value'
now renamed to 'changed value'
2012-08-02 22:17:13.729 kvohow[4207:303] >>DataClass 'value' property has been
queried.
2012-08-02 22:17:13.817 kvohow[4207:303] Observer: keyPath 'value' change '{
kind = 1;
notificationIsPrior = 1;
old = "changed value";
}'
2012-08-02 22:17:13.818 kvohow[4207:303] >>DataClass setValue 'changed value'
now renamed to 'observed value'
2012-08-02 22:17:13.819 kvohow[4207:303] >>DataClass 'value' property has been
queried.
2012-08-02 22:17:13.820 kvohow[4207:303] Observer: keyPath 'value' change '{
kind = 1;
new = "observed value";
old = "changed value";
}'
2012-08-02 22:17:13.822 kvohow[4207:303] -- Manual Notifications --
2012-08-02 22:17:13.823 kvohow[4207:303] ** addToSet - willChangeValueForKey
2012-08-02 22:17:13.824 kvohow[4207:303] >>DataClass 'data' property has been
queried.
2012-08-02 22:17:13.825 kvohow[4207:303] Observer: keyPath 'data' change '{
kind = 2;
new = "{(n "A New Object"n)}";
notificationIsPrior = 1;
}'
2012-08-02 22:17:13.826 kvohow[4207:303] ** addToSet - didChangeValueForKey
2012-08-02 22:17:13.827 kvohow[4207:303] Observer: keyPath 'data' change '{
kind = 2;
new = "{(n "A New Object"n)}";
}'
2012-08-02 22:17:13.828 kvohow[4207:303] ** addToSet COMPLETE
****************
2012-08-02 22:17:13.829 kvohow[4207:303] ** replaceInSet -
willChangeValueForKey
2012-08-02 22:17:13.830 kvohow[4207:303] >>DataClass 'data' property has been
queried.
2012-08-02 22:17:13.831 kvohow[4207:303] Observer: keyPath 'data' change '{
kind = 3;
notificationIsPrior = 1;
old = "{(n "A New Object"n)}";
}'
2012-08-02 22:17:13.832 kvohow[4207:303] ** replaceInSet -
didChangeValueForKey
2012-08-02 22:17:13.832 kvohow[4207:303] Observer: keyPath 'data' change '{
kind = 3;
old = "{(n "A New Object"n)}";
}'
2012-08-02 22:17:13.833 kvohow[4207:303] ** replaceInSet COMPLETE
****************
2012-08-02 22:17:13.834 kvohow[4207:303] ** removeFromSet -
willChangeValueForKey
2012-08-02 22:17:13.835 kvohow[4207:303] >>DataClass 'data' property has been
queried.
2012-08-02 22:17:13.835 kvohow[4207:303] Observer: keyPath 'data' change '{
kind = 3;
notificationIsPrior = 1;
old = "{(n "Something else"n)}";
}'
2012-08-02 22:17:13.836 kvohow[4207:303] ** removeFromSet -
didChangeValueForKey
2012-08-02 22:17:13.837 kvohow[4207:303] Observer: keyPath 'data' change '{
kind = 3;
old = "{(n "Something else"n)}";
}'
2012-08-02 22:17:13.838 kvohow[4207:303] ** removeFromSet COMPLETE
****************
Rgds,
Robin
(file #26308)
_______________________________________________________
Additional Item Attachment:
File name: main.m Size:4 KB
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?36967>
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [bug #36967] Manual Key Value Observing Not Using Passed Objects,
Robin <=