At 10:45 AM 3/7/01 -0800, WJCarpenter wrote:
>paul> Thus, the only remaining GUI issue I'd have is whether the
>paul> "recheck document" button would override the ignore bit in style
>paul> definitions.  I suspect that the correct answer is "no", which
>paul> means that we'd need a way to know that that style was being
>paul> ignored.

To be clear.  Ignore means ignore.  Any text which is flagged to be ignored 
should *not* be spell-checked, period.  

This is true no matter *how* that word got ignored:

  - an explicit ignore property
  - inclusion on an ignore all list
  - the referenced style has the ignore property

Clearly, the recheck document button should *always* flush the first two 
states, document-wide.  Those squiggles all come back. 

By contrast, the ignore property on referenced styles does *not* get reset.  
That would mean automatically redefining that style, or unapplying it, or 
something else, which is silly. 

The *only* relevant UI question here is whether anyone cares that there 
could conceivably be squiggle-able words inside sections of the document 
that they flagged as "don't check me ever" (via styles).  If so, they might 
want some way to realize which portions of their document didn't get checked 
so they can decide whether they want to either:

  - not apply that style to that text, or 
  - redefine that style.  

The more I think about it, the more clear it is that this should be a 
non-issue as soon as we have a working styles dialog. 

>This dialog box for performing the bulk check could have a toggle
>button for including/excluding ignored chunks (whether in styles or
>not).  It could also say somewhere (maybe by graying or not graying
>the button) whether there actually were any explicitly ignored chunks
>to worry about.  Hmm, maybe ditto or similar for the "ignore all" list
>during bulk checking.
>
>There could also be a check box(es) for these things in the spelling
>preferences dialog.

Ick.  No.  Any time we're tempted to add that many options to the UI, it 
suggests that we haven't finished doing our design homework.  A much simpler 
solution should suffice.

1.  New content gets checked.  
2.  Anything that's wrong gets squiggled. 
3.  You can explicitly ignore some of those squiggles.  
4.  Ignore means ignore, so don't check it again.
5.  Unless I tell you to. 

Right now, our implementation of this is quite simple -- #3 is just global, 
not local, and nothing persists, so #5 is implemented by saving and 
reloading the document.  

We could add non-persistent local ignore and the same approach would 
continue to work.  However, as soon as any ignore settings persist, you need 
a real implementation of #5, namely the button. 

I'm pretty sure it's really that simple.  

Paul
motto -- death to GUI clutter!

Reply via email to