[Mac] NSArrayController に Undo/Redo を実装する [6] ソート指定のUndo/Redo

2011年1月4日火曜日 | Published in | 0 コメント

このエントリーをはてなブックマークに追加

[前回] Cocoaの日々: [Mac] NSArrayController に Undo/Redo を実装する [5] 選択のUndo/Redo

次はソートの Undo/Redo。


ソートの Undo/Redo


NSTableView でカラムヘッダをクリックするとソート処理が行われる。この時に setSortDescriptors: が呼ばれるのでこれをオーバーライドしてやればいい。
- (void)setSortDescriptors:(NSArray *)sortDescriptors
{
    [[self.undoManagerprepareWithInvocationTarget:self]
        setSortDescriptors:[selfsortDescriptors]];
    [supersetSortDescriptors:sortDescriptors];
}

できた。図じゃわかりずらいが。

ソースコード


GitHubからどうぞ。

ArrayControllerUndoSample at 2011-01-04 from xcatsan/MacOSX-Sample-Code - GitHub

Responses

Leave a Response

人気の投稿(過去 30日間)