lazarus/components/projecttemplates
2008-03-08 02:40:22 +00:00
..
languages IDE: fixed building lazarus ide item clean 2008-03-04 20:26:34 +00:00
frmtemplatesettings.lfm components: replace poDesktopCenter with poScreenCenter (who needs window between 2 monitors?) 2008-03-08 02:40:22 +00:00
frmtemplatesettings.lrs components: replace poDesktopCenter with poScreenCenter (who needs window between 2 monitors?) 2008-03-08 02:40:22 +00:00
frmtemplatesettings.pas added Michael VCs packages to create project templates and customforms for the IDE 2005-07-30 11:56:08 +00:00
frmtemplatevariables.lfm components: replace poDesktopCenter with poScreenCenter (who needs window between 2 monitors?) 2008-03-08 02:40:22 +00:00
frmtemplatevariables.lrs components: replace poDesktopCenter with poScreenCenter (who needs window between 2 monitors?) 2008-03-08 02:40:22 +00:00
frmtemplatevariables.pas IDE: fixed i18n flags for packages 2007-10-21 22:16:26 +00:00
idetemplateproject.pp menuintf: moved ResourceName argument to the end of RegisterIDEMenuCommand to save compatibility with non-lazarus svn ide plugins 2007-11-30 01:48:32 +00:00
Makefile components: adding support for bigideclean target without requiring to a cleanall target in the Makefiles of each component 2008-03-07 12:52:00 +00:00
Makefile.fpc components: adding support for bigideclean target without requiring to a cleanall target in the Makefiles of each component 2008-03-07 12:52:00 +00:00
projecttemplates.pp IDE: fixed i18n flags for packages 2007-10-21 22:16:26 +00:00
projtemplates.lpk IDE: fixed i18n flags for packages 2007-10-21 22:16:26 +00:00
projtemplates.pas added Michael VCs packages to create project templates and customforms for the IDE 2005-07-30 11:56:08 +00:00
README.txt renamed README files to README.txt 2006-07-21 18:31:15 +00:00

This package implements project templates.

Installing this package in the IDE adds a category to the 'File-New' dialog:
'Template projects'

It also adds a 'New project from Template' menu item to the 'File' menu, as
well as a 'project template options' menu under the 'Tools' menu.

In the 'Project template options', a directory can be selected. This project
should contain a subdirectory per template. Each template directory contains
a template for a project: A collection of files which will be copied and
used as a new project.

During the copy, the package will scan the file/directory names and the 
contents of the files for variable substitution: $(VARNAME) will be 
replaced by the value of a variable $(VARNAME).

By default, the engine knows 2 variables:
ProjDir  : The directory where the new project will be created.
ProjName : The name of the project.

Additional variables must be defined in a file called 'project.ini' in the
directory of the project. This is a file in Windows INI format.

The section [Variables] will be scanned for variable names:
[Variables]
VarName1=Description 1
VarName2=Description 2

The variables found will be presented with their description in a dialog, 
and the user must present a value for the variables.

The 'project.ini' file can contain a second section, called 'Project', which
can contain some info about the project. The following keywords can be found
there:

Name
  Name of the template 
Author
  Author of the template
Description
  Short (one-line) description of the project
Recurse
  A boolean value (1/0) which tells the engine to recurse in subdirectories
  or not.
Exclude
  Comma separated list of filename extensions which should not be searched
  for keyword subsitution.

The Name,Author and description will be presented in the 'File-New' dialog.