═══ 1. Overview ═══ PartMeister is a wizard for creating OpenDoc components from templates. In this initial release, a template is provided for creating parts derived from the ContainerPart sample part shipped with the toolkit. By using PartMeister to generate a new component, you may immediately compile the code, register the component and test it out. Templates may be added and modified, allowing the tool to be extended. ═══ 2. Copyright ═══ IBM PartMeister Copyright (c) 1995, IBM Corporation all rights reserved ═══ 3. Support ═══ Updates for PartMeister will be available on the WorldWide Web at ClubOpenDoc http://www.software.ibm.com/clubopendoc Support for this tool and accompanying documentation is available electronically from,  Club OpenDoc (see URL above)  CI-Labs list server (OpenDoc-Interest@CILabs.ORG)  Internet mail to opendoc@austin.ibm.com  the OPENDOC CFORUM on TalkLink  for IBM staff, OPENDOC FORUM on IBMPC ═══ 4. Installation ═══ If you received PartMeister with the OpenDoc toolkit, then the product is installed with the regular installation of the toolkit, no further installation steps are required. Proceed with configuration. ═══ 4.1. If installed with the OpenDoc toolkit ═══ PartMeister is automatically installed with the toolkit. No further installation steps are required. Proceed with configuration. ═══ 4.2. If received electronically, separate from the toolkit ═══ PartMeister may be installed in any directory. It is recommended that it be installed into its own directory under your Toolkit directory for example C:\TOOLKIT\PMEISTER. The recommended install procedure is as follows,  change to toolkit directory (ie. C:\TOOLKIT)  create subdirectory PMEISTER  change to new subdirectory (ie. C:\TOOLKIT\PMEISTER)  unzip PartMeister (ie. UNZIP \PMEISTER.ZIP)  proceed to configuration The files installed include,  PMEISTER.EXE - program file  PMEISTER.DAT - template list and related information  PMEISTER.INF - this file  PMEISTER.HLP - help file  *.T* - templates  README - release information ═══ 5. Configuration ═══ Settings (on the 'Settings' notebook page) should be set before generating any components with PartMeister. The 'Copyright' area specifies the information that will be contained in the header comments for source files. The 'Compiler' area selects the compiler that will be used, which affects only the generation of the make file. The 'OpenDoc Directories' area requires four directories to be set,  Runtime - where the OpenDoc runtime executables/DLLs are located, used in the make file to specify where the output component should be.  Toolkit - the base directory for the OS/2 toolkit  Public files - where to locate and store files that are common to more than one component  Output - directory to use as the base for where components will be generated. This directory must exist, and is recommended to be a separate directory under the root directory (ie. C:\ODPARTS). It is recommended that you create your own public directory. If you use the ContainerPart as a parent class, you will need to copy some files from the container part directory (.xh, .xih, .lib). ═══ 6. Creating a new component ═══ To create a new component, all the information that is required may be filled in on the first page ('Part'). Select the template to use from the selection box. Next fill in the name of your new class, and a short name (a short name is 8 characters or less and must container characters that are valid for a filename - it is used as the name of the directory that the files are generated into and for the filenames of the generated files). Category refers to the broad definition of the data type for the part. A list of currently defined categories is provided, or you may fill in a new category. Kind is the specific data type (for example, a word-processor specific text format) of the part. When the fields have been filled in to your satisfaction, select 'Generate' from the 'Part' menu to generate the part files. You may then use NMAKE with the generated make file to compile and link the part. ═══ 7. Templates ═══ The foundation of the code generation capabilities of PartMeister are templates. PartMeister is extended through the addition of new templates, which may be written by individual developers or received from others. ═══ 7.1. Adding a template to PartMeister ═══ If you create or receive a template, you may add it to the list of available templates. This function is not implemented in this version of PartMeister. ═══ 7.2. Creating a template ═══ Templates are used to extend the function of PartMeister by providing new models for code generation. Often templates will implement derived components, and that a superclass may have more than one associated template. ═══ 7.2.1. Steps ═══ To create a template to generate a derived class,  create an OpenDoc part to be subclassed  implement a subclass of the part  replace the appropriate values with replaceable parameters  name the template files appropriately ═══ 7.3. Replaceable parameters and functions ═══ Replaceable parameters take the form %%parameter%%. Functions that operate on parameters take the form %%function(parameter)%%. Availale replaceable parameters are,  partname - name of the IDL interface (class name)  filename - file name for the new components files  parentname - IDL interface name of parent  parentfilename - file name of parent files  author - name of component author  company - company holding copyright  year - year, or years, for copyright notice  category - OpenDoc part category  kind - OpenDoc part kind  displayname - display name  opendocpath - OpenDoc runtime directory  publicpath - public files directory  runtimepath - OpenDoc runtime directory  outputpath - target path for generation  runtimelib - C runtime library name to link to  toolname - Name of tool generating files  toolversion - Version number of tool generating files Available functions are,  upper - change parameter to upper case  lower - change parameter to lower case