Steven,

Thanks - the project needed a revisit...it grew from 2 checkboxes to nearly 
40...time to re-examine a few things!

Thanks again for the tip....so deep into the forest I could not see the trees...

-j

On Feb 27, 2010, at 1:23 PM, Steven Degutis wrote:

> First of all, you may want to look into NSMatrix to accomplish this task 
> instead of using individual NSButtons, both for performance reasons and (more 
> importantly) to use the Cocoa API as it is intended (this is why NSMatrix was 
> created, so it handles this relatively well).
> 
> Secondly, if you use NSMatrix, or even NSTableView (which may be a better 
> layout in this case), you can populate the items programmatically. Thus, you 
> can have an array of model objects representing the data, with properties 
> such as "userVisibleTitle" and "representedCommandLineOptionString" or 
> something to that effect (and possibly an ID property too if need be, but 
> probably not). Then you could supply these to the views rather easily, and 
> readily fetch and display any property for a given object. Read more about 
> this in the MVC section of Apple's docs.
> 
> Also, regarding your feature to toggle the display between power users and 
> "normal users", there's a few options. You could do this via tooltips, or you 
> could have an option to choose to display the "normal" titles versus the 
> command line options. But keep in mind, power users will probably prefer the 
> command line anyway, usually. So I wouldn't put too much thought into this.
> 
> -Steven
> 
> On Sat, Feb 27, 2010 at 8:46 AM, Jeremy Matthews <jeremymatth...@mac.com> 
> wrote:
> So I have a application that I am getting ready to put some finishing touches 
> on, but there are one or two things I'd like to do differently...er, better.
> 
> It is a simple tool (Cocoa Desktop app) with a slew of checkboxes (around 40 
> in a separate window) that act as parameters on a command. While I show the 
> user-friendly wording "yard work", behind the scenes I actually use 
> parameters like "-lawngeneral" (if that checkbox is selected it does a check 
> and provides the internal naming scheme when it builds the full command). 
> Since the latter are part of the internal logic (and affect other systems), 
> they cannot be changed at this time. But, I would like to be able to give 
> those nsbuttons a second property that does not change depending on selection 
> (so, alternateTitle would not work), just to make life easier when 
> referencing said items. In NSMenu land, someone mentioned using 
> setRepresentedItems, which worked great in my needs there...is there a 
> similar feature for NSButton (specifically checkboxes)?
> 
> Also, it would be nice if I could intercept an nsevent that changed their 
> text from the user-friendly version to the internal logic titles - if only 
> for some better understanding by power users (like, holding down the option 
> key at any point in time). I've mucked around with some examples, but it 
> seems like most depend on a a specific method and not silently observing in 
> the background, like clicking on a button.
> 
> How would you handle the first request, create a dictionary, or is there 
> another method I missed?
> And the second, I'm not even sure..
> 
> Any ideas?
> 
> _______________________________________________
> 
> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)
> 
> 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:
> http://lists.apple.com/mailman/options/cocoa-dev/steven.degutis%40gmail.com
> 
> This email sent to steven.degu...@gmail.com
> 
> 
> 
> -- 
> Steven Degutis
> http://www.thoughtfultree.com/
> http://www.degutis.org/

_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to