public void DrawTab(Rect pane) { Text.Font = GameFont.Small; GUI.color = Color.white; new RectStacker(pane) .ThenForEach(metrics, (u, v, w) => { return(statTabList.DrawItem(u, selectedMetric, v, w, (drawRect, curItem, ind) => { Widgets.Label(drawRect, curItem.Name); }, clickedObj => { selectedMetric = clickedObj; //onListItemClick.OnNext(clickedObj); } )); }) .IfThen(() => metrics.Count > 0, u => { Rect addDerivedButtonRect = new Rect(u); addDerivedButtonRect.height = 35f; addDerivedButtonRect.width = 80f; if (Widgets.ButtonText(addDerivedButtonRect, "Add derived")) { onAddMetricClicked.OnNext(tracker); } return(addDerivedButtonRect); }); }
public void AddDerivedMetric(DerivedMetric derivedMetric) { CreateVolume(derivedMetric); derivedMetric.ValuePushed.Subscribe(dataPoint => { History.Save(derivedMetric.Key, dataPoint); }); this.DerivedMetrics.Add(derivedMetric); }
protected DerivedMetric DeriveMetric(string key, string name, List <SourceMetric> sourceMetrics, List <IOperator <float> > operators) { var derivedMetric = new DerivedMetric( Name, key, name, sourceMetrics, operators, Data.History.History ); return(derivedMetric); }
public void AddDerivedMetric(DerivedMetric derivedMetric) { Data.AddDerivedMetric(derivedMetric); }
public void SetSource(CompStatTracker tracker) { this.tracker = tracker; metrics = tracker.Data.DerivedMetrics; selectedMetric = metrics.FirstOrDefault(); }