Example #1
0
        protected override void OnModelPropertyChanged(string propertyName)
        {
            if (propertyName == "Model")
            {
                OnConfigChanged(this, EventArgs.Empty);
            }
            else if (propertyName == "Presentation")
            {
                if (myPresentation == Model.Presentation)
                {
                    return;
                }

                myPresentation = Model.Presentation;

                if (myPresentation.Graph.Nodes.Count() > DotToolLayoutEngine.FastRenderingNodeCountLimit)
                {
                    myPresentation.ToogleFoldingOfVisibleClusters();
                }

                var graphLayoutModule = myPresentation.GetModule <IGraphLayoutModule>();
                graphLayoutModule.Algorithm = LayoutAlgorithm;
                PropertyBinding.Bind(() => LayoutAlgorithm, () => graphLayoutModule.Algorithm);

                RaisePropertyChanged(nameof(IsEnabled));
            }
        }