Slick V3.3 manual Creating a Multi-file Template

Models: V3.3

1 568
Download 568 pages 2.03 Kb
Page 137
Image 137

Manually Creating a Template

class $safeitemname$ { };

Creating a Multi-file Template

A multi-file template is a template item that creates more than one file.

Multi-file templates require the use of substitution parameters to ensure that file name and extension parts are used when creating each file of the template item. For example, a C++ class typically consists of:

A .h file that contains the class definition.

A .cpp file that contains the class implementation.

Since you can only enter one name into the Name field on the Add New Item dialog box, you need a way to specify the target file name for each file created by the multi-file template. In the C++ class example be- low, the .h and .cpp files are created with the name you provide, while their extensions are preserved.

To create a multi-file item template from the Template Manager dialog, click File SlickEdit Template Manager.

To manually create a multi-file item template:

1.Create the item template the same way a single file template would be created. For more information on manually creating a template item, see Manually Creating a Template.

2.Add TargetFilename attributes to each of the File elements in your template metadata file

(.setemplate). Set the value of each TargetFilename attribute to $fileinputname$.<extension>, where <extension> is the file extension of the target file name being created. When the files are cre- ated, their names will be based on the name you entered in the Name field of the Add New Item dialog box. See the example below.

Example

The following example demonstrates a multi-file item template .setemplate file. The item creates C++ class header (.h) and implementation (.cpp) files.

<?xml version="1.0" ?> <!DOCTYPE SETemplate SYSTEM "http://www.slickedit.com/dtd/vse/setemplate/1.0/setemplate.dtd"> <SETemplate Version="1.0" Type="Item">

<TemplateDetails> <Name>My C++ Class</Name>

<Description>My complete C++ class header and implementation</Description> <DefaultName>MyClass.cpp</DefaultName>

</TemplateDetails>

<TemplateContent>

<Files>

115

Page 137
Image 137
Slick V3.3 manual Creating a Multi-file Template