listFormat: Difference between revisions

From RPTools Wiki
Jump to navigation Jump to search
(added more examples)
No edit summary
Line 18: Line 18:
</source>
</source>
(prints items on separate lines)
(prints items on separate lines)
<source lang="mtmacro" line>
[R: listFormat( getSelectedNames(),
    "<select name='test'>%list</select>",
    "<option value='%item'>%item</option>",
    "" )
]
</source>
(creates an option list input (drop-down list selection) for an html form, with the names of selected tokens)


Convert a string list to html list:<source lang="mtmacro" line>
Convert a string list to html list:<source lang="mtmacro" line>
Line 36: Line 27:
<li>cat</li>
<li>cat</li>
</ul>
</ul>
Create an option list input (drop-down list selection) for an html form, with the names of selected tokens:
<source lang="mtmacro" line>
[R: listFormat( getSelectedNames( "%%" ),
    "<select name='test'>%list</select>",
    "<option value='%item'>%item</option>",
    "", 
    "%%" )
]
</source>
The first argument is the list, returned by {{func|getSelectedNames}}: it has a delimiter specified ("%%"), to avoid PC names with commas or anything other than "%%" from appearing as more than one item.  The second argument specifies html (text) to go around the formatted list, and the third is html to wrap around each item.  The fourth argument is blank, since no separator between items is needed in this case.  The fifth argument is usually optional, but in this case is the same delimiter specified in getSelectedNames, to allow listFormat to find each item.
}}
}}
[[Category:String List Function]]
[[Category:String List Function]]

Revision as of 18:03, 23 March 2010

listFormat() Function

Returns a custom-formatted version of the list.

Usage

[ listFormat(list, listFormat, itemFormat, separator) ]
[ listFormat(list, listFormat, itemFormat, separator, delim) ]
  • listFormat is a string that is emitted once. It should contain the text "%list", which is replaced with the formatted items.
  • itemFormat is emitted once per item. Each instance of "%item" in the string is replaced with the value of the list item.
  • separator is emitted in between the formatted items.

Example

[ listFormat("apple,bear,cat", "BEGIN LIST<br>%list<br>END LIST", "This item is: %item", "<br>") ]

(prints items on separate lines)

Convert a string list to html list:
[R: listFormat( "apple, bear, cat", "<ul>%list</ul>", "<li>%item</li>", "" ) ]
Produces:
  • apple
  • bear
  • cat


Create an option list input (drop-down list selection) for an html form, with the names of selected tokens:

[R: listFormat( getSelectedNames( "%%" ), 
    "<select name='test'>%list</select>", 
    "<option value='%item'>%item</option>", 
    "",  
    "%%" ) 
]
The first argument is the list, returned by getSelectedNames(): it has a delimiter specified ("%%"), to avoid PC names with commas or anything other than "%%" from appearing as more than one item. The second argument specifies html (text) to go around the formatted list, and the third is html to wrap around each item. The fourth argument is blank, since no separator between items is needed in this case. The fifth argument is usually optional, but in this case is the same delimiter specified in getSelectedNames, to allow listFormat to find each item.