コード例 #1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="Project"/> class.
        /// </summary>
        public Project(
			ProjectProcessingState initialProcessingState =
				ProjectProcessingState.Interactive)
        {
            // Set up the initial states.
            ProcessingState = initialProcessingState;

            // We need the settings set up first since it may contribute
            // to the loading of other components of the project.
            Settings = new ProjectSettings();
            Properties = new PropertiesDictionary();
            BlockTypes = new BlockTypeSupervisor(this);
            Blocks = new ProjectBlockCollection(this);
            Commands = new BlockCommandSupervisor(this);
            Plugins = new PluginSupervisor(this);
            Macros = new ProjectMacros();
        }
コード例 #2
0
        /// <summary>
        /// Updates the current processing state for the project.
        /// </summary>
        /// <param name="processingState">New processing state for the project.</param>
        public void SetProcessingState(ProjectProcessingState processingState)
        {
            // If we are the same, we don't do anything.
            if (processingState == ProcessingState)
            {
                return;
            }

            // Update the internal state so when we call the update method
            // on the various supervisors, they'll be able to make the
            // appropriate updates.
            ProcessingState = processingState;
        }