drag n' drop sur l'icone.

tabliertablier Membre
03:28 modifié dans API AppKit #1
j'ai un projet en cours du type Cocoa application dans lequel je n'ai qu'une fenêtre. Le drag&drop sur cette fenêtre marche parfaitement. Je souhaite également que l'application s'ouvre par un drag&drop sur son icône. Prenant exemple sur TextEdit, dans MainMenu.nib j'ai mis un delegate entre le "file's owner" et le controleur. Dans le controleur.m j'utilise la méthode - (void)application:(NSApplication *)sender openFiles:(NSArray *)filenames. Cela marche dans TextEdit mais pas dans mon appli!!
ESSAI: lorsque je pose un fichier sur l'icone, celle-ci ne se sélectionne pas.
J'ai donc oublié quelque chose, mais quoi et ou?

Réponses

  • AntilogAntilog Membre
    03:28 modifié #2
    Tu as défini ton application comme éditeur du type de fichier que tu drag(ue) ?
  • tabliertablier Membre
    03:28 modifié #3
    Merci pour la réponse et voilà  la bonne question!  Non je n'ai pas fait ça!
    Comment fait-on cela, ou plustot ou est-ce expliqué dans la doc car je n'ai rien trouvé sur le sujet!
    En fait je souhaite draguer n'importe quoi et faire le trie dans le programme!
  • AntilogAntilog Membre
    03:28 modifié #4
    Tu trouveras les infos ici:
    http://developer.apple.com/documentation/Cocoa/Conceptual/Documents/Concepts/DocTypePList.html#//apple_ref/doc/uid/20000024-BHADAGHF

    Je ne sais pas s'il est possible d'accepter n'importe quel type de fichier (en tout cas, je ne vois pas comment  :( )
  • tabliertablier Membre
    03:28 modifié #5
    Ok, je vois comment ça marche. Merci!  :P

    Je conclus de ma recherche que la doc est un puit sans fond qui n'est exploitable que si on la connait très bien (mais dans ce cas la, on n'en a plus besoin!).  ???
  • tabliertablier Membre
    03:28 modifié #6
    Je ne sais pas s'il est possible d'accepter n'importe quel type de fichier (en tout cas, je ne vois pas comment)
    


    Je na sais pas si c'est correct, dans document type, j'ai mis * comme Name et comme extension, puis Store type: Binary et Role: None. Le drag&drop sur l'icone semble marcher pour n'importe quoi et je récupère l'adresse de l'objet par:

    - (void)application:(NSApplication *)sender openFiles:(NSArray *)filenames <br />{<br />BOOL success ;<br /><br />&nbsp; &nbsp; leDossier = [NSString stringWithString:[filenames objectAtIndex:0] ] ;	// Prise du premier nom<br />&nbsp; &nbsp; success = [NSApp estDossier:leDossier ] ;<br />&nbsp; &nbsp; [NSApp replyToOpenOrPrint:success ? NSApplicationDelegateReplySuccess : NSApplicationDelegateReplyFailure];<br />}<br />
    
Connectez-vous ou Inscrivez-vous pour répondre.