public void Post([FromBody] MidiTrigger value) { var i = new DrumManager(string.Empty).Triggers.FindIndex(x => x.PinNumber == value.PinNumber); if (1 > -1) { new DrumManager(string.Empty).Triggers[i] = value; } }
public void Post([FromBody] MidiTrigger value) { var i = DrumManager.Current.Triggers.FindIndex(x => x.PinNumber == value.PinNumber); if (1 > -1) { DrumManager.Current.Triggers[i] = value; } }
public MidiTriggerViewModel(IEventAggregator eventAggregator, DrumManager drumManager, MidiTrigger trigger) { _eventAggregator = eventAggregator; _drumManager = drumManager; Trigger = trigger; TriggerCurvePlot = new PlotModel { Title = "Curve" }; TriggerCurvePlot.Axes.Add(new LinearAxis { Position = AxisPosition.Left, Minimum = byte.MinValue, Maximum = byte.MaxValue, AbsoluteMinimum = byte.MinValue, AbsoluteMaximum = byte.MaxValue, IsZoomEnabled = true, IsPanEnabled = true }); TriggerCurvePlot.Axes.Add(new LinearAxis { Position = AxisPosition.Bottom, Minimum = byte.MinValue, Maximum = byte.MaxValue, AbsoluteMinimum = byte.MinValue, AbsoluteMaximum = byte.MaxValue, IsZoomEnabled = true, IsPanEnabled = true }); BuildPlot(); if (Trigger.Curve != null) { Trigger.Curve.CurvePropertyChanged += OnCurvePropertyChanged; } if (Modifications != null) { Modifications.CollectionChanged += OnCurvePropertyChanged; //Modifications.Add(new KeyValuePair<byte, byte>(127, 0)); } }
private void AddTrigger(MidiTrigger trigger) { var toRemove = TriggerCollection.Where(x => x.Trigger.PinNumber == trigger.PinNumber).ToList(); toRemove.ForEach(x => TriggerCollection.Remove(x)); TriggerCollection.Add(new MidiTriggerViewModel(_eventAggregator, DrumManager, trigger)); var seriesToRemove = CurrentValuePlot.Series.Where(x => x.Tag as Pins? == trigger.PinNumber).ToList(); seriesToRemove.ForEach(x => CurrentValuePlot.Series.Remove(x)); var newSeries = new LineSeries { Title = trigger.PinNumber.ToString(), Tag = trigger.PinNumber }; int insertIndex = 0; for (int i = CurrentValuePlot.Series.Count - 1; i >= 0; i--) { Pins currentPin = (Pins)CurrentValuePlot.Series[i].Tag; if (currentPin < trigger.PinNumber) { insertIndex = i + 1; break; } } CurrentValuePlot.Series.Insert(insertIndex, newSeries); //public active / inactive _eventAggregator.GetEvent <TriggerActiveChangedEvent>() .Publish(new KeyValuePair <Pins, bool>(trigger.PinNumber, trigger.Type != TriggerType.Disabled)); }
public void Put(int id, [FromBody] MidiTrigger value) { }