« スクリプトでポイントセレクト | トップページ | スクリプトでアニメーショントラック »

ユーザースクリプトのフレームワーク

フレームワークなんて大げさなものではないけど…
ダイアログ付のユーザスクリプトを作るときのベースになるソースを作っておこう。
このブログの「スクリプトでモーダルダイアログ」の最後のスクリプトをベースにします。
なるべくコードは追加するのみで、削除や変更をなるべくしないようにしよう。
ダイアログクラスはtools_dialog。実行部をToolsExecution()関数にします。

/*
モーダルダイアログ付ユーザスクリプト
08.06.08
*/


class tools_dialog : GeModalDialog
{
  public:
    //ここにダイアログで使う変数を追加
    var 変数名;

    tools_dialog();
    Init();
    CreateLayout();
    AskClose();
}


tools_dialog::tools_dialog()
{
  super();
  //ここに変数の初期化

}


tools_dialog::Init()
{
  //ダイアログの初期化 変数の値をダイアログに設定
  SetFloat(1002 , 変数名 , 0 , 100 , 1);


}


tools_dialog::CreateLayout()
{
  SetTitle("ここにタイトル");//ダイアログのタイトル
  AddGroupBeginV(1000 , BFV_SCALEFIT , 2 , "tools group" , 0);
    AddStaticText(1001 , 0 , 0 , 0 , "項目" , 0);
    AddEditNumber(1002, 0, 150, 0);//ここを変更
  AddGroupEnd();
  AddDlgGroup(DR_DLGGROUP_OK | DR_DLGGROUP_CANCEL);

}

tools_dialog::AskClose()
{
  //入力した値を変数に代入
  変数 = GetFloat(1002);

}

ToolsExecution(引数リスト)
{
  //この関数に実行部分を追加


}


main(doc , op)
{
  var t_dialog = new(tools_dialog);
  t_dialog->Open(-1 , -1);
  if(!(t_dialog->GetResult()))return;


  ToolsExecution(引数リスト);//処理
}

これをユーザスクリプトに入力して、新規でスクリプトを作るとき、これをファイル/複製すると簡単。分かりやすくする為に、リストのトップに来るようスクリプト名の「@ベース」にしました。これで完成。このスクリプトは、このまま実行すると勿論エラーがでます。スクリプトは「BaceScript.ZIP」です。

|

« スクリプトでポイントセレクト | トップページ | スクリプトでアニメーショントラック »

コメント

この記事へのコメントは終了しました。