PDFView et une NSView attachée aux pages

hugop92hugop92 Membre
04:27 modifié dans API AppKit #1
J'essaie d'afficher dans une PDFView une "custom view" qui scrolle avec les pages.

J'ai ajouté la custom view à  la vue la plus interne de la PDFView (documentView).
J'ai mis le code pour gérer le déplacement de la custom view dans le drawPage: de la PDFView, avec un [customView setNeedsDisplay:YES].

Mais le drawRect: de la customView: n'est pas appelé.

Quelqu'un a une idée?

Hugo

Réponses

  • BruBru Membre
    04:27 modifié #2
    Ce n'est pas dans le drawRect: de PDFView qu'il faut faire le setNeedsDisplay:.
    Normalement, c'est dans le documentView lui-même (puisqu'il est superview de ton custom-view).

    Sauf que le documentView est une classe non-documentée ("PDFMateView"), donc que tu ne peux pas surcharger facilement.

    Explique nous ce que tu veux faire exactement avec ta custom-view...

    .
  • hugop92hugop92 Membre
    04:27 modifié #3

    Ce n'est pas dans le drawRect: de PDFView qu'il faut faire le setNeedsDisplay:.
    Normalement, c'est dans le documentView lui-même (puisqu'il est superview de ton custom-view).

    Dans une méthode en particulier?


    Sauf que le documentView est une classe non-documentée ("PDFMateView"), donc que tu ne peux pas surcharger facilement.

    D'autant plus qu'il n'y a pas de setDocumentView, juste un - (id) documentView. On peut faire quelque chose avec ça?


    Explique nous ce que tu veux faire exactement avec ta custom-view...

    Mettre d'autres views standard à  l'intérieur (NSTextView etc...)

    Mais en fait j'ai essayé de nombreuses combinaisons pour la superview de la custom view et son code de déplacement. Je débute sur Cocoa, et je me suis copieusement emmêlé les pinceaux entre:
    - les examples Apple qui dessinaient directement dans le drawPage: avec des NSBezier... et qui géraient le déplacement de ces formes
    - mon problème de custom view
    Il semblerait que ça fonctionne (en partie) en positionnant dès le départ la custom view sur la documentView. Mais me reste à  voir le zoom (et problablement d'autres cas) qui n'apellent toujours pas le drawRect: de la custom view.
Connectez-vous ou Inscrivez-vous pour répondre.