source: trunk/Documentation/idldoc/templates/dev-help2.tt @ 69

Last change on this file since 69 was 69, checked in by smasson, 18 years ago

debug + new xxx

File size: 12.8 KB
Line 
1
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
3 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
4
5<!-- Template needs structure with the following fields:
6       version : IDLdoc version
7       date : string containing date of file creation
8       embed : 0 for link to CSS, 1 for embed CSS
9       css_location : if embed then string filename of CSS file location, o/w href to CSS file
10       idldoc_syntax_filename : file containing IDLdoc output for the idldoc routine
11       navbar_filename : filename of navbar template
12       footer : filename of footer file to include
13       tagline_filename : filename of tagline template
14     Plus stuff needed by the templates: navbar, tagline
15-->
16
17<!-- Generated by IDLdoc [% version %] on [% date %] -->
18
19<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
20  <head>
21    <title>IDLdoc Developer's Help ([% title %])</title>
22
23    [% IF embed %]
24    <style type="text/css" media="all">
25         [% INCLUDE css_location %]
26    </style>   
27    <style type="text/css" media="print">
28         [% INCLUDE print_css_location %]
29    </style>
30    [% ELSE %]
31    <link rel="stylesheet" type="text/css" href="[% root %]/main_files.css" media="all"/>
32    <link rel="stylesheet" type="text/css" href="[% root %]/main_files_print.css" media="print"/>
33    [% END %]
34
35    <script type="text/javascript">
36      function setTitle() {
37        parent.document.title="IDLdoc Developer's Help ([% title %])";
38      }
39    </script>
40  </head>
41
42
43  <body onload="setTitle();">
44   
45    [% INCLUDE_TEMPLATE navbar_filename %]
46   
47    <div id="container">
48
49      <h1>Modifying IDLdoc's output</h1>
50
51      <p>This guide discusses how to modify the output from IDLdoc by
52      modifying the template files (*.tt) that are provided with
53      IDLdoc. Currently, only the templates directly documenting *.pro
54      files (pro-file.tt), templates included by pro-file.tt
55      (navbar.tt and tagline.tt) and objects implementing the template
56      interface used by pro-file.tt (IDLdocRoutine and IDLdocParam)
57      are documented for user customization. The plans is to release
58      the documentation for other templates as they become more stable
59      in future releases of IDLdoc.</p>
60
61      <p>In general, if one of the below variables is not
62      defined/not-appropriate it will be set to '' or -1.</p>
63
64      <h2>navbar.tt</h2>
65
66      <p>This template is included by many other templates requiring
67      those templates to provide the following variables:</p>
68
69      <dl class="variables">
70        <dt>title</dt>
71        <dd>title of the IDLdoc library</dd>
72
73        <dt>subtitle</dt>
74        <dd>subtitle of the IDLdoc library</dd>
75
76        <dt>categories_href</dt>
77        <dd>relative link to the categories page</dd>
78
79        <dt>categories_selected</dt>
80        <dd>boolean on whether the current page is the categories page</dd>
81
82        <dt>dir_overview_href</dt>
83        <dd>relative link to the directory overview page</dd>
84
85        <dt>dir_overview_selected</dt>
86        <dd>boolean on whether the current page is the directory overview page</dd>
87
88        <dt>etc_selected</dt>
89        <dd>boolean on whether the current page is an "Etc" page</dd>
90
91        <dt>file_selected</dt>
92        <dd>boolean on whether the current page is documentation of a PRO or SAV file</dd>
93
94        <dt>help_href</dt>
95        <dd>relative link to the help page</dd>
96
97        <dt>help_selected</dt>
98        <dd>boolean on whether the current page is the help page</dd>
99
100        <dt>index_href</dt>
101        <dd>relative link to the full index</dd>
102
103        <dt>index_selected</dt>
104        <dd>boolean on whether the current page is the full index page</dd>
105
106        <dt>overview_href</dt>
107        <dd>relative link to the library overview page</dd>
108
109        <dt>overview_selected</dt>
110        <dd>boolean on whether the current page is the library overview page</dd>
111
112        <dt>search_href</dt>
113        <dd>relative link to the search page</dd>
114
115        <dt>search_selected</dt>
116        <dd>boolean on whether the current page is the search page</dd>
117
118        <dt>source_href</dt>
119        <dd>relative link to the source code of a PRO file</dd>
120
121        <dt>source_selected</dt>
122        <dd>boolean on whether the current page is a source code page</dd>
123
124        <dt>user</dt>
125        <dd>boolean on whether the current documentation is generated for a user (as opposed to a developer)</dd>
126
127        <dt>prev_file_href</dt>
128        <dd>relative link to the previous PRO or SAV file page</dd>
129
130        <dt>next_file_href</dt>
131        <dd>relative link the next PRO or SAV file page</dd>
132
133        <dt>view_single_page_href</dt>
134        <dd>link to the current page</dd>
135
136        <dt>view_frames_href</dt>
137        <dd>link to the library index.html page</dd>
138
139        <dt>summary_fields_href</dt>
140        <dd>internal link to the fields summary; '' if no fields</dd>
141
142        <dt>summary_routine_href</dt>
143        <dd>internal link to the routine summary, '' if only one routine</dd>
144
145        <dt>details_routine_href</dt>
146        <dd>internal link to the start of the routine details</dd>
147      </dl>
148
149      <h2>tagline.tt</h2>
150
151      <p>This template is included by many other templates requiring
152      those templates to provide the following variables:</p>
153
154      <dl class="variables">
155        <dt>version</dt>
156        <dd>IDLdoc version as a string</dd>
157       
158        <dt>date</dt>
159        <dd>string containing date of file creation</dd>
160      </dl>
161
162
163      <h2>pro-file.tt</h2>
164
165      <p>This file produces the output for the documentation of IDL
166      source code files. Variables provided to this template are all
167      those required by the navbar.tt and tagline.tt templates and
168      those listed below:</p>
169
170      <dl class="variables">
171        <dt>has_fields</dt>
172        <dd>base filename</dd>
173
174        <dt>is_class</dt>
175        <dd>boolean on whether this file corresponds to a class definition (and class variable is present)</dd>
176
177        <dt>class</dt>
178        <dd>IDLdocClass object</dd>
179
180        <dt>fields</dt>
181        <dd>base filename</dd>
182
183        <dt>pro_file</dt>
184        <dd>base filename</dd>
185
186        <dt>pro_dir</dt>
187        <dd>directory for file</dd>
188
189        <dt>root</dt>
190        <dd>relative path to the root of the library</dd>
191
192        <dt>last_modified</dt>
193        <dd>date last modified as a string</dd>
194
195        <dt>file_comments</dt>
196        <dd>file level comments</dd>
197
198        <dt>nroutines</dt>
199        <dd>number of IDLdocRoutine objects in routines array</dd>
200
201        <dt>routines</dt>
202        <dd>array of IDLdocRoutine objects; see below for variables in
203        these objects</dd>
204
205        <dt>nonavbar</dt>
206        <dd>set to 1 to indicate no navbar, otherwise set to 0</dd>
207
208        <dt>navbar_filename</dt>
209        <dd>filename of navbar template; appropriate for
210        INCLUDE_TEMPLATE directive</dd>
211
212        <dt>embed</dt>
213        <dd>0 for link to CSS, 1 for embed CSS</dd>
214       
215        <dt>css_location</dt>
216        <dd>if embed then string filename of CSS file location, o/w
217        href to CSS file; for all media types</dd>
218
219        <dt>print_css_location</dt>
220        <dd>if embed then string filename of CSS file location, o/w
221        href to CSS file; for printing only</dd>
222
223        <dt>footer</dt>
224        <dd>filename of user-created footer to insert; appropriate for
225        the INCLUDE directive</dd>
226
227        <dt>separator</dt>
228        <dd>correct path separator, / or \ depending on Unix or
229        Windows system</dd>
230
231        <dt>tagline_filename</dt>
232        <dd>name of template for the bottom of the file; appropriate
233        for the INCLUDE_TEMPLATE directive</dd>
234      </dl>
235
236
237      <h3>IDLdocRoutine objects in pro-file.tt</h3>
238
239      <dl class="variables">
240        <dt>routine_name</dt>
241        <dd>string name of the routine</dd>
242
243        <dt>routine_url</dt>
244        <dd>internal url to the start of the routine details</dd>
245
246        <dt>is_func</dt>
247        <dd>boolean on whether the routine is a function</dd>
248
249        <dt>obsolete</dt>
250        <dd>boolean on whether the routine is marked obsolete</dd>
251
252        <dt>abstract</dt>
253        <dd>boolean on whether the routine is abstract (i.e. not implemented)</dd>
254
255        <dt>private</dt>
256        <dd>boolean on whether the routine is private (i.e. not visible in USER mode)</dd>
257
258        <dt>categories_present</dt>
259        <dd>boolean on whether the routine is marked with categories</dd>
260
261        <dt>categories</dt>
262        <dd>string array of list of categories as listed in the source</dd>
263
264        <dt>ntotalparams</dt>
265        <dd>total number of positional parameters and keywords</dd>
266
267        <dt>nparams</dt>
268        <dd>number of positional parameters</dd>
269
270        <dt>params</dt>
271        <dd>array of IDLdocParam objects</dd>
272
273        <dt>nkeywords</dt>
274        <dd>number of keywords</dd>
275
276        <dt>keywords</dt>
277        <dd>array of IDLdocParam objects</dd>
278
279        <dt>short_comment</dt>
280        <dd>first sentence of the routine comments</dd>
281
282        <dt>statistics</dt>
283        <dd>boolean on whether the McCabe complexity statistics have been calculated</dd>
284
285        <dt>mccabe_cyclic</dt>
286        <dd>McCabe Cyclic complexity (computed)</dd>
287
288        <dt>mccabe_essential</dt>
289        <dd>McCabe Essential complexity (computed)</dd>
290
291        <dt>mccabe_mod_design</dt>
292        <dd>McCabe Modular Design complexity (computed)</dd>
293
294        <dt>routine_comments</dt>
295        <dd>string array of comments for the routine</dd>
296
297        <dt>preformat</dt>
298        <dd>true if the comments are to be stripped from the source code and placed in the output with the same line breaks and formatting as the source code</dd>
299
300        <dt>returns_present</dt>
301        <dd>boolean on whether the returns tag is present</dd>
302
303        <dt>returns</dt>
304        <dd>documents the return value of a function</dd>
305
306        <dt>examples_present</dt>
307        <dd>boolean on whether the examples tag is present</dd>
308
309        <dt>examples</dt>
310        <dd>string array of example code using the routine</dd>
311
312        <dt>author_present</dt>
313        <dd>boolean on whether the author tag is present</dd>
314
315        <dt>author</dt>
316        <dd>author(s) of the routine</dd>
317
318        <dt>version_present</dt>
319        <dd>boolean on whether the version tag is present</dd>
320
321        <dt>version</dt>
322        <dd>version of the routine</dd>
323
324        <dt>history_present</dt>
325        <dd>boolean on whether the history tag is present</dd>
326
327        <dt>history</dt>
328        <dd>string array of history of the routine</dd>
329
330        <dt>copyright_present</dt>
331        <dd>boolean on whether the copyright tag is present</dd>
332
333        <dt>copyright</dt>
334        <dd>string array of copyright information about the routine</dd>
335
336        <dt>obsolete_comments_present</dt>
337        <dd>boolean on whether the obsolete tag is present</dd>
338
339        <dt>obsolete_comments</dt>
340        <dd>comments following the obsolete tag and further explaining the status of the routine (and alternatives)</dd>
341
342        <dt>bugs_present</dt>
343        <dd>boolean on whether the bugs tag is present</dd>
344
345        <dt>bugs</dt>
346        <dd>string array describing known issues with the routine</dd>
347
348        <dt>todo_present</dt>
349        <dd>boolean on whether the todo tag is present</dd>
350
351        <dt>todo</dt>
352        <dd>string array of items that still need to be done for the routine</dd>
353
354        <dt>restrictions_present</dt>
355        <dd>boolean on whether the restrictions tag is present</dd>
356
357        <dt>restrictions</dt>
358        <dd>restrictions on the use of the routine</dd>
359
360        <dt>inherits_present</dt>
361        <dd>boolean on whether the inherits tag is present</dd>
362
363        <dt>inherits</dt>
364        <dd>desribes other classes the class inherits from (this is not needed any longer)</dd>
365
366        <dt>requires_present</dt>
367        <dd>boolean on whether the requires tag is present</dd>
368
369        <dt>requires</dt>
370        <dd>which IDL verion is necessary to run this routine</dd>
371
372        <dt>uses_present</dt>
373        <dd>boolean on whether the uses tag is present</dd>
374
375        <dt>uses</dt>
376        <dd>which routines this routine calls</dd>
377
378        <dt>common_blocks_present</dt>
379        <dd>boolean on whether the common block information is present</dd>
380
381        <dt>common_blocks</dt>
382        <dd>names of common blocks used by routine</dd>
383
384        <dt>precondition_present</dt>
385        <dd>boolean on whether the routine is marked with a precondition tag</dd>
386
387        <dt>precondition</dt>
388        <dd>condition that should be satisfied before the routine is executed</dd>
389
390        <dt>postcondition_present</dt>
391        <dd>boolean on whether the routine is marked with a postcondition tag</dd>
392
393        <dt>postcondition</dt>
394        <dd>condition that should be satisfied after the routine is executed</dd>
395
396      </dl>
397
398
399      <h3>IDLdocParam objects in pro-file.tt</h3>
400
401      <dl class="variables">
402        <dt>name</dt>
403        <dd>name of the parameter</dd>
404
405        <dt>in</dt>
406        <dd>true if parameter is an input to the routine</dd>
407
408        <dt>out</dt>
409        <dd>true if the parameter is an output to the routine</dd>
410
411        <dt>optional</dt>
412        <dd>true if parameter is optional</dd>
413
414        <dt>required</dt>
415        <dd>true if parameter is required</dd>
416
417        <dt>private</dt>
418        <dd>hidden if parameter is supposed to be hidden from users of the routine, but visible to developers</dd>
419
420        <dt>hidden</dt>
421        <dd>true if parameter is supposed to be hidden</dd>
422
423        <dt>type</dt>
424        <dd>data type of the parameter</dd>
425
426        <dt>boolean</dt>
427        <dd>true if the param is a switch</dd>
428
429        <dt>default</dt>
430        <dd>default value of the parameter</dd>
431
432        <dt>comments</dt>
433        <dd>string array of comments for parameter</dd>
434
435        <dt>delim</dt>
436        <dd>appropriate delimiter preceeding parameter in a syntax listing of the routine (i.e. always a comma unless it's the first parameter of a function call)</dd>
437      </dl>
438
439      [% IF footer NE '' %]<div id="footer">[% INCLUDE footer %]</div>[% END %]
440
441      [% INCLUDE_TEMPLATE tagline_filename %]
442     
443    </div>
444   
445  </body>
446</html>
Note: See TracBrowser for help on using the repository browser.