2009-09-17 13 views
9

Bir arşiv dosyasının içeriğini, NSOutlineView'da görüntüleyen bir Kakao uygulaması yazıyorum. Anahat sütununda bir NSBrowserCell için özel bir simge sağladım ve harika çalışıyor, ancak küçük bir takılmaya koştum - kullanarak doğru görüntüyü (genel klasör simgesi) 10.6'da döndürür, ancak 10.5'te nil değerini döndürür, böylece tüm klasör simgeleri kaybolur. (Ne zaman tanıtıldı görmek için NSFolder simge adına herhangi bir belge bulamıyorum - Ben deneme yanılma ile çalıştım var.)OS X 10.5 ve 10.6'da jenerik klasör simgesinin NSImage'ı nasıl edinilir

Üzerinde çalışan genel bir klasör simgesini almak için kullanım dışı bir yöntem var mı Hem 10.5 hem de 10.6?

cevap

17

[[NSWorkspace sharedWorkspace] iconForFileType:NSFileTypeForHFSTypeCode(kGenericFolderIcon)]

("NSFolder") @ varsayıyorum FWIW, NSImageNameFolder (olan 10.6 tanıtıldı.)

+3

(Bence) – Wevah

+2

teşekkür ederiz! Kakao hakkında haftada en az bir kez yeni bir şeyler öğreniyorum ... NSImage.h'ye 'NSImageNameFolder' gibi sabitler için bakmayı düşünmezdim ve hiç bir zaman IconsCore'da tanımlanmış birçok sabitden biri olan kGenericFolderIcon'unu bilmiyordum. .h, LaunchServices.framework'ın bir parçası. Bu kesinlikle bilmek güzel. –

+0

Ve "Kakao genel klasör simgesi" sorulduğunda Google bunu bana nasıl vermedi ?! http://cocoadev.com/index.pl?GetGenericFolderIcon RedSweaterBlog üzerindeki kodu almalıydım, ancak kenar çubuğuna koşuyordum ve onu özlemiştim ... –