ページ

2008年12月19日金曜日

QuickLookパネルをやめる

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク

QuickLookパネルの利用をやめることにした。


理由は2つ。
1. キャプチャ後のナビゲーションの要となり、拡張性が必要とされるが、QuickLookパネルでは対応できない
2. 非公開APIの利用を避ける

1. の方が強い理由だが、2.も気にはなっていた。


その代わりに独自のビューアを実装する。面倒ではあるが、一旦作成できれば拡張性は QuickLookパネルよりも飛躍的に高まるので長い目で見ればこちらがいいだろう。

で、さっそく開発にとりかかる。まずは HUD形態の NSPanelを作ってみた。


専用のクラス群を作っていく。いつものようにウィンドウ(パネル)とコントローラーを用意する。
・SimpleViewerController
・SimpleViewerPanel

名前はSimpleCapにちなんで SimpleViewer。できるだけ SimpleCapから独立させて後々再利用可能な形で作っていく。
HUDパネルの生成はこんな感じ。

- (id)init
{
NSRect frame = NSMakeRect(100, 100, 300, 200);
self = [super initWithContentRect:frame
styleMask:NSResizableWindowMask|NSHUDWindowMask|NSUtilityWindowMask|NSClosableWindowMask
backing:NSBackingStoreBuffered
defer:NO];

if (self) {
[self setReleasedWhenClosed:YES];
[self setDisplaysWhenScreenProfileChanges:YES];
[self setLevel:NSScreenSaverWindowLevel];
[self setHidesOnDeactivate:NO];
[self setCollectionBehavior:NSWindowCollectionBehaviorCanJoinAllSpaces];
}
return self;
}


- - - -
ゆくゆくは画像の縮小とフォルダ内ファイルの閲覧機能を持たせたい。