예제 #1
0
        private void AddPreset()
        {
            var count   = _data?.Length ?? 0;
            var presets = new BuildPreset[count + 1];

            if (count > 0)
            {
                Array.Copy(_data, presets, count);
            }
            presets[count] = new BuildPreset
            {
                Name    = "Preset " + (count + 1),
                Targets = new[]
                {
                    new BuildTarget
                    {
                        Name     = "Windows 64bit",
                        Output   = "Output\\Win64",
                        Platform = BuildPlatform.Windows64,
                        Mode     = BuildMode.Debug,
                    },
                    new BuildTarget
                    {
                        Name     = "Windows 32bit",
                        Output   = "Output\\Win32",
                        Platform = BuildPlatform.Windows32,
                        Mode     = BuildMode.Debug,
                    },
                }
            };
            _data = presets;

            MarkAsEdited();
            RefreshColumns();
        }
예제 #2
0
        /// <summary>
        /// Builds all the targets from the given preset.
        /// </summary>
        /// <param name="preset">The preset.</param>
        public void BuildAll(BuildPreset preset)
        {
            if (preset == null)
                throw new ArgumentNullException(nameof(preset));

            Editor.Log("Building all targets");
            foreach (var e in preset.Targets)
            {
                _buildingQueue.Enqueue(e.DeepClone());
            }
        }
예제 #3
0
        /// <summary>
        /// Builds the target.
        /// </summary>
        /// <param name="preset">The preset.</param>
        /// <param name="target">The target.</param>
        public void Build(BuildPreset preset, BuildTarget target)
        {
            if (target == null)
            {
                throw new ArgumentNullException(nameof(target));
            }

            Editor.Log("Building target");
            _buildingQueue.Enqueue(new QueueItem
            {
                PresetName = preset.Name,
                Target     = target.DeepClone(),
            });
        }
예제 #4
0
        /// <summary>
        /// Builds all the targets from the given preset.
        /// </summary>
        /// <param name="preset">The preset.</param>
        public void BuildAll(BuildPreset preset)
        {
            if (preset == null)
            {
                throw new ArgumentNullException(nameof(preset));
            }

            Editor.Log("Building all targets");
            foreach (var e in preset.Targets)
            {
                _buildingQueue.Enqueue(new QueueItem
                {
                    PresetName = preset.Name,
                    Target     = e.DeepClone(),
                });
            }
        }