itok's Lab

昔の開発ネタを記録として残してます

NSWorkspace

スリープ状態への移行と復帰を検知する

スリープへ移行するタイミングと、スリープから復帰するタイミングをとらえます。10.2までだと多少下層のコードにアクセスしないとダメだったんですが、10.3からはCocoaでアクセスできるようになりました。 NSWorkspaceWillSleepNotification // スリープへ…

アプリ名からアプリアイコンを取得

アプリケーション名からアプリケーションアイコンを取得します。まず、アイコンを取得するには NSWorkspace のこのメソッド。 //NSWorkspace -(NSImage*) iconForFile:(NSString*)fullPath これにアプリケーションのフルパスを渡してあげれば大丈夫。じゃあ…

指定URLをバックグラウンドで開く

URLを指定して別のアプリで開く場合、普通はそのアプリが前面にきてしまいますよね。で、それを抑制する方法。NSWorkspace のメソッドの引数として NSWorkspaceLaunchWithoutActivation を使います。 // NSWorkspace [[NSWorkspace sharedWorkspace] openURL…

「Finderで開く」を実現する

ダウンロードした時なんかによくある「Finderで開く」の実現。Finder.app を指定してファイルを開いたりするのかと思ったらちゃんとメソッドありました。 [[NSWorkspace sharedWorkspace] selectFile:path inFileViewerRootedAtPath:nil];