iPhotoライクな画像表示ビュー
NSViewというかNSControlのサブクラスでiPhotoのように画像を表示するビューを作ってみている.
MUPhotoViewというのが既にあるけど,これはNSCellを扱えないし,単にNSImageを表示するよりも,NSCellを介して表示した方が汎用性があるだろうってのが動機.半分後付け.
でもNSCellといえばNSMatrixがあるんだよなぁ.それに対して今作っているものの利点としては,なんかあるのかな….まぁデータをセットするだけなら行や列を意識する必要は皆無ってことかな.極論,見ることが目的だし.
で.作っている過程でよくわからないのが陰,NSShadowの処理.目的のNSImageのサイズに対して描画領域が同じもしくはそれ以上の大きさだと,陰が描画されなかったりする.NSImageCellでの描画とNSImageの直接的な描画とでは別だろうけど,イメージとしてはCocoa勉強会のブログを参考.対策としては,描画の際に陰の部分も考慮してNSImageCellの画像をリサイズしておくことでなんとかなっている.ただ,実際にどれだけの幅で陰ができるのかわからない.なんか計算式があるのかな?