NSUserDefaultController には #revertInitialValues というメソッドもある。これはどう働くのか?
まずはボタンを接続して呼出してみる。
何も起らない。当たり前か。
マニュアルを読むと編集中の値を破棄して initialValues の値に置き換えるとある。
NSUserDefaultsController#revertToInitialValues:
この initialValues は #setInitialValues: で設定することができる。
試しに awakeFromNibの中で設定してみる。
- (void)awakeFromNib
{
:
NSDictionary* initial_values =
[NSDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithInt:1], @"check1",
[NSNumber numberWithInt:1], @"check2",
[NSNumber numberWithFloat:50.0], @"slider",
nil];
[_user_defaults_controller setInitialValues:initial_values];
}
Key名で使っているのはバインディングの "Model Key Path" で使った名前。
できた。ボタンを押すと setInitialValues: で指定した値に設定される。
サンプル:
ToolBar-07.zip