2008年4月10日木曜日

NSTokenFieldのdelegate methodあれこれ.

- (void)setObjectValue:(id)nsarray

任意オブジェクト(下記のrepresentedObjectに当たるもの)をtokenで表示したいときにnsarrayに詰め込んで設定してみる.(これdelegate methodでないやw.)

- (NSString*)tokenField:(NSTokenField*)tokenField displayStringForRepresentedObject:(id)representedObject;

任意オブジェクト(representedObject)の値を表示する際にはこれの戻り値の文字列を定義してあげる.

- (void)tokenField:(NSTokenField *)tokenField writeRepresentedObjects:(NSArray *)objects toPasteboard:(NSPasteboard *)pboard;

Dragした際の処理はここ.(対象がNSCopyingを実装しない場合とか)
[pboard setString:data forType:pasteKey];

とかするとpasteKeyというキーでdataをdrop先で受け取れる.(setData:nsdata とかもある)

- (NSArray*)tokenField:(NSTokenField*)tokenField readFromPasteboard:(NSPasteboard*)pboard;

Dropした際の処理はここ.(対象がNSCopyingを実装しない場合とか)
NSString* data= [pboard stringForType:pasteKey];

とかするとdrag元でpasteKeyで設定したdataを受け取れる. (dataForType:とかもあったはず)


選択やその内容(範囲)を取得するのはヘチマBLOGさんのここ
感謝.

0 件のコメント: