/// <summary> /// 起動後にモデルの動作を開始します。 /// NOTE: エントリポイント的に動作する /// </summary> private void Initialize(IMainWindow mainWindow) { string characterName = CommonSettingRecord.Load().CharacterName; CharacterSetting = CharacterSetting.Load(characterName); _characterOperator = new HarrietCharacterOperator( characterName, mainWindow, CharacterSetting.CharacterAppearance ); _scriptingOperator = new ScriptingOperator( characterName, mainWindow, _characterOperator.Character, CharacterSetting ); Observable.FromEventPattern <EventArgs>(_scriptingOperator, nameof(_scriptingOperator.Initialized)) .Take(1) .Subscribe(_ => _timer.Start()); Observable.FromEventPattern <EventArgs>(_scriptingOperator, nameof(_scriptingOperator.Closed)) .Take(1) .Subscribe(_ => mainWindow.Close()); _scriptingOperator.Start(); //タイマーは初期化スクリプトが読み終わってから稼働開始するのでここでは放置 //_timer.Start(); }
/// <summary> /// 起動後にモデルの動作を開始します。 /// NOTE: エントリポイント的に動作する /// </summary> private void Initialize(IMainWindow mainWindow) { string characterName = CommonSettingRecord.Load().CharacterName; CharacterSetting = CharacterSetting.Load(characterName); _characterOperator = new HarrietCharacterOperator( characterName, mainWindow, CharacterSetting.CharacterAppearance ); _scriptingOperator = new ScriptingOperator( characterName, mainWindow, _characterOperator.Character, CharacterSetting ); Observable.FromEventPattern<EventArgs>(_scriptingOperator, nameof(_scriptingOperator.Initialized)) .Take(1) .Subscribe(_ => _timer.Start()); Observable.FromEventPattern<EventArgs>(_scriptingOperator, nameof(_scriptingOperator.Closed)) .Take(1) .Subscribe(_ => mainWindow.Close()); _scriptingOperator.Start(); //タイマーは初期化スクリプトが読み終わってから稼働開始するのでここでは放置 //_timer.Start(); }