ヒレガス本 15章 課題

削除しないが昇給なし(Keep, but no raise)ボタンを追加しろとの事。

これも簡単、KVCで行うと、NSArrayに含まれる全てのオブジェクトのプロパティーにアクセス出来る。 Controller経由でArrayを取得する事で、Undo/Redoにも対応してる。

- (IBAction) KeepButNoRaise:(id)sender
{
    NSArray* theSelectedPeople = [employeeController selectedObjects];

    [theSelectedPeople setValue:[NSNumber numberWithFloat:0.0]
                     forKeyPath:@"expectedRaise"];
}

後は、ボタンのenable/disableはbindingで選択された行数で判定。

../../../_images/binding.png

プロジェクトファイルは、 RaiseMan_AlertPanel に置いておきます。