2010-11-22 29 views
0

J'ai un NSView personnalisé dans un NSScrollView. J'essaie de dessiner un anneau de mise au point autour d'un NSScrollView (ou peut-être le NSClipView) de sorte que lorsque mon affichage personnalisé reçoit un survol glisser-déposer la vue de défilement semble obtenir le focus. Comment diable est-ce que je fais ça? Je ne veux pas avoir à sous-classer NSScrollView ... n'est-ce pas?Bague de mise au point NSScrollView (ou NSClipview)?

Répondre

0

Deux approches:

NSClipView Sous

Sous NSClipView et échanger sur à l'exécution (l'esprit blowingly facile). La sous-classe répondrait à la méthode de validation de goutte en dessinant tout effet que vous voulez juste à l'intérieur de ses limites. Peut-être un NSBezierPath avec un rectangle fait à partir des -bounds de la vue du clip.

document Voir

Votre vue document (vue dans la vue de défilement) demande à son -enclosingScrollview pour son -documentVisibleRect et dessine un rectangle sur lui-même comme la méthode de la sous-classe NSClipView ci-dessus (le même dessin approche en réponse à la méthode de validation par glisser-déposer appelée).