public SearchFacetsViewModel(MessageBus messageBus) { MessageBus = messageBus ?? throw new ArgumentNullException("messageBus"); MessageBus.Subscribe <ServerSettingsChangedMessage>(m => { if (m.ServiceModel == null) { SelectedFacets.Clear(); Facets.Clear(); } }); MessageBus.Subscribe <BuildSearchMessage>(m => { SelectedFacets = Facets.SelectMany(f => f.Values).Where(v => v.Selected).ToList(); // save selected facets SelectedFacets.ForEach(v => m.Query.AddFacetValue(v.FacetName, v.ValueName)); // add facets to query }); MessageBus.Subscribe <EndSearchMessage>(m => { if (m.Results.ReturnOptions.HasFlag(ReturnOptions.Facets)) { Facets.Clear(); foreach (var facet in m.Results.Facets.Values) { var viewModel = new FacetViewModel(facet); viewModel.Values.ToList().ForEach(fv => fv.Selected = SelectedFacets.Any(sf => sf.Equals(fv))); Facets.Add(viewModel); } } }); Facets = new ObservableCollection <FacetViewModel>(); SelectedFacets = new List <FacetValueViewModel>(); }
/// <summary> /// Setup. /// </summary> /// <param name="bounds"></param> public void Setup(System.Drawing.RectangleF bounds) { Triangle.ResetIndex(); Facets.Clear(); Points.Clear(); Bounds = bounds; Vertex tl = new Vertex(Bounds.Left, Bounds.Top, 0); Vertex tr = new Vertex(Bounds.Right, Bounds.Top, 0); Vertex bl = new Vertex(Bounds.Left, Bounds.Bottom, 0); Vertex br = new Vertex(Bounds.Right, Bounds.Bottom, 0); Triangle t1 = new Triangle(); Triangle t2 = new Triangle(); t1.A = bl; t1.B = tr; t1.C = tl; t2.A = bl; t2.B = br; t2.C = tr; t1.AB = t2; t2.CA = t1; Facets.Add(t1); Facets.Add(t2); }
public void Regenerate(double sourceLength, double targetLength, IList <double> sourceFacetLengths) { SourceLength = sourceLength; TargetLength = targetLength; var totalAdjustment = Adjustment; Facets.Clear(); for (int i = 0; i < sourceFacetLengths.Count; i++) { Facets.Add(new NotchFacetViewModel(i, sourceFacetLengths[i], totalAdjustment)); } }
public void Clear() { Name = String.Empty; Facets.Clear(); dimensions = null; }
public void Clear() { SourceLength = 0; TargetLength = 0; Facets.Clear(); }