Example #1
0
		public bool ConfigureFromArgs(string[] args) {
			InitLoggerConfig();
			Settings = new RenderSettings();
			Settings.ConfigureFromArgs(args);

			if (Settings.Debug && !Debugger.IsAttached) 
				Debugger.Launch();

			return ValidateSettings();
		}
Example #2
0
        private RenderSettings GetRenderSettings()
        {
            var rs = new RenderSettings();
            rs.InputFile = tbInput.Text;
            if (cbOutputPNG.Checked) {
                rs.SavePNG=true;
                rs.PNGQuality = (int)nudCompression.Value;
            }

            if (rbCustomFilename.Checked) rs.OutputFile = tbCustomOutput.Text;
            if (cbOutputJPG.Checked) {
                rs.SaveJPEG=true;
                rs.JPEGCompression= (int)nudEncodingQuality.Value;
            }

            if (cbModConfig.Checked)
                rs.ModConfig = tbModConfig.Text;
            else if (!string.IsNullOrWhiteSpace(tbMixDir.Text) && tbMixDir.Text != FindMixDir(rbEngineAuto.Checked || rbEngineRA2.Checked || rbEngineYR.Checked))
                rs.MixFilesDirectory = tbMixDir.Text;

            if (cbEmphasizeOre.Checked) rs.MarkOreFields = true;
            if (cbTiledStartPositions.Checked) rs.StartPositionMarking = StartPositionMarking.Tiled;
            if (cbSquaredStartPositions.Checked) rs.StartPositionMarking = StartPositionMarking.Squared;

            if (rbEngineRA2.Checked) rs.Engine = EngineType.RedAlert2;
            else if (rbEngineYR.Checked) rs.Engine = EngineType.YurisRevenge;
            else if (rbEngineTS.Checked) rs.Engine = EngineType.TiberianSun;
            else if (rbEngineFS.Checked) rs.Engine = EngineType.Firestorm;

            if (rbSizeLocal.Checked) rs.SizeMode = SizeMode.Local;
            else if (rbSizeFullmap.Checked) rs.SizeMode = SizeMode.Full;

            if (rbPreferSoftwareRendering.Checked) rs.PreferOSMesa = true;

            if (cbReplacePreview.Checked) {
                rs.GeneratePreviewPack = true;
                if (cbMarkersType.Text == "None")
                    rs.PreviewMarkers = PreviewMarkersType.None;
                else if (cbMarkersType.Text == "Squared")
                    rs.PreviewMarkers = PreviewMarkersType.Squared;
                else if (cbMarkersType.Text == "Aro")
                    rs.PreviewMarkers = PreviewMarkersType.Aro;
                else if (cbMarkersType.Text == "Bittah")
                    rs.PreviewMarkers = PreviewMarkersType.Bittah;
            }

            if (cbOutputThumbnail.Checked) {
                var wh = tbThumbDimensions.Text.Split(new[] { "," }, StringSplitOptions.RemoveEmptyEntries).Select(x => x.Trim()).ToList();
                int w, h;
                if (wh.Count == 2 && int.TryParse(wh[0], out w) && int.TryParse(wh[1], out h)) {
                    rs.ThumbnailConfig = "";
                    if (cbPreserveThumbAspect.Checked)
                        rs.ThumbnailConfig += "+";
                    rs.ThumbnailConfig += string.Format("({0},{1})", w, h);
                }
            }

            return rs;
        }
Example #3
0
 public bool ConfigureFromSettings(RenderSettings settings)
 {
     Settings = settings;
     return ValidateSettings();
 }