internal VesselListController(HaystackContinued haystack, BottomButtons bottomButtons) { this.haystack = haystack; bottomButtons.OnNearbyChanged += onNearbyChanged; bottomButtons.OnHiddenVesselsChanged += onHiddenVesselChanged; bottomButtons.OnSortOrderChanged += onSortOrderChanged; this.listIsAscending = bottomButtons.IsAscendingSortOrder; this.vesselComparer = Comparers.CombinedComparer <Vessel> .FromOne(new Comparers.VesselNameComparer()); }
private void updateNearbyComparer() { var comparer = this.vesselComparer.Comparers.FirstOrDefault(c => c is Comparers.VesselNearbyComparer); if (comparer == null) { return; } this.vesselComparer = this.vesselComparer.Remove <Comparers.VesselNearbyComparer>(); this.vesselComparer.Add(new Comparers.VesselNearbyComparer(this.activeVessel)); }
private void onNearbyChanged(BottomButtons view) { if (!HSUtils.IsInFlight) { return; } this.updateActiveVessel(); if (view.IsNearbyOnly) { this.vesselComparer = this.vesselComparer.Add(new Comparers.VesselNearbyComparer(this.activeVessel)); } else { this.vesselComparer = this.vesselComparer.Remove <Comparers.VesselNearbyComparer>(); } this.RefreshFilteredList(); }