10.5のNSOpenPanelのsetAllowedFileTypes:が効かない
2chのCocoaはさっぱりスレより。規制で書き込めないのでこっちに。だれかコピペしといてくれるとうれしいです。
使う側からすると納得いかないですがAppleとしては仕様てことみたいですね。
You'll notice that the NSOpenPanel version has no way to show the enabled "fileTypes". Applications that link on SnowLeopard can now use allowedFileTypes/setAllowedFileTypes:, which was previously not used for the NSOpenPanel. Please refer to the header comments for more information.10.6のNSSavePanel.hにも
NSOpenPanel: On versions less than 10.6, this property is ignored.とあります。
NSOpenPanelのプロパティallowedFileTypesはSnow Leopardで導入されたもので、それより前のバージョンでは使えない、ということです。
検索して見つけたネタ元はこちら。
単一のバイナリで使いたいときはrespondsToSelector:だとダメ(親クラスのNSSavePanelで定義されてて機能はしないけど呼び出しは可能)なので、OSかAppKitのバージョンとかで判定して場合分けした実装が必要になるのか。わずらわしいな。