TableView et Drag and Drop

beltbelt Membre
17:54 modifié dans API AppKit #1
Je voudrais implémenter les fonctionnalités drag and drop avec un NSTableView, de façon que :
- je puisse copier le contenu d'une cellule vers une autre cellule ou vers un autre objet.
- je puisse copier le contenu d'un autre objet vers n'importe qu'elle cellule.
Pour cela, j'ai sous-classé un objet NSTabView, et j'ai implémenté les méthodes classiques du protocole drag and drop aussi bien en destination qu'en source de glissement.
Voici les quelques problèmes rencontrés :
- en source de glissement, ça marche, à  condition que je redéfinisse la méthode mouseDown. Par contre si j'utilise MouseDragged, ça ne fonctionne pas.
De plus, lorsque j'utilise mouseDown je ne peux plus éditer les cellules.

- en destination, je reçois bien la message :draggingEntered, puis draggingExited lorsque je relache le bouton de la souris alors que le pointeur de souris se trouve dans le TableView !
Le protocole s'arrête là  : pas de prepareForDragOperation, ni de perfomDragOperation...

Si quelqu'un pouvait m'aider... D'avance Merci

Réponses

  • beltbelt Membre
    17:54 modifié #2
    En fouillant dans la doc, j'ai trouvé les methodes suivantes à  implémenter dans le dataSource :
    tableView:acceptDrop:row:dropOperation:
    tableView:validateDrop:proposedRow:proposedDropOperation:

    Mais je ne sais pas les implémenter et la doc Cocoa est avare en exemple...
  • Eddy58Eddy58 Membre
    17:54 modifié #3
    Tu peux aller faire un tour ici et telecharger l'archive :
    http://www.cocoaprogramming.net/Downloads.html

    Ensuite dans le chapitre 19, tu trouveras entre autres un exemple avec du drag&drop dans une tableview. :)
Connectez-vous ou Inscrivez-vous pour répondre.