示例#1
0
 public void UpdatePaintedHints(bool requestedHint, Func <Hint, bool> filter)
 {
     if (InEditMode)
     {
         Hint hint = solver.SingleImpossibleHint;
         if (hint != null)
         {
             paintedHints = new Hint[] { hint }
         }
         ;
         else
         {
             paintedHints = new Hint[0];
         }
     }
     else if ((requestedHint && paintedHints.Length == 0) ||
              HintFlags.PaintHints)
     {
         //if (hintAutoSolve.ForcedHints)
         //    solver.FollowSingleOptions();
         solver.DoLogicalSolve(this, HintAutoSolve);
         paintedHints = solver.HintsToPaint(HintFlags, HintShow, filter).ToArray();
     }
     else
     {
         paintedHints = new Hint[0];
     }
 }