macOS/iOS API解説

iOS , Mac アプリケーション開発のために使われる主要フレームワークの日本語情報です。2010年代に書かれた内容です。今後更新はありません。

目次

Workspaceアイコン作成オプション

INDEX>AppKit>NSWorkspace

Objective-C

enum {
   NSExcludeQuickDrawElementsIconCreationOption    = 1 << 1,
   NSExclude10_4ElementsIconCreationOption        = 1 << 2
};
typedef NSUInteger NSWorkspaceIconCreationOptions;

Swift

struct NSWorkspaceIconCreationOptions : RawOptionSetType {
    init(_ rawValue: UInt)
    init(rawValue rawValue: UInt)
    static var ExcludeQuickDrawElementsIconCreationOption: NSWorkspaceIconCreationOptions { get }
    static var Exclude10_4ElementsIconCreationOption: NSWorkspaceIconCreationOptions { get }
}

解説

ワークスペースアイコン作成オプション

フレームワーク

ApplicationKit

クラス

NSWorkspace

使用可能

10.4-

更新時のバージョン

OS X 10.10.3
Swift1.2

参照

関連記事(外部サイト)

例文

Objective-C

Swift

    //NSWorkspace setIcon:forFile:options:
    //NSWorkspace Workspace icon creation options
    //選択したファイルのアイコンが変更されるので注意すること
    @IBAction func function032(sender: AnyObject) {
        var aWindow : NSWindow = NSWindow(contentRect: NSMakeRect(0.0, 0.0, 300, 200), styleMask: NSTitledWindowMask | NSClosableWindowMask | NSMiniaturizableWindowMask | NSResizableWindowMask, backing: .Buffered, defer: false , screen: NSScreen.mainScreen())
        windowArray.addObject(aWindow) //ウインドウを保持するための配列に追加。アプリ終了時に配列は破棄
        
        //ファイルを選択
        var openPanel = NSOpenPanel()
        openPanel.allowsMultipleSelection = false
        openPanel.canChooseDirectories = false
        openPanel.canCreateDirectories = false
        openPanel.canChooseFiles = true
        openPanel.beginWithCompletionHandler { (result) -> Void in
            //オープンパネルでOKを選択したら
            if result == NSFileHandlingPanelOKButton {
                //選択したファイルを
                let theWorkspace : NSWorkspace = NSWorkspace.sharedWorkspace()
                let theURL : NSURL =  openPanel.URL!
                let filepath : NSString = theURL.path!
                let newImage : NSImage = NSImage(named: "IconImage")!
                
                var theView : NSImageView = NSImageView(frame: NSMakeRect(0.0, 0.0, 100.0, 100.0))
                let result : Bool  = theWorkspace.setIcon(newImage,
                    forFile: filepath as String,
                    options: NSWorkspaceIconCreationOptions.allZeros)

                aWindow.contentView.addSubview(theView)
                aWindow.center()//ウインドウをスクリーンの中心に
                aWindow.orderFront(self)//前面に
                aWindow.makeKeyAndOrderFront(self)//表示
                
                
            }//if result
        }//openPanel.beginWithCompletionHandler
        
    }