private Section CreateCameraSettingsSection() { return(new Section(new Row[] { FloatRow.Create( "Max Frame Rate", () => NumberFormatter.Instance.FormatNFloat(SettingsManager.Instance.MaxFrameRate), () => SettingsManager.Instance.MaxFrameRate, value => SettingsManager.Instance.MaxFrameRate = value ), ChoiceRow <Resolution> .Create( "Preferred Resolution", Enumeration.GetAll <Resolution>().ToArray(), () => Resolution.Create(SettingsManager.Instance.PreferredResolution), value => SettingsManager.Instance.PreferredResolution = value.VideoResolution, this.DataSourceListener ), SliderRow.Create( "Zoom Factor", () => SettingsManager.Instance.ZoomFactor, value => SettingsManager.Instance.ZoomFactor = value ), ChoiceRow <FocusRangeType> .Create( "Focus Range", Enumeration.GetAll <FocusRangeType>().ToArray(), () => FocusRangeType.Create(SettingsManager.Instance.FocusRange), value => SettingsManager.Instance.FocusRange = value.FocusRange, this.DataSourceListener ) }, "Camera Settings")); }
private FloatRow CreateWidthAspectRow() { return(FloatRow.Create( "Width Aspect", () => NumberFormatter.Instance.FormatNFloat(this.GetRectangularAspect()), () => this.GetRectangularAspect(), value => this.SetRectangularAspect(value) )); }
public ViewfinderDataSource(IDataSourceListener dataSourceListener) { this.DataSourceListener = dataSourceListener; this.rectangularWidth = FloatWithUnitRow.Create( "Width", () => SettingsManager.Instance.RectangularWidth, unit => SettingsManager.Instance.RectangularWidth = unit, this.DataSourceListener ); this.rectangularHeight = FloatWithUnitRow.Create( "Height", () => SettingsManager.Instance.RectangularHeight, unit => SettingsManager.Instance.RectangularHeight = unit, this.DataSourceListener ); this.rectangularShorterDimension = FloatRow.Create( "Shorter Dimension", () => NumberFormatter.Instance.FormatNFloat(SettingsManager.Instance.RectangularShorterDimension), () => SettingsManager.Instance.RectangularShorterDimension, aspect => SettingsManager.Instance.RectangularShorterDimension = aspect ); this.rectangularWidthAspect = FloatRow.Create( "Width Aspect", () => NumberFormatter.Instance.FormatNFloat(SettingsManager.Instance.RectangularWidthAspect), () => SettingsManager.Instance.RectangularWidthAspect, aspect => SettingsManager.Instance.RectangularWidthAspect = aspect ); this.rectangularHeightAspect = FloatRow.Create( "Height Aspect", () => NumberFormatter.Instance.FormatNFloat(SettingsManager.Instance.RectangularHeightAspect), () => SettingsManager.Instance.RectangularHeightAspect, aspect => SettingsManager.Instance.RectangularHeightAspect = aspect ); this.rectangularLongerDimensioApsect = FloatRow.Create( "Longer Dimension Aspect", () => NumberFormatter.Instance.FormatNFloat(SettingsManager.Instance.RectangularLongerDimensionAspect), () => SettingsManager.Instance.RectangularLongerDimensionAspect, aspect => SettingsManager.Instance.RectangularLongerDimensionAspect = aspect ); this.rectangularSettings = this.CreateRectangularSettings(); this.rectangularSizeType = this.CreateRectangularSizeType(); this.laserlineSettings = this.CreateLaserlineSettings(); this.aimerSettings = this.CreateAimerSettings(); this.viewfinderType = this.CreateTypeSection(); }
public DuplicateFilterDataSource(IDataSourceListener dataSourceListener) { this.DataSourceListener = dataSourceListener; this.Sections = new[] { new Section(new[] { FloatRow.Create( title: "Code Duplicate Filter (s)", () => NumberFormatter.Instance.FormatTimeSpanToSeconds(SettingsManager.Instance.DuplicateFilter), () => (nfloat)SettingsManager.Instance.DuplicateFilter.TotalSeconds, value => SettingsManager.Instance.DuplicateFilter = TimeSpan.FromSeconds(value) ) }) }; }
private Section CreateRectangularSettings() { return(new Section(new Row[] { ChoiceRow <RectangularViewfinderStyleType> .Create( "Style", Enumeration.GetAll <RectangularViewfinderStyleType>().ToArray(), () => SettingsManager.Instance.RectangularViewfinderStyleType, newStyle => { SettingsManager.Instance.RectangularViewfinderStyleType = newStyle; SettingsManager.Instance.ViewfinderKind = ViewfinderKind.UpdateRectangularStyle(newStyle); }, this.DataSourceListener), ChoiceRow <RectangularViewfinderLineStyleType> .Create( "Line Style", Enumeration.GetAll <RectangularViewfinderLineStyleType>().ToArray(), () => SettingsManager.Instance.RectangularViewfinderLineStyleType, newLineStyle => { SettingsManager.Instance.RectangularViewfinderLineStyleType = newLineStyle; SettingsManager.Instance.ViewfinderKind = ViewfinderKind.UpdateRectangularStyle( SettingsManager.Instance.RectangularViewfinderStyleType, newLineStyle); }, this.DataSourceListener), FloatRow.Create( "Dimming (0.0 - 1.0)", () => NumberFormatter.Instance.FormatNFloat(SettingsManager.Instance.RectangularViewfinderDimming), () => SettingsManager.Instance.RectangularViewfinderDimming, value => SettingsManager.Instance.RectangularViewfinderDimming = value ), ChoiceRow <RectangularViewfinderColor> .Create( "Color", Enumeration.GetAll <RectangularViewfinderColor>().ToArray(), () => SettingsManager.Instance.RectangularViewfinderColor, newColor => SettingsManager.Instance.RectangularViewfinderColor = newColor, this.DataSourceListener), ChoiceRow <RectangularViewfinderDisabledColor> .Create( "Disabled Color", Enumeration.GetAll <RectangularViewfinderDisabledColor>().ToArray(), () => SettingsManager.Instance.RectangularViewfinderDisabledColor, newColor => SettingsManager.Instance.RectangularViewfinderDisabledColor = newColor, this.DataSourceListener ) }, "Rectangular")); }