2012-01-29 6 views
7

Ho un semplice NSTableView collegato tramite NSArrayController e binding al mio modello. Mi piacerebbe modificare leggermente il comportamento della vista quando si fa doppio clic per modificare. Sembra che il comportamento predefinito per quando il doppio clic modifica una cella è quello di aprire la cella solo per la modifica quando il clic avviene sulla posizione del testo all'interno della cella (vedi sotto).NSTableVisualizza come fare clic in qualsiasi punto della cella per modificare il testo?

Vorrei modificare il comportamento in modo che un doppio clic su in qualsiasi punto nella cella causi la modifica (il caso verde nell'immagine seguente). Qualche idea? Forse stavo cercando i termini sbagliati ma non sono riuscito a trovare nulla là fuori a riguardo.

enter image description here

risposta

2

sottoclasse NSTextFieldCell e sovrascrivere -hitTestForEvent: inRect: ofView: per tornare NSCellHitEditableTextArea indipendentemente da dove si è verificato il clic del mouse.