• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: mark added object in NSArrayController as "dirty"?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: mark added object in NSArrayController as "dirty"?


  • Subject: Re: mark added object in NSArrayController as "dirty"?
  • From: Matt Neuburg <email@hidden>
  • Date: Thu, 28 Aug 2008 10:37:45 -0700
  • Thread-topic: mark added object in NSArrayController as "dirty"?

On Thu, 28 Aug 2008 08:47:10 -0600, Keary Suska <email@hidden>
said:
>8/27/08 6:46 PM, also sprach email@hidden:
>
>> I've got a simple detail view backed by an NSArrayController. The view views
>> the NSArrayController's selection. The NSArrayController manages an array of
>> dictionaries, all very simple.
>>
>> I've implemented validateValue:... and it's being called when I want it to
>> be (thanks to "validates immediately"), except on this one occasion:
>>
>> The user can create a new object - the button calls add:, and I've
>> overridden newObject:. However, this new object is deliberately invalid;
>> some fields are blank, but the user must fill them in before leaving and
>> moving to another selection. That's the intention, anyway. The problem is
>> that that is not happening; the user can press the selectPrevious: button
>> without doing any editing, and no validation takes place. Obviously that's
>> because the user didn't do any editing!
>>
>> How can I fool the system into thinking the user has done some editing in
>> every field, so that when the user leaves this selection for another, every
>> field will be validated? m.
>
>AFAIK, you can't. And, AFAIK, simply entering a field is enough to trigger
>editing, so if you set the first blank field as as first responder,
>validation should be called on end editing. But just for that field,
>unfortunately.

Thanks (and your answer was extremely useful and confirmed my own further
experiments), but the problem is that I'm not even getting that. That would
be a reduced version of what I'd like to do, i.e. it would help me if I
could just fool the system into thinking that the user has edited any field
at all. Being *in* a field is not enough to do this; you have to *change*
the field. But I need to do this in a way that makes the system think the
*user* changed the field...

m.

--
matt neuburg, phd = email@hidden, <http://www.tidbits.com/matt/>
A fool + a tool + an autorelease pool = cool!
One of the 2007 MacTech Top 25: <http://tinyurl.com/2rh4pf>
AppleScript: the Definitive Guide - Second Edition!
<http://www.amazon.com/gp/product/0596102119>



_______________________________________________

Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden

  • Follow-Ups:
    • Re: mark added object in NSArrayController as "dirty"?
      • From: Quincey Morris <email@hidden>
    • Re: mark added object in NSArrayController as "dirty"?
      • From: Keary Suska <email@hidden>
  • Prev by Date: Re: Quitting all active applications
  • Next by Date: Re: Quitting all active applications
  • Previous by thread: Re: mark added object in NSArrayController as "dirty"?
  • Next by thread: Re: mark added object in NSArrayController as "dirty"?
  • Index(es):
    • Date
    • Thread