最終更新:2009-06-24 (水) 00:56:33 (5412d)  

HMDT/Cocoa Programming Tips
Top / HMDT / Cocoa Programming Tips

http://hmdt.jp/cocoaProg/index.html

Foundation

  • Geometry関数
  • NSAppleScript?
  • NSBundle
    • 画像リソースを取り出す
    • NSDictionaryNSArray 型のリソースを使う
    • .nib を名前と File's owner を指定して読み込む
  • NSDictionary
    • プロパティリスト表示を取り出す、その逆も
    • プロパティリストを XML 形式で取り出す
  • NSFileManager
    • ディレクトリの中身を調べる 3 つの方法
    • ディレクトリの中身を調べる その 1
    • ディレクトリの中身を調べる その 2
    • ディレクトリの中身を調べる その 3
  • NSMutableAttributedString?
    • 文字に属性を設定する
  • NSNumber
    • 組み込み型を NSString で取り出す
  • NSScanner?
    • 文字列をトークンに分割する
  • NSString
    • 1 行づつ substring を取り出す
    • 文字列を比較する
    • トークンに分割する
    • NSString のエンコーディング
    • NSString での日本語エンコーディング
    • 日本語エンコーディングの IANA 表現
    • 文字列を検索する
  • NSTimer
    • タイマーを使ってメソッドを周期的に呼び出す

Cocoa/Application Kit

  • Graphic 関数
    • グラフィック関係の関数
    • 四角を描く
    • 四角で塗りつぶす
    • 警告音をならす
  • NSApplication
    • 実行中のインスタンスを取得する
    • アプリケーション・モーダルダイアログを表示する
    • NSApplicationMain の内部
    • マウスドラッグをトラッキングする
    • モーダルダイアログ
    • ドキュメント・モーダルダイアログ(シート)を表示する
    • アプリケーション・モーダルダイアログを表示する
    • 2 つのダイアログの違い
    • 簡単にダイアログを表示する
    • NSApplication のサブクラスを使う
  • NSBezierPath
    • ベジエパスとは
    • 線を引く
    • 四角を描く
    • 折れ線を描く
    • 曲線を描く
    • パスを閉じる
    • 線のスタイル
  • NSCell?
    • システムカラーの設定を取得する
    • システムカラーの変更を受け取る
  • NSColor
    • NSCell? とは
    • NSCell? のサブクラス
    • NSCell? が保持する値
    • セルの中身を描く
    • セルに画像とテキストを描く
    • セルにテキスト属性を設定する
  • NSCursor?
    • 矢印カーソル、I ビームカーソルを設定する
    • 任意の画像をカーソルに設定する
  • NSCustomImageRep?
    • NSImage の描画ルーチンを設定する
  • NSDocument
    • ドキュメント・ベース・アプリケーションとは
    • ファイルと NSDocument を関連づける
    • ドキュメント・ベース・アプリケーションの構成
    • NSDocumentController? を使ってすべてのファイルを開く
    • NSDocument でファイルを開く 3 つの方法
    • テキストファイルを開く
    • NSDocument でファイルを保存する 3 つの方法
    • テキストファイルを保存する
  • NSDocumentController?
    • NSDocumentController? のサブクラスを使う
    • NSDocumentController? のオープンダイアログを拡張する
  • NSDragging?
    • ドラッグを受け付ける
    • ドラッグされた View をハイライト表示する
  • NSEvent
    • イベントの起きた場所を調べる
    • クリックの回数を調べる
    • キーイベントを受け取る
  • NSFont
    • 日本語フォントを使う
  • NSFontManager?
    • フォントメニューを動的に追加する
    • フォントパネルを表示する
    • フォントパネルからのフォント変更を受け取る
  • NSGraphicsContext
    • アンチエイリアスを解除する
  • NSImage
    • 画像を表示する
    • 画像を半透明で表示する
    • TIFF で保存する
  • NSMenu?
    • コンテキストメニューを表示させる
  • NSOutlineView
    • コラムの幅を自動調整する
  • NSPanel
    • パネルをモーダルダイアログの上に表示する
  • NSPopUpButton?
    • ポップアップの枠を消す
    • Cocoa バインディングでエンコーディングメニューを作る
  • NSPopUpButton?
    • ポップアップの枠を消す
    • Cocoa バインディングでエンコーディングメニューを作る
  • NSResponder
    • マウスクリック、ドラッグイベントをつかまえる
    • ダブルクリックをつかまえる
    • コンテキストメニューを設定する
    • ファースト・レスポンダが変更されるときの流れ
    • .nib の中にある First responder とは
    • レスポンダ・チェインをたぐる
    • レスポンダ・チェインを表示する
  • NSScrollView?
    • スクロールビューの構造
    • 左上固定のスクロールビュー
  • NSString 追加
  • NSTableView
    • NSTableView に値を設定する
    • NSTableView に NSButton を入れる
    • NSTableView の中のボタンを機能させる
    • NSApplication のサブクラスを使う
    • テーブルの構造
    • テーブルのセルに属性を設定する
    • テーブルからドラッグ・アンド・ドロップでファイルを保存する
  • NSTextStorage?
    • NSTextStorage? とは
    • NSTextStorage? をプログラムから変更する
    • テキストが編集された通知を受け取る
  • NSTextView
    • テキストを取り扱うための構造
    • NSTextView にテキストを追加する
  • NSToolbar?
    • ツールバーを使って、タブを選択する
  • NSView
    • View にカーソルを対応付ける
    • drawRect 以外で描画する
    • コンテキストメニューを動的に変化させる
    • フォーカスリングのスタイルを変える
  • NSWindow
    • アイコンを取得する
    • 透明ウィンドウを使う
  • NSWorkspace
    • アイコンを取得する
    • アプリケーションを起動する

With Carbon

  • Carbon Event
    • ホットキーを登録する
  • Carbon Graphics
    • GWorldをNSImageに変換する
    • スクリーンショットを撮る

With I/O Kit

  • Power Management
    • Macをスリープさせる

Core Foundation?

  • CFXML?
    • CFXML? high level API を使う
    • CFXML? のノード
    • CFXMLTreeCreateFromData?() でエラーの詳細を受け取る

Interface Builder

  • nib ウィンドウ
    • 階層表示でアウトレットを設定する
  • Views Pallete
    • ボタンを NSMatrix? を使って配置する
    • NSMatrix? の間隔を変える

Objective-C

  • クラス
    • Class とは
    • アプリケーションで使っているクラスをすべて取得する
    • クラスを階層表示する
  • インスタンス変数
    • クラスからインスタンス変数の定義を取り出す
  • メソッド
    • メソッドのリストにアクセスする
    • メソッドのリストからメソッドを取り出す

Project Builder

  • その他
    • フレームワークのヘッダを公開する

Miscellaneous

  • Cocoa で日本語
    • エンコードを指定して、NSData <-> NSString を変換する
    • 日本語用の NSCharacterSet? を作る
  • メソッド
    • メソッドを評価する
    • メソッドの返り値を調べる
  • その他
    • main() から直接 Cocoa API を呼び出す
    • Class の名前を NSString で取り出す
    • オブジェクトの名前を C 文字列で取り出す
    • プロパティリストを変更可能な形に変える
    • アプリケーションの実行パスを取得する
    • ドキュメント・ベース・アプリケーションで、自動的に新規ファイルを開かない