Drag'n'Drop un seul type de fichier ?
Mrik
Membre
Bonjour, je suis nouveau sur ce forum ^^", et j'avoue je ne suis pas vraiment à l'aise avec Cocoa. Mon bouquin de chez O'reilly doit arriver la semaine prochaine, pour que je m'y mette serieusement, mais j'ai commencé pour m'entraà®ner pour mon école à développer un petit lecteur mp3 utilisant le programme mpg123, généralement utilisé en CLI. L'application est fonctionnelle, et j'ai implanté le drag and drop, comme expliqué dans la doc Apple, qui franchement est difficile à déchiffrer, bien que je sois bilingue.
Je vais aller droit au but :P , le drag and drop fonctionne, mais il m'ouvre tous les fichiers, et pas seulement les seuls fichiers de type mp3, comme je le voudrais. La doc Apple ne m'aide pas vraiment sur le sujet, donc c'est pour ça que je fais appel à vous :-) ...
Avez vous une idée de comment il faut procéder pour que mon application n'accepte le drag and drop que pour les fichiers dont l'extension est mp3 ?
Merci d'avance.
Je vais aller droit au but :P , le drag and drop fonctionne, mais il m'ouvre tous les fichiers, et pas seulement les seuls fichiers de type mp3, comme je le voudrais. La doc Apple ne m'aide pas vraiment sur le sujet, donc c'est pour ça que je fais appel à vous :-) ...
Avez vous une idée de comment il faut procéder pour que mon application n'accepte le drag and drop que pour les fichiers dont l'extension est mp3 ?
Merci d'avance.
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
On peut supposer que tu as déclaré :
[myWindow registerForDraggedTypes: [NSArray arrayWithObject: NSFilenamesPboardType]];
alors un schéma peut être de décider lors de l'entrée du drag dans la fenêtre
- (NSDragOperation)draggingEntered:(id <NSDraggingInfo>)sender
{
NSPasteboard *pb = [sender draggingPasteboard];
if( tu mets ton test d'acceptation ){
return NSDragOperationCopy;
} else {
return NSDragOperationNone;
}
}
rq : d'autres constantes existent
merci !
La doc Apple est pour moi très bien faite, mais pour ceux qui ont déjà des bases. Surement que le bouquin que tu as acheté t'en donnera.