예제 #1
0
        private void Initialize(MasterController masterController)
        {
            if (initialized)
            {
                return;
            }

            this.masterController = masterController;

            minSize      = WindowSize;
            titleContent = new GUIContent(masterController.GetDisplayMasterName());

            lifetimeDisposable = new LifetimeDisposable();

            toolbarView = new ToolbarView();
            toolbarView.Initialize(masterController);

            recordView = new RecordView();
            recordView.Initialize(masterController);

            toolbarView.OnChangeSearchTextAsObservable()
            .Subscribe(x =>
            {
                var records = GetDisplayRecords();

                recordView.SetRecords(records);
            })
            .AddTo(lifetimeDisposable.Disposable);

            toolbarView.OnResetRecordsAsObservable()
            .Subscribe(_ => recordView.RefreshRowHeights())
            .AddTo(lifetimeDisposable.Disposable);

            initialized = true;
        }