2010-11-17 32 views
1

J'ai un NSOutlineView qui affiche une hiérarchie de répertoires (pas nécessairement locale). Je veux afficher l'icône pour chaque élément dans la liste, donc j'utilise la méthode -iconForFileType: de NSWorkspace, puisque je ne peux pas utiliser -iconForFile: car le chemin n'est pas toujours local (peut être FTP, SFTP, etc.).NSDirectoryFileType est obsolète. Quel est le remplacement?

Lorsque j'utilise NSDirectoryFileType, je reçois des avertissements qu'il était déconseillé dans Snow Leopard. Sinon, comment puis-je m'acheter cette tâche? Fondamentalement, j'ai besoin d'un moyen non-obsolète pour obtenir l'icône pour un fichier donné (et pour un répertoire), donné seulement le nom de fichier (et si c'est un répertoire), pas un chemin local complet.

if ([(EDFileStoreItem *)item type] == EDFileStoreItemDirectory) { 
    // WARNING: Deprecated in OS X 10.6 
    [(EDImageAndTextCell *)cell setIconImage:[[NSWorkspace sharedWorkspace] iconForFileType:NSDirectoryFileType]]; 
} 

MISE À JOUR: Ok, I figured it out: Seulement

NSImage *directoryIcon = [NSImage imageNamed:NSImageNameFolder]; 

Répondre

0
NSImage *directoryIcon = [NSImage imageNamed:NSImageNameFolder]; 

disponible dans Snow Leopard, autant que je sache.