private void buttonLoad_Click(object sender, EventArgs e) { try { RawRange data = new NASA(Vars.Options.CacheFolder + "\\nasa").GetRange(DateTime.Now - TimeSpan.FromDays(30 * 365), DateTime.Now, new NPSMeteostationInfo() { Position = point }); DataRange range = new DataRange(data, new DataRangeConverterParams() { HourModel = hourModel, Interval = StandartIntervals.D1, SourceType = sourceType, Year = year }); range.Name = "Ряд NASA в точке " + point.ToString(); Result = range; DialogResult = DialogResult.OK; Close(); } catch (Exception ex) { MessageBox.Show(this, "При загрузке данных произошла ошибка. Причина:\r\n" + ex.Message, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error); } }
static void Main(string[] args) { var nasa = new NASA(); var view = new CaptureUserInstructionsConsoleView(Console.In, Console.Out); var program = new Program( new CaptureUserInstructionsPresenter( view, new SynchronousCommandPump(new DefaultRegistry <ParameterizedCommand <string> > { new CreateMarsCommand(nasa), new DeployRoverCommand( new DefaultRegistry <HeadingFactory> { new HeadingFactory("N", x => new North(x)), new HeadingFactory("E", x => new East(x)), new HeadingFactory("W", x => new West(x)), new HeadingFactory("S", x => new South(x)), new UnknownHeadingFactory(), }, nasa), new NavigateRoverCommand( new DefaultRegistry <Navigation> { new Navigation('L', x => x.turn_left()), new Navigation('R', x => x.turn_right()), new Navigation('M', x => x.move_forward()), new UnknownNavigation(), } , view, nasa) }, new SynchronousCommandProcessor(), new CommandFactory()))); program.run_against(args.Select(x => (CommandLineArgument)x)); }
/// <summary> /// нажатие на кнопку загрузки данных /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonDownload_Click(object sender, EventArgs e) { if (spoint == null) { _ = MessageBox.Show(this, "Точка не выбрана", "Загрузка ряда", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } try { buttonDownload.Enabled = false; //сохранение последней точки Vars.Options.LoadNasaLastPoint = spoint.Position; NasaWindSpeedHeight spdParam = (NasaWindSpeedHeight)(new EnumTypeConverter <NasaWindSpeedHeight>().ConvertFrom(comboBoxSpeedHeight.SelectedItem)); NASA engineNASA = new NASA(Vars.Options.CacheFolder + "\\nasa", 168, spdParam); RawRange res = engineNASA.GetRange(dateTimePickerFromDate.Value, dateTimePickerToDate.Value, spoint); try { res.Name = geocoder.GetAddress(spoint.Position); } catch (Exception) { res.Name = $"Широта {spoint.Position.Lat:0.000} Долгота {spoint.Position.Lng:0.000}"; } Result = res; DialogResult = DialogResult.OK; Close(); } catch (WebException we) { buttonDownload.Enabled = true; _ = MessageBox.Show(this, we.Message, "Загрузка ряда", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } catch (ApplicationException exx) { buttonDownload.Enabled = true; _ = MessageBox.Show(this, exx.Message, "Загрузка ряда", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } }
public CreateMarsCommand(NASA nasa) { this.nasa = nasa; }
public NavigateRoverCommand(Registry <Navigation> navigations, CaptureUserInstructionsView view, NASA nasa) { this.navigations = navigations; this.nasa = nasa; this.view = view; }
public DeployRoverCommand(Registry <HeadingFactory> factories, NASA nasa) { this.factories = factories; this.nasa = nasa; }