Welcome, Registration, and other StartingPoints; Foswiki history & Wiki style; All the docs...
Edit | Attach | New | Raw | Delete | History | Print | Tools
You are here: System » RenderListPlugin

Render List Plugin

Render bullet lists in a variety of formats

Syntax Rules

RENDERLIST Macro

  • Place a %RENDERLIST{ <parameters> }% before any bullet list
    • The lists can be handcrafted, generated by another Plugin, a %TOC%, or the result of a FormattedSearch
  • Supported parameters:
    "name" or
    theme="name"
    Select a rendering theme
    focus="any text" Focus list on a bullet with specified text
    depth="2" Remove bullets with an indent greater then the depth. The depth is relative to the highlighted bullet in case focus is specified
  • Rendering themes can be defined by <name>_THEME Plugin settings
    • Each theme is defined by a comma separated list containing the render type and parameters required by that render type
    • There are different render types; this initial Plugin version has tree and icon render types
  • Format of the tree render type:
    • Set <name>_THEME = tree, <0/1 flag to suppress/show lines of first level>
  • Format of the icon render type:
    • Set <name>_THEME = icon, <0/1 flag to suppress/show lines of first level>, <icon width>, <icon height>, <spacer graph>, <T-line graph>, <I-line graph>, <L-line graph>, <icon image>
    • To define new Icon themes, attach images to this Plugin topic and set the parameters accordingly
  • Focus bullet list:
    • Search bullet list for text. If a bullet is found:
      1. Highlight text and remove [[][]] links on bullet where text is found
      2. Reduce bullet list to show only its parents and children
    • This is useful to maintain one large bullet list with links to team pages, representing the organization of a company. Each team page can INCLUDE the bullet list with focus set to itself.

Bullets

  • Use regular * bullets
  • Start with level one
    • Increase indentation only one level at a time
      • Like this
  • Decreasing indentation many levels at a time is OK
  • Wrap long text with continuation lines, the Plugin does not do that for you
    Align continuation lines with leading spaces like this
  • You can specify an icon for a bullet of render type tree or icon:
    • Attach the icon to this Plugin topic, e.g. myicon.gif, or
    • Use one of the existing icons: globe.gif globe.gif, home.gif home.gif, virtualhome.gif virtualhome.gif, group.gif group.gif, persons.gif persons.gif, virtualpersons.gif virtualpersons.gif, person.gif person.gif, virtualperson.gif virtualperson.gif, email.gif email.gif, trend.gif trend.gif, folder.gif folder.gif, folders.gif folders.gif, file.gif file.gif, files.gif files.gif, doc.gif doc.gif, image.gif image.gif, pdf.gif pdf.gif, ppt.gif ppt.gif, sound.gif sound.gif, xls.gif xls.gif, zip.gif zip.gif, see.gif see.gif
    • Refer to an attached icon at the beginning of the bullet with:
      • icon:myicon Followed by normal bullet text
    • Any DocumentGraphics icon can be used as well:
      • %ICON{name}% Followed by normal bullet text

Examples

You type: You get: (simulated) You get: (if installed)
%RENDERLIST{"thread"}%
   * one
      * one.a
         * one.a.x
      * one.b
         * one.b.x
           continue
         * one.b.y
            * icon:person Tim
            * icon:person Mico
   * two
   * three

one
one.a
one.a.x
one.b
one.b.x
continue
one.b.y
Tim
Mico
two
three

%RENDERLIST{"thread"}%

  • one
    • one.a
      • one.a.x
    • one.b
      • one.b.x continue
      • one.b.y
        • icon:person Tim
        • icon:person Mico
  • two
  • three

%RENDERLIST{"org"}%
   * one
      * one.a
         * one.a.x
      * one.b
         * one.b.x
           continue
         * one.b.y
            * icon:person Tim
            * icon:person Mico
   * two
   * three

  one
  one.a
  one.a.x
  one.b
  one.b.x
  continue
  one.b.y
  Tim
  Mico
  two
  three

%RENDERLIST{"org"}%

  • one
    • one.a
      • one.a.x
    • one.b
      • one.b.x continue
      • one.b.y
        • icon:person Tim
        • icon:person Mico
  • two
  • three

%RENDERLIST{ "org" focus="one.b" }%
   * one
      * one.a
         * one.a.x
      * one.b
         * one.b.x
           continue
         * one.b.y
            * icon:person Tim
            * icon:person Mico
   * two
   * three

  one
  one.b
  one.b.x
  continue
  one.b.y
  Tim
  Mico

%RENDERLIST{ "org" focus="one.b" }%

  • one
    • one.a
      • one.a.x
    • one.b
      • one.b.x continue
      • one.b.y
        • icon:person Tim
        • icon:person Mico
  • two
  • three

RenderListPlugin Settings

Plugin settings are stored as preference settings. To reference a plugin setting write %<plugin>_<setting>%, i.e. %RENDERPLUGIN_SHORTDESCRIPTION%

  • One line description, is shown in the TextFormattingRules topic:
    • Set SHORTDESCRIPTION = Render bullet lists in a variety of formats

  • Debug plugin: (See output in data/debug.txt)
    • Set DEBUG = 0

  • Themes are named <SOMETHING>_THEME and contain a comma delimited list of render type with parameters:
    • Set THREAD_THEME = tree, 1
    • Set HOME_THEME = icon, 1, 16, 16, empty.gif, dot_udr.gif, dot_ud.gif, dot_ur.gif, home.gif
    • Set ORG_THEME = icon, 0, 16, 16, empty.gif, dot_udr.gif, dot_ud.gif, dot_ur.gif, home.gif
    • Set GROUP_THEME = icon, 0, 16, 16, empty.gif, dot_udr.gif, dot_ud.gif, dot_ur.gif, group.gif
    • Set EMAIL_THEME = icon, 0, 16, 16, empty.gif, dot_udr.gif, dot_ud.gif, dot_ur.gif, email.gif
    • Set TREND_THEME = icon, 0, 16, 16, empty.gif, dot_udr.gif, dot_ud.gif, dot_ur.gif, trend.gif
    • Set FILE_THEME = icon, 0, 16, 16, empty.gif, dot_udr.gif, dot_ud.gif, dot_ur.gif, file.gif

Plugin Installation Instructions

Note: You do not need to install anything on the browser to use this plugin. The following instructions are for the administrator who installs the plugin on the Foswiki server.

  • Download the ZIP file from the Plugin Home (see below)
  • Unzip RenderListPlugin.zip in your Foswiki installation directory. Content:
    File: Description:
    data/System/RenderListPlugin.txt Plugin topic
    data/System/RenderListPlugin.txt,v Plugin topic repository
    lib/Foswiki/Plugins/RenderListPlugin.pm Plugin Perl module
    pub/System/RenderListPlugin/*.gif Image files for themes
  • Run the configure script to enable the Plugin
  • Test if the installation was successful: See if above examples work

Plugin Info

| Copyright: | Copyright (C) 2006-2007 Peter Thoeny, peter@thoeny.org and TWiki Contributors; 2008 Foswiki Contributors |

License: GPL (GNU General Public License)
Plugin Version: 16 Dec 2008 (2.1)
Change History:  
16 Dec 2008: 2.1: Kenneth Lavrsen. Foswiki version
15 Jan 2008: 2.0: Kenneth Lavrsen. No more reporting warnings in the error log when a render list starts at deeper level than 1
30 Sep 2007: Added VarRENDERLIST to have it listed in Macros
23 Sep 2006: Support for img tag and image URL after icon: (suggested by TWiki:Main.JanFilipsky); support for DocumentGraphics icons, such as %ICON{folder}% instead of icon:folder; added files.gif and folders.gif (contributed by TWiki:Main.SteveHobbs)
25 Apr 2006: SVN sync, Cairo + Dakar compatibility
14 Apr 2006: TWikiRelease04x00 compatibility update
21 Nov 2004: Added benchmarks (no code changes)
21 Mar 2004: Internal change: Fixed unofficial function call
01 Mar 2004: Added FILE_THEME and folder/file icons
29 Dec 2003: Fixed rendering issue if focus bullet contains icon:name; added TREND_THEME
16 Dec 2003: Specify icons with icon:name syntax
11 Dec 2003: Added focus and depth parameters
05 Dec 2003: Fixed rendering issue with IE; added EMAIL_THEME
02 Dec 2003: Initial version
CPAN Dependencies: none
Other Dependencies: none
Perl Version: 5.008
Plugin Home: http://foswiki.org/Extensions/RenderListPlugin
Feedback: http://foswiki.org/Extensions/RenderListPluginDev


Related Topics: Plugins, DeveloperDocumentationCategory, AdminDocumentationCategory, DefaultPreferences, SitePreferences, Foswiki:Extensions/TreePlugin spacer
Copyright © 2014 Atomikos BVBA. Transaction Management for Extreme Transaction Processing and SOA Environments serving ISV, Commercial, OEM and Open Source Markets
Site map RSS ATOM