タイトル今から始めるCocoaプログラミング》文書ファイルを扱うアプリケーションを作る(4)プロジェクトの用意カテゴリーユーザインタフェース, Cocoa, 今から始めるCocoaプログラミング
作成日2001/12/21 18:12:27作成者新居雅行
今回から実際にDeloper Toolsを使ってプログラミングに入ろう。もっとも、プログラミングとは言ってもコードを書くのはほんのちょっとだけであるが…。仕様するツールは、December 2001版のDeveloper Toolsである。

まずは、Project Builderでプロジェクトを作成する。「ファイル」メニューから「新規プロジェクト」(Command+shift+N)を選択し、ダイアログボックスで「Cocoa-Java Document-based Application」を選択する。そして、プロジェクト名とそのフォルダを保存するフォルダを指定する。今回の一連のプログラムはMOSAEditorということにしよう。

◇Cocoa-Java Document-based Applicationを選択する
 
◇プロジェクト名と保存フォルダを指定する
 

作成されたプロジェクトを見て見よう。まず、アプリケーションで必ず必要になるmain.mがあるが、これはそのままでOKである点は他のアプリケーションと変わらない。そして、nibファイルが2つあるところが目に付く。ここではまず、MainMenu.nibがあるのだが、それに加えて、MyDocument.nibというnibファイルもある。そして、Javaのソースファイルとして、MyDocument.javaというものもある。まず、これらの基本となるファイル群をチェックしておこう。

◇作成したばかりのCocoa-Java Document-based Applicationのプロジェクト
 

必要なファイルを先にプロジェクトに登録しておこう。前回、アイコンファイルを3つ作ったが、そのファイルを、プロジェクトのフォルダにFinderでコピーしておく。そして「プロジェクト」メニューの「ファイルを追加」(Command+option+A)を選択して表示されるダイアログボックスで、3アイコンファイルをまとめて選択して、「開く」ボタンをクリックすれば良い。その後に、登録するターゲットなどの設定シートが表示されるが、プロジェクトの中のファイルの場合はデフォルトで問題はないだろう。

◇アイコンファイルをプロジェクトに追加する
 
◇ファイルの追加方法はそのままでOK
 
◇アイコンのファイルがプロジェクトに追加された
 

ファイルがプロジェクトに追加されると、左側のリストに出てくる。必要ならグループを作るなどして分類していいだろう。ファイル名の左にあるチェックボックスは、現在のターゲット(ターゲットはビルド方法に関する1つの設定)で利用されるかどうかを示している。通常はチェックが最初から入っているのだが、新しいターゲットを作ったときなどはこのチェックボックスで、必要なものや不要なものを振り分けるということができる。

とりあえず必要なファイルを組み込むことができたので、次は、アプリケーションに必要な設定を行うことにしよう。「プロジェクト」メニューから「アクティブターゲットの編集」(Command+shift+E)を選択して、ターゲットの編集パネルを表示する。そこにある「アプリケーション設定」を選択する。
まずは「基本情報」を見て見よう。「実行可能ファイル」はプロジェクト名がそのままなので、これはそれでいいだろう。識別子は特に指定は必要ない。タイプとシグネチャは設定の必要がある。シグネチャ(クリエイタ)は、ここではome9に書き換えるとする。Mac OS Xでもシステムはシグネチャを使ってアプリケーションを特定するという対応付けを行っている。もちろん、シグネチャはAppleに申請して唯一のものを取得する必要がある。バージョンは任意に設定すればいい。

◇アプリケーション設定の基本情報を設定する
 

続いて、「アイコン」の部分ではアプリケーションのアイコンファイルのファイル名をキータイプして入力する。さきほど追加したアイコンファイルのファイル名をここに入力すれば良い。
「Cocoa固有の設定」は最初からすでに記入されているが、ここが重要である。主要クラスがNSAplication、メインnibファイルがMainMenuとなっている。この「メインnibファイル」という設定は、このアプリケーションを起動したときに自動的にロードされるnibファイルを指定するのである。つまり、MainMenu.nibファイルに定義したオブジェクトは、起動した段階で自動的に展開されるということである。実際にここではメニューなどを定義しているが、メニューがこうしたメカニズムで自動的にインスタンスとなってアプリケーションの中で利用できると考えておけばよいだろう。

◇アプリケーション設定のアイコンとCocoa特有の設定
 

続いて「書類のタイプ」という部分の設定を行う。ここでは、文書ファイルの定義に従った設定を行うが、すでに1つの設定が組み込まれている。まず、この設定を書き直すのであるが、一覧の中の設定をクリックして選択すると、下側の部分に設定内容が表示される。ここで書き直して「変更」ボタンをクリックすれば良い。
まずは、リッチテキストフォーマットの文書を保存する設定を定義する。書類タイプの情報の「名前」は書類の名前を指定するが、これはFinderの文書情報の種類に出てくる文字であることを意識しておく必要がある。「役割」はEditorでいいだろう。続いて「拡張子」はあらかじめ決めておいたmeditを指定する。「OSタイプ」は、ファイルタイプであるが、ここで指定したファイルタイプも同様なフォーマットであるとして読み込み可能にすると考えればよい(これだとリッチテキストのファイルタイプとしては不適格かもしれないが…)。ファイルタイプとの兼ね合いなどは実際にプログラムを加えてファイル処理ができるようになってから改めてチェックしよう。「アイコンファイル」はもちろん用意したファイルのファイル名を指定する。「書類のクラス」は最初からMyDocumentが設定されているがこれが非常に重要な意味を持つ。すでに作られているMyDocument.javaファイルで定義されたクラス名が指定されるが、ここではmedit拡張子のファイルを開いたとき、そのドキュメントの管理をMyDocumentクラスのインスタンスで行うということを意味する。つまり、ファイルと処理を行うクラスの対応付けを、「書類のクラス」の設定で行うというわけだ。

◇medit拡張子のファイルの文書ファイルとしての定義を行う
 

続いて、テキストファイルに関する定義も追加する。その場合は、リストの下側にある領域に必要な項目をとにかく記入して、「追加」ボタンをクリックすれば良い。ここでは「OSタイプ」にはテキストファイルのタイプであるTEXTをしっかり記載しておく必要があるだろう。

◇テキストファイルの文書ファイルとしての定義を行う
 

まだ、nibファイルなどを確認はしていないものの、このままとりあえず実行してみよう。プログラムを1行も追加していないので、まずは問題なくコンパイルして実行できるはずだ。実行はツールバーの左から3つ目のボタンをクリックするか、Command+Rで行う。すると、次のようにとにかくMOSAEditorが起動した。アプリケーションアイコンはさっそく、作成したアイコンファイルが見えている。メニューは英語であるがとにかく存在する。また、ウインドウが1つ開いている。Your Document Contents Hereとあるのだが、とりあえずは何もできない。

◇プログラムに変更を加えない状態で起動してみた。メニューやウインドウがすでに出ている
 

実際の設定との兼ね合いは改めて説明するが、メニューについては、MainMenu.nibに定義されたものがそのままアプリケーションで利用されている。ウインドウについては、MyDocument.nibで定義されたものが表示されているのである。これらは当然ながらカスタマイズしないといけないのだが、その方法は次回以降で説明しよう。
(この項、続く)
関連リンク