テンプレート ライブラリを作成する
テンプレート ライブラリは、プロジェクトの外観と包含するものを指定するカスタム プロジェクト テンプレートです。 カスタム テンプレート ライブラリを作成すると、[新規作成]ダイアログ ボックスに配置されます。このダイアログ ボックスには、プロジェクトを作成するために [ファイル|新規作成]からアクセスできます。
テンプレート ライブラリ プロジェクトは、最初から作成することもできますし、以前作成されたプロジェクトをテンプレート ライブラリのベースとして使用することもできます。 既存のプロジェクトを使用するには、単純にXML ファイルを拡張子 .bdstemplatelib
で作成します。このファイルには、プロジェクトの内容が記述され、そのプロジェクトを使用してテンプレート ライブラリを作成するために使用されます。
メモ: テンプレート ライブラリで使用するプロジェクトを作成する場合、プロジェクトは他のプロジェクトを含んでいないサブディレクトリに配置してください。 また、プロジェクトのすべてのファイルは、そのサブディレクトリか、その配下のサブディレクトリに配置してください。
テンプレート ライブラリを作成するには:
- カスタム テンプレート ライブラリのベースとなる新しいプロジェクトを作成するか、既存のプロジェクトを開きます。 テンプレート ライブラリ用にカスタマイズするために、プロジェクトに変更を加えます。
- プロジェクトを保存して、閉じます。
- [ファイル|新規作成|その他...|Web ドキュメント]を選択し、[XML ファイル]アイコンをダブルクリックします。
- 新しい XML ファイルのデフォルトの内容を以下のサンプルの内容で置き換えます。
<TemplateLibrary Version="1.0" id="">
<Name></Name>
<Description></Description>
<Items>
<Item id="" Creator="">
<Name>Name of template library here </Name>
<Description>Custom Project Template</Description>
<Author></Author>
<Icon>MyTemplate\MyTemplateIcon.ico</Icon>
<Projectfile>MyTemplate.dproj</Projectfile>
<DefaultProjectName>MyTemplate</DefaultProjectName>
<FilePath>MyTemplate</FilePath>
</Item>
</Items>
</TemplateLibrary>
-
- 重要:
<TemplateLibrary>
要素のid=""
属性は、他のテンプレート ライブラリと競合することを防ぐために一意になるようにしてください。 自分の名前か、会社の名前をid
の一部として含めることをお勧めします。<Item>
要素のCreator=""
属性には、[新規作成]ダイアログ ボックスのどのページにこのテンプレート ライブラリのアイコンが表示されるかを指定します。 プロジェクト アイコンは、そのアイコンが作成するプロジェクトの種類に応じた特定のページに配置できます。
- 指定できる
Creator=""
属性値を以下に示します。
- 重要:
プロジェクトの種類 | Item 要素の Creator の属性値 |
---|---|
C++ プロジェクト | Creator="CBuilderProjectRepositoryCreator" |
Delphi プロジェクト | Creator="DelphiProjectRepositoryCreator" |
-
.bdstemplatelib.xml
ファイルをプロジェクト ディレクトリの上のディレクトリに保存します。メモ:
.bdstemplatelib
ファイルの<FilePath>
要素は、.bdstemplatelib
ファイルの場所からプロジェクト ディレクトリへの相対的な位置を示します。 独自のテンプレート ライブラリにカスタマイズするために、
.bdstemplatelib.xml
の内容を編集します。- テンプレート ライブラリ名、説明、および
Creator
属性値を追加します。 - プロジェクト名、プロジェクト パス情報、アイコン パス、およびファイル名を編集します。 オプションで、作成者として自分の名前を追加できます。
-
<FilePath>
値に.bdstemplatelib.xml
への相対パスを指定します。 たとえば、プロジェクトがC:\MyProjects\TemplateLibraries\MyTemplate
にあり、XML ファイルをC:\MyProjects\TemplateLibraries
に置いた場合、XML ファイルの<FilePath>
は、<FilePath>TemplateLibraries\MyTemplate</FilePath>
になります。
- テンプレート ライブラリ名、説明、および
- [ツール|テンプレート ライブラリ...]を選択して、[テンプレート ライブラリ]ダイアログ ボックスを開きます。
- [追加...]ボタンをクリックして、先ほど作成した
.bdstemplatelib.xml
ファイルを見つけて選択し、[開く]をクリックします。新しいテンプレート ライブラリが、[テンプレート ライブラリ]ダイアログ ボックスのリストに追加されます。 [新規作成]ダイアログ ボックスの指定されたページにも追加されます。[OK]をクリックして、[テンプレート ライブラリ]ダイアログ ボックスを閉じます。
このテンプレート ライブラリを使用して新しいプロジェクトを作成するには、[ファイル|新規作成|その他...]を選択し、[新規作成]ダイアログ ボックスでテンプレート ライブラリを選択します。
例
<TemplateLibrary Version="1.0" id="CompanyNameDelphiVCLProject">
<Name>DelphiVCLProject</Name>
<Description>Simple Delphi VCL Project</Description>
<Items>
<Item id="DelphiVCLProject" Creator="DelphiProjectRepositoryCreator">
<Name>Delphi VCL Project</Name>
<Description>A simple Delphi VCL project.</Description>
<Author>John Doe</Author>
<ProjectFile>DelphiVCLProject.dproj</ProjectFile>
<DefaultProjectName>DelphiVCLProject</DefaultProjectName>
<FilePath>DelphiVCL</FilePath>
</Item>
</Items>
</TemplateLibrary>
関連するプロジェクトがいくつかある場合、1 つの .bdstemplatelib
テンプレート ライブラリ ファイルを使用してすべてのプロジェクトをリストできます。
複数のプロジェクトを 1 つのテンプレート ライブラリ ファイルにまとめるには:
- すべてのプロジェクト フォルダを同じプロジェクト サブフォルダの同じレベルに配置します。
.bdstemplatelib
テンプレート ライブラリ ファイルをすべてのプロジェクトを含むフォルダの上のレベルに作成します。- 最初のプロジェクトの内容を上で説明したとおりに追加します。
- さらに
<Item></Item>
を<Items></Items>
要素に、グループ内の各プロジェクト毎に追加します。その際、各<Item></Item>
には、一意のid="
属性を指定します。
例
<TemplateLibrary Version="1.0" id="Embarcadero">
<Name>MultipleProjectsTemplate</Name>
<Description>Template with multiple projects.</Description>
<Items>
<Item id="DelphiVCLProject" Creator="DelphiProjectRepositoryCreator">
<Name>Delphi VCL Project</Name>
<Description>A simple Delphi VCL project.</Description>
<Author>John Doe</Author>
<ProjectFile>DelphiVCLProject.dproj</ProjectFile>
<DefaultProjectName>DelphiVCLProject1</DefaultProjectName>
<FilePath>DelphiVCL</FilePath>
</Item>
<Item id="CppVCLProject" Creator="CBuilderProjectRepositoryCreator">
<Name>C++ VCL Project</Name>
<Description>A simple C++ VCL project.</Description>
<Author>John Doe</Author>
<ProjectFile>CPPVCLProject.dproj</ProjectFile>
<DefaultProjectName>CPPVCLProject2</DefaultProjectName>
<FilePath>CPPVCL</FilePath>
</Item>
</Items>
</TemplateLibrary>