QuickLook パネル

ここには QuickLook パネルの使い方をメモしておく。とりあえず、表示はできるという程度のことしかわかってないので少しだけ。

デベロッパドキュメントにも記述がないので、Web で探して Cocoaの日々というブログに Objective-C での方法があったので、それを参考に。

まず、フレームワークをロードする。awakeFromNib とかに入れておく。

NSBundle.bundleWithPath("/System/Library/PrivateFrameworks/QuickLookUI.framework").load

実際処理をさせるメソッドで、NSURL オブジェクトの Array を作る。ここでは urls としてある。そして、QLPreviewPanel.sharedPreviewPanel に対して

setURLs_currentIndex_preservingDisplayState(urls,index,true) で、表示させるファイルのパスを指定する。

preservingDisplayState を false にしても何が変わるのかよくわかっていない。

QLPreviewPanel.sharedPreviewPanel.setURLs_currentIndex_preservingDisplayState(urls,0,true)

最後に、makeKeyAndOrderFrontWithEffect(2) で表示させる。数字は2じゃないとだめっぽい。

QLPreviewPanel.sharedPreviewPanel.makeKeyAndOrderFrontWithEffect(2)

これで、ボタンやメニューに ib_action を割り当てれば QuickLook が使える。Text View とかでなく、スペースキーを押しても何の処理もないものでは、

キー入力をオーバーライドしてスペースキーに QuickLook を割り当てると Finder と同じような使い勝手になる。