CHBrowserView

Mike Pinkerton 著

目標:

  • 組み込み開発者に Cocoa NSView を提供すること ー これは CHBrowserView でできます。
  • ネイティブなウィジェット ー ネイティブな Cocoa アプリケーションにはネイティブなウィジェットが欲しいものです。
  • ProjectBuilder からビルド可能にする ー Gecko のための Cocoa フレームワークを提供する予定です。

トピック:

  • ビルド
  • 組み込み


ビルド

Cocoa ウィジェットライブラリを備えたスタンドアローンな Mozilla をビルドするには:

1. FizzillaMach ビルドページにある指示に従って、設定、ソースコードの取得、ビルドを行います。【訳注:こちらかな?】

2. あなたの mozilla ディレクトリに .mozconfig というファイルを作成します。そのファイルの中に次の行を入力します:

ac_add_options --enable-default-toolkit=cocoa

3. 再度、設定およびビルドを行います。この作業で Carbon ウィジェットが Cocoa のものに置き換えられ実装されます。

% ./configure
% make -f client.mk build

以上の作業が終わったら、もっと面白くなります。次に、Cocoa に対応した組み込みテストアプリケーションをビルドすることにします。

1. embed.jar をビルドします

  • % cd embedding/config
  • % make

2. ProjectBuilder を使って組み込みのための mozilla フレームワークをビルドします。ここで使用するのは ProjectBuilder 2.0 であり、OSX 10.1.5 にある ProjectBuilder 1.x では作動しない可能性があることに注意してください。

  • mozilla/embedding/browser/cocoa/src/NSBrowserView.pbproj をダブルクリックしてください。
  • ビルドボタンをクリックします。

3. Hava a good time!

組み込み

<これがどのようにして作動するかについてはより詳しく書く予定です>

Cocoa への組み込み作業には三つの部分があります:

  1. Cocoa に実装された Widget/GFX
  2. NSView をサブクラス化し Gecko の全てをラップする CHBrowserView
  3. Cocoa ベースの組み込みアプリケーション

現時点では、ウィジェットライブラリのみが Cocoa に移植されており、それも全てが移植されている訳ではありません。でも、組み込みアプリケーション(例:Camino)では結構うまい具合に動いています。これに関連する作業を行う場合のコードは mozilla/widget/src/cocoa にあります。

CHBrowserViewmozilla/embedding/browser/cocoa/src/ にあります。Gecko が実装する組み込みインターフェースの全てをラップするために必要となるものを確認するには良い場所です。

CHBrowserView を組み込むためのテストハーネスは mozilla/embedding/tests/cocoaEmbed にあります。現実世界のアプリケーションでの CHBrowserView 利用方法について学ぶには良い場所です。


もしうまく行かなかったらどうしましょう?

Fizzilla をビルドする上で参考となる場所は二カ所あります:

  • irc.mozilla.org の #mozilla チャンネルは、リアルタイムで Mac フリークを見つけるのに良い場所でしょう。行儀よく質問をすれば、親切にアドバイスをくれるでしょう。
  • ニュースグループ netscape.public.mozilla.macosx に投稿しましょう。


written by Mike Pinkerton (pinkerton@netscape.com)