private RelatedNodeHighlightSet( ResearchNode causer, Highlighting.Reason causerR, Highlighting.Reason relatedR) { _causer = causer; _causerReason = causerR; _relatedReason = relatedR; }
public bool Highlight(Highlighting.Reason r) { for (int i = 0; i < _reasons.Count(); ++i) { var p = _reasons[i]; if (p.First == r) { if (!Highlighting.Stackable(r)) { return(false); } _reasons[i] = new Pair <Highlighting.Reason, int>(r, p.Second + 1); return(true); } } _reasons.Add(new Pair <Highlighting.Reason, int>(r, 1)); return(true); }
public bool Unhighlight(Highlighting.Reason r) { for (int i = 0; i < _reasons.Count(); ++i) { var p = _reasons[i]; if (p.First == r) { if (p.Second == 1) { _reasons.RemoveAt(i); } else { _reasons[i] = new Pair <Highlighting.Reason, int>(r, p.Second - 1); } return(true); } } return(false); }
public bool HighlightedAbove(Highlighting.Reason reason) { return(_reasons.Any(p => p.First >= reason)); }
public bool HighlightedAs(Highlighting.Reason r) { return(_highlightReasons.HighlightedAs(r)); }
public void Highlight(Highlighting.Reason r) { _highlightReasons.Highlight(r); }
public bool Unhighlight(Highlighting.Reason r) { return(_highlightReasons.Unhighlight(r)); }