Dynamo.Graph.Workspaces.WorkspaceModel.WorkspaceModel C# (CSharp) Method

WorkspaceModel() protected method

protected WorkspaceModel ( IEnumerable nodes, IEnumerable notes, IEnumerable annotations, WorkspaceInfo info, NodeFactory factory, IEnumerable presets, ElementResolver resolver ) : Dynamo.Core
nodes IEnumerable
notes IEnumerable
annotations IEnumerable
info WorkspaceInfo
factory NodeFactory
presets IEnumerable
resolver ElementResolver
return Dynamo.Core
        protected WorkspaceModel(
            IEnumerable<NodeModel> nodes,
            IEnumerable<NoteModel> notes,
            IEnumerable<AnnotationModel> annotations,
            WorkspaceInfo info,
            NodeFactory factory,
            IEnumerable<PresetModel> presets,
            ElementResolver resolver)
        {
            guid = Guid.NewGuid();

            this.nodes = new List<NodeModel>(nodes);
            this.notes = new List<NoteModel>(notes);

            this.annotations = new List<AnnotationModel>(annotations);

            // Set workspace info from WorkspaceInfo object
            Name = info.Name;
            Description = info.Description;
            X = info.X;
            Y = info.Y;
            FileName = info.FileName;
            Zoom = info.Zoom;

            HasUnsavedChanges = false;
            IsReadOnly = DynamoUtilities.PathHelper.IsReadOnlyPath(fileName);
            LastSaved = DateTime.Now;

            WorkspaceVersion = AssemblyHelper.GetDynamoVersion();
            undoRecorder = new UndoRedoRecorder(this);

            NodeFactory = factory;

            this.presets = new List<PresetModel>(presets);
            ElementResolver = resolver;

            foreach (var node in this.nodes)
                RegisterNode(node);

            foreach (var connector in Connectors)
                RegisterConnector(connector);

            SetModelEventOnAnnotation();
            WorkspaceEvents.WorkspaceAdded += computeUpstreamNodesWhenWorkspaceAdded;
        }
WorkspaceModel