Le Dec 9, 2008 à 12:40 AM, Volker in Lists a écrit :

Hi,

you should be able to detect a double click and call a method then that either temporarily allows the selection or directly starts the edit mode. I do have a similar setup - don't do editing, but I use the double click action via bindings to attach notes to such an unselectable item.


This approach may work, but it will give some undesired UI; this app would the only be editable on double clicking, while other apps edit on single-click (ala Leopard NSTableView and Finder).

You want to use this delegate method:

/*  Optional - Custom tracking support
It is possible to control the ability to track a cell or not. Normally, only selectable or selected cells can be tracked. If you implement this method, cells which are not selectable or selected can be tracked, and vice-versa. For instance, this allows you to have an NSButtonCell in a table which does not change the selection, but can still be clicked on and tracked.
*/
- (BOOL)tableView:(NSTableView *)tableView shouldTrackCell:(NSCell *) cell forTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row AVAILABLE_MAC_OS_X_VERSION_10_5_AND_LATER;


Return YES for your cell, and it should be trackable, and hence editable...

corbin



Hth,
volker

Am 09.12.2008 um 06:55 schrieb Graham Cox:

In my NSOutlineView, I disallow selection of group items by implementing the delegate method -outlineView:shouldSelectItem:, which works fine, but I still want to be able to edit the titles of group items. The above method prevents this also.

How can I prevent selection of the the item but still allow editing of its title string?


tia,

_______________________________________________

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 [EMAIL PROTECTED]

Reply via email to