/// <summary> /// 執筆Viewを初期化する /// </summary> /// <param name="view">対応するビュー</param> public void Initialize(WritersBattleFieldView view) { _doShowMarkReviewer = false; _mode = ViewMode.Writing; // 一度Initializeしていたらここまでの処理だけでOK if (_hadFirstInitialize) { return; } MarkerModel = new MarkerViewModel(); _markingReviewerViewModel = new MarkingSelectorViewModel(); CurrentMarkingLayerViewModel = new NullMarkingLayerViewModel(); // View設定 _writersBFView = view; _markingLayerView = view.GetMarkingLayerView(); _markingReviewerViewModel.SetView(_writersBFView.MarkReviewer, _writersBFView.Editor); // Binding _writersBFView.BindModel(this); _markingLayerView.BindModel(this); CurrentMarkingLayerViewModel.SetView(_markingLayerView); CurrentMarkingLayerViewModel.WritersModel = this; // Event EventAggregator.MoveDocumentIndexEventRised += OnMoveDocumentIndex; EventAggregator.ReplaceEventRised += OnReplaceWordEvent; _hadFirstInitialize = true; }
public void BindModel(WritersBattleFieldViewModel model) { _model = model; _markerModel = _model.MarkerModel; _editor.SetText(model.Text); BaseGrid.DataContext = model; // スクロール時のイベントを登録する HookScrollEvent(); _editor.TextChanged += _editor_TextChanged; _editor.TextSearchOccured += _editor_TextSearchOccured; }