XtraRecipe Xtra作成マニュアル
Copyright 2003 Takehisa MASHIMO All Rights Reserved.



■はじめに

このマニュアルでは、同梱してある「Skeltonフォルダ」(VC++.NETプロジェクトのひな形)から、
「HelloWorldXtra」を作成するまでの手順を解説します。

XtraRecipeでXtraを作成する場合、次の手順で作成します。


Xtraを作成する準備をする
「Skeltonフォルダ」をコピーして、Xtra作成環境のベースを準備する
XtraRecipeで基本ソースファイルを作成する
XtraRecipeアプリケーションの起動
「Xtra基本設定」タブでの設定
「メソッドの設定」タブでの設定
「書き出しの設定」タブでの設定
ソースファイルを書き出す
XtraRecipeの設定をファイルに保存する
VC++.NETでプログラミングし、Xtraを作成する
VC++.NETの設定を行う
プログラムを書く
Xtraを作成する
Directorで確認する
テンプレートからXtra作成環境のベースを準備する






■Xtraを作成する準備をする
まずはじめに、Xtraを作成するために必要なひな形をコピーします。

テンプレートからXtra作成環境のベースを準備する
「XtraSample_win」フォルダ内にある「Skelton」フォルダをコピーし、
フォルダ名を任意の名前に変更しておきます。


「Skelton」フォルダ内には以下のフォルダが含まれています。

「XtraRecipe_winprj」フォルダXtra作成のためのひな形VC++.NETプロジェクトです。
「XtraRecipe_source」フォルダXtraRecipeで書き出すソースファイルと、
任意で追加するソースファイルを保存しておきます。
「MacromediaXDK_include」フォルダMacromediaから公開されているXtra開発のためのXDKです。

HelloWorldXtraの場合:
1:「Skelton」フォルダをコピーします。
2:任意の場所にペーストして、フォルダ名を「HelloWorldXtra」に変更します。











■XtraRecipeで基本ソースファイルを作成する
XtraRecipeによって「HelloWorldXtra」の設定を行い、
Xtra作成に必要なVC++用ソースファイルを書き出します。



XtraRecipeアプリケーションの起動
XtraRecipe1.0b.exeを起動して、Xtraの設定を行います。

HelloWorldXtraの場合:
1:「XtraRecipe」フォルダにある「XtraRecipe1.0b.exe」を起動します。






「Xtra基本設定」タブでの設定
「Xtra基本設定」タブでは、Directorで呼び出すXtraの名前と、
「interface()」コマンドを使った時に表示されるXtra情報の設定を行います。


「Xtra基本設定」タブの項目の説明:
「Xtraの名前」DirectorでXtraオブジェクトを開くときのXtraの名称を設定します。
「Xtra情報(上部)」Directorでinterface()によって表示されるXtra情報を設定します。
Xtraのメソッドリストより前に表示されます。
「Xtra情報(下部)」Directorでinterface()によって表示されるXtra情報を設定します。
Xtraのメソッドリストの後に表示されます。

HelloWorldXtraの場合:
1:Xtraの名前を「HelloWorldXtra」にします。
2:任意でXtraの情報を入力します。






「メソッドの設定」タブでの設定
あなたが作成するXtraのメソッド(関数)の名前と引数の名前の設定を行います。

「メソッドの設定」タブ項目の説明:
「メソッドの名前」メソッドの名前を設定します。
「メソッドの返り値」ラジオボタンメソッドの返り値のタイプを設定します。
「メソッドを追加する」ボタンメソッドのリストに新しいメソッドを追加します。
「メソッドの削除する」ボタンメソッドのリストで選択したメソッドを削除します。
「引数の名前」引数の名前を設定します。
「引数のタイプ」ラジオボタン引数のタイプを設定します。
「引数を追加する」ボタン引数のリストに新しい引数を追加します。
「引数の削除する」ボタン引数のリストで選択した引数を削除します。

HelloWorldXtraの場合:
1:「メソッドの名前」に「HelloWorld」と入力します。
2:「メソッドの返り値」で「string」を選択します。
3:「引数の名前」は空欄にします。
4:「引数のタイプ」は適当にします。






「書き出しの設定」タブでの設定
設定に基づいて書き出される、VC++.NET用ソースファイルの書き出し先を設定します。
設定したディレクトリが存在しなかったり、階層が深すぎる場合は、
書き出しに失敗することがあります。その場合はディレクトリの設定をやり直します。
また、既に書き出したファイルが存在する場合、自動的に上書きされます。


「書き出しの設定」タブの項目の説明:
「ソースファイル
書き出し先ディレクトリの設定」
ソースファイルを書き出すディレクトリのパスを、絶対パスか、XtraRecipeアプリケーションからの相対パスで設定します。
「参照」ボタン ダイアログからソースファイルを書き出すディレクトリのパスを選択します。

HelloWorldXtraの場合:
1:「参照」ボタンから、「HelloWorldXtra」フォルダ内の「XtraRecipe_source」フォルダを選択する。
(XtraRecipe1.0b.exeからの相対パスでも指定できます。)






ソースファイルを書き出す
行った設定から、VC++.NETでXtraを作成するために必要なソースファイルを書き出します。
「メニューバー」>「書き出し」>「ソースファイルの書き出し」を選択します。

書き出されるソースファイルは以下の4ファイルです。

XtraRecipe.defVC++.NET用モジュール定義ファイルです。
XtraRecipe.hScriptingXtra用XtraRecipeクラスの宣言
XtraRecipe.cppScriptingXtra用XtraRecipeクラスの生成・削除
YourCode.hあなたが利用できるメソッドのプロトタイプ宣言

HelloWorldXtraの場合:
1:「メニューバー」>「書き出し」>「ソースファイルの書き出し」で書き出します。




XtraRecipeの設定をファイルに保存する
ここまでで行った設定を外部ファイル(テキストファイル)として保存できます。
「メニューバー」>「ファイル」>「XtraRecipeファイルを別名で保存」を選択し、名前を入力して保存します。


HelloWorldXtraの場合:
1:名前を「HelloWorldXtra.txt」として保存します。









■VC++.NETでXtraを作成する
XtraRecipeで書き出したソースファイルを元に、Xtraを作成します。
まずはじめにフォルダ 「HelloWorldXtra」>「XtraRecipe_winprj」>「XtraRecipe_winprj.sln」をVC++.NETで開きます。



VC++.NETの設定を行う
プログラミングの前に、Xtraを作成するために必要な主な設定を行います。

HelloWorldXtraの場合:

プロジェクト名を変更する(任意):
1:「ソリューションエクスプローラ」>「XtraRecipe」を選択
2:選択した状態で右クリック>「プロパティ」を選択
3:「プロパティ」でプロジェクトの名前を「HelloWorldXtra」に変更
(同じ要領でソリューション名なども、任意に変更してください。)




Xtraファイルの名前を変更する
1:「ソリューションエクスプローラ」>「HelloWorldXtra」を選択し、右クリック
2:「追加」>「既存項目を追加」を選択
3:「構成プロパティ」>「リンカ」>「全般」>「出力ファイル」を「..\..\HelloWorldXtra.x32」とする。




Xtra作成に必要なファイルを追加する
1:「ソリューションエクスプローラ」>「ソースファイル」を右クリック
2:「追加」>「既存項目を追加」を選択
3:「HelloWorldXtra」フォルダ内の「XtraRecipe_source」フォルダからソースファイルを全て選択して追加。
(デフォルトでは、XtraRecipeで書き出した4つのファイルとYourCode.cppファイルの計5つがあります。)






プログラムを書く
プロジェクトに追加したcppファイルにXtraで動作させるプログラミングを行います。
XtraRecipeで書き出した「YourCode.h」でプロトタイプ宣言されたメソッドを、
「YourCode.cpp」内で記述します。(設定したメソッドは「C_メソッド名」となっています。変更はできません。)
プログラムはC/C++で書き、Directorへの返り値は下記の方法で返します。

返り値の返し方:
void特に設定しません。
integerreturnで返します。例)return 1;
string引数で取得している「returnValue」へ返す文字列を格納します。
例)strcpy( returnValue, "文字列" ); (256バイトまで)


HelloWorldXtraの場合:
1:「ソリューションエクスプローラ」>「YourCode.cpp」ファイルを開きます。
2:「ソリューションエクスプローラ」>「YourCode.h」ファイルを開きます。
3:「YourCode.h」ファイルから「void C_HelloWorld( char *returnValue );」の一行をコピーします。
4:「YourCode.cpp」ファイルにペーストします。
5:セミコロンを削除して、以下のようにプログラムを書きます。



#include "YourCode.h"
#include <string.h>

void C_HelloWorld( *returnValue )
{
	strcpy( returnValue, "HelloWorld" );
}								
					

「YourCode.cpp」




Xtraを作成する
プログラムができたら、ビルドを行ってXtraを作成します。
「メニューバー」>「ビルド」>「HelloWorldXtraのビルド」を選択し、
エラーがなければ「HelloWorldXtra」フォルダに「HelloWorldXtra.x32」ファイルが作成されます。

HelloWorldXtraの場合:
1:「メニューバー」>「ビルド」>「HelloWorldXtraのビルド」を選択
2:「HelloWorldXtra」フォルダに「HelloWorldXtra.x32」ファイルがあるか確認する








■Directorで確認する
作成したXtraが正しく動作するか確認します。XtraRecipeで作成するXtraはChild型なので、
openXlibで開いた後、new()でインスタンスを生成して、オブジェクトを参照して関数を呼び出します。


HelloWorldXtraの場合:
1:Xtrasフォルダに作成した「HelloWorldXtra.x32」をコピーします。
2:Directorを起動します。
3:メッセージウィンドウで「showXlib」を実行し、「"HelloWorldXtra"」があるか確認します。
4:メッセージウィンドウで「xtraObj = xtra("HelloWorldXtra").new()」を入力してリターンします。
5:メッセージウィンドウで「put xtraObj.HelloWorld()」を入力してリターンします。
6:メッセージウィンドウで「--"HelloWorld"」と表示されることを確認します。







XtraRecipe ver1.0b
Copyright 2003 Takehisa MASHIMO All Rights Reserved.