[résolu]NSBrowser

cyranocyrano Membre
novembre 2010 modifié dans API AppKit #1
bonjour,

je suis le tuto :
http://web.mac.com/philippe.robinet/Trees_View/Browser_Delegate_Passif.html

maintenant j'aimerai développer un peu

je peux naviguer au travers du browser dans un arbre (a la souris ou au clavier), j'aimerai pouvoir visualiser les proprietés du representedObject pendant ma navigation. mais je ne trouve pas la méthode delegate a appeler  :( genre selectedDidChange:

qui as une piste? un lien?

Réponses

  • devulderdevulder Membre
    04:19 modifié #2
    dans 1290006438:

    bonjour,

    je suis le tuto :
    http://web.mac.com/philippe.robinet/Trees_View/Browser_Delegate_Passif.html

    maintenant j'aimerai développer un peu

    je peux naviguer au travers du browser dans un arbre (a la souris ou au clavier), j'aimerai pouvoir visualiser les proprietés du representedObject pendant ma navigation. mais je ne trouve pas la méthode delegate a appeler  :( genre selectedDidChange:

    qui as une piste? un lien?


    Regarde du coté du NSBrowserDelegate

    - (BOOL)browser:(NSBrowser *)sender selectRow:(NSInteger)row inColumn:(NSInteger)column;

  • cyranocyrano Membre
    04:19 modifié #3
    dans 1290031988:


    Regarde du coté du NSBrowserDelegate

    - (BOOL)browser:(NSBrowser *)sender selectRow:(NSInteger)row inColumn:(NSInteger)column;


    non cette methode ne convient pas:

    Asks the delegate to select the cell at the specified row and column location.

    moi c'est exactement l'inverse que je souhaite, c'est le browser qui dit au delegate que la selection a changé.

    la docs est tres "riche" et en anglais  >:( (la doc, la doc tjrs la doc ©Aligator)

    alors voila ma soluce (1 jour dans la doc == je debute)

    NSBrowser est une sorte de NSControl

    NSControl possede une methode setAction:(SEL)
    NSBrowser possede une methode setTarget:(id)aObject

    donc on peut assigner une action supplementaire au delegate

    NSBrowser possede aussi (void)setSendsActionOnArrowKeys:(BOOL)flag

    si on passe YES l'action enregistré est invoqué lors de l'appui sur les touches de deplacement (arrowKeys).

    astucieux (que c'est beau l'apprentissage  :D)

    par la meme occasion les selections a la souris sont gerées egalement (doivent etre liées aux arrowKey)

    voili, voila  :D
Connectez-vous ou Inscrivez-vous pour répondre.