"Sometimes a toolkit class that's designed for reuse isn't reusable..."
("only because its interface doesn't match the domain-specific interface an application requires").
From my experience: class that's designed for reuse is rarely indeed reusable.
Or I can go even further: any class is barely usable.
The guideline, therefore, is this: do not use classes :P