Difference: TreeBrowserPlugin (r4 vs. r3)

r4 - 10 Nov 2013 - 09:58 - AdminUser r3 - 12 Oct 2010 - 15:36 - AdminUser

Tree Browser Plugin

Tree Browser Plugin

Renders a bulleted or numbered list as a collapsible/expandable tree of nodes.

Renders a bulleted or numbered list as a collapsible/expandable tree of nodes.

Acknowledgment

Acknowledgment

This plugin leverages the dTree JavaScript tree menu by Geir Landr� as well as code borrowed from Foswiki:Extensions.RenderListPlugin.

This plugin leverages the dTree JavaScript tree menu by Geir Landr� as well as code borrowed from Foswiki:Extensions.RenderListPlugin.

Syntax Rules

Syntax Rules

Place the tag %TREEBROWSER{ parameters }% immediately before a bulleted or numbered list. The lists can be handcrafted, generated by another Plugin, a %TOC%, or the result of a FormattedSearch. The list will be rendered in a tree-like fashion (similar to the explorer folder list). Whenever a new indentation level is started, the subsequent nodes at this or a lower indentation level are shown as descendents of the preceding node. The following parameters can be used to configure the appearance of the tree:

Place the tag %TREEBROWSER{ parameters }% immediately before a bulleted or numbered list. The lists can be handcrafted, generated by another Plugin, a %TOC%, or the result of a FormattedSearch. The list will be rendered in a tree-like fashion (similar to the explorer folder list). Whenever a new indentation level is started, the subsequent nodes at this or a lower indentation level are shown as descendents of the preceding node. The following parameters can be used to configure the appearance of the tree:

ParameterDescriptionDefault
"name" or
theme="name"
Select a rendering theme none
title Required. This text serves as the root of the tree none
openAll If on, the tree is shown fully expanded. off
openTo Must be an integer. If present, the tree is expanded to the given node, as numbered from the root. 0
shared Must be a string. If present, the state of the tree is shared across all trees using this string. For example, if the tree is used in the WebLeftBar?, the state will hold at all topics with this WebLeftBar?. It's basically the name of the JavaScript? object representing your tree. none
uselines Set to false if you don't want to show lines linking nodes and leafs in the tree true
useplusminus Set to false if you don't want to show '-' and '+' signs. One can use something like onclick='javascript: tree.o($index);' in the tree item to trigger opening/closing of a node. true
noindent Set to true to show children at the level of their parent. It suppresses children indentation. Enabling noindent will disable uselines and useplusminus. false
nocss Set to true to prevent inclusion of dtree.css. false
closesamelevel If true only one node within a parent can be expanded at the same time. openAll() and closeAll() functions do not work when this is enabled. false
noroot Prevents rendering of the title line. Useful if you don't want to show any title. false
warn Text to be displayed if no tree was found. none
style Name of the CSS file to include without the .css extension. The CSS file must be attached to this topic. dtree
autotoggle Set to on will enable node open/close when clicking the node item. Typically used for menu style tree along with noindent. off
nodeactions Defines node functionality in a comma separated list of HTML event and dTree function. Typically used for menu style tree along with noindent. Format:
 [,...]
event is an HTML event e.g. onclick, ondblclick, onmouseover, onmouseout...
function is one of the three dTree functions: open, close, toggle
none
popup Set to on to enable pop-up menu mode. Typically used with closesamelevel. See pop-up menu example. off
closepopupdelay Pop-up mode only. Delay in millisecond before all popup close once the mouse cursor has left the menu structure. 1000
popupoffset Provides x and y offset from parent node for pop-up menus. Allows for fine tunning of pop-up position. 0,0
firstpopupoffset Provides x and y offset for first level pop-up menus. Introduce as a workaround for PatternSkin issues. 0,0
useopacity Used to generate extra dtreeTransluscentBackground div. Enables popup with translucent background and opaque text. off
ParameterDescriptionDefault
"name" or
theme="name"
Select a rendering theme none
title Required. This text serves as the root of the tree none
openAll If on, the tree is shown fully expanded. off
openTo Must be an integer. If present, the tree is expanded to the given node, as numbered from the root. 0
shared Must be a string. If present, the state of the tree is shared across all trees using this string. For example, if the tree is used in the WebLeftBar?, the state will hold at all topics with this WebLeftBar?. It's basically the name of the JavaScript? object representing your tree. none
uselines Set to false if you don't want to show lines linking nodes and leafs in the tree true
useplusminus Set to false if you don't want to show '-' and '+' signs. One can use something like onclick='javascript: tree.o($index);' in the tree item to trigger opening/closing of a node. true
noindent Set to true to show children at the level of their parent. It suppresses children indentation. Enabling noindent will disable uselines and useplusminus. false
nocss Set to true to prevent inclusion of dtree.css. false
closesamelevel If true only one node within a parent can be expanded at the same time. openAll() and closeAll() functions do not work when this is enabled. false
noroot Prevents rendering of the title line. Useful if you don't want to show any title. false
warn Text to be displayed if no tree was found. none
style Name of the CSS file to include without the .css extension. The CSS file must be attached to this topic. dtree
autotoggle Set to on will enable node open/close when clicking the node item. Typically used for menu style tree along with noindent. off
nodeactions Defines node functionality in a comma separated list of HTML event and dTree function. Typically used for menu style tree along with noindent. Format:
 [,...]
event is an HTML event e.g. onclick, ondblclick, onmouseover, onmouseout...
function is one of the three dTree functions: open, close, toggle
none
popup Set to on to enable pop-up menu mode. Typically used with closesamelevel. See pop-up menu example. off
closepopupdelay Pop-up mode only. Delay in millisecond before all popup close once the mouse cursor has left the menu structure. 1000
popupoffset Provides x and y offset from parent node for pop-up menus. Allows for fine tunning of pop-up position. 0,0
firstpopupoffset Provides x and y offset for first level pop-up menus. Introduce as a workaround for PatternSkin issues. 0,0
useopacity Used to generate extra dtreeTransluscentBackground div. Enables popup with translucent background and opaque text. off

Rendering themes can be defined by _THEME Plugin settings

Rendering themes can be defined by _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; currently this Plugin supports tree and icon render types
  • Format of the tree render type:
    • Set < name >_THEME = tree
  • Format of the icon render type:
    • Set < name >_THEME = icon, [< root icon image >], [< icon image >], [< folder icon image >], [< open folder icon image >]
    • The root icon image is shown at the root of the tree, the icon image is shown at every leaf node, the folder icon image is shown at every collapsed internal node, and the open folder icon image is shown at every expanded internal node. The icon images point to files attached to TWiki topics and are referenced in the standard manner. If no path is given, the images are taken from DocumentGraphics.
    • If an icon image is omitted, the following defaults are chosen: empty.gif, page.gif, folder.gif, folderopen.gif
  • 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; currently this Plugin supports tree and icon render types
  • Format of the tree render type:
    • Set < name >_THEME = tree
  • Format of the icon render type:
    • Set < name >_THEME = icon, [< root icon image >], [< icon image >], [< folder icon image >], [< open folder icon image >]
    • The root icon image is shown at the root of the tree, the icon image is shown at every leaf node, the folder icon image is shown at every collapsed internal node, and the open folder icon image is shown at every expanded internal node. The icon images point to files attached to TWiki topics and are referenced in the standard manner. If no path is given, the images are taken from DocumentGraphics.
    • If an icon image is omitted, the following defaults are chosen: empty.gif, page.gif, folder.gif, folderopen.gif

If JavaScript is not enabled, the list is rendered as usual, and the =%TREEBROWSER% tag is omitted.

If JavaScript is not enabled, the list is rendered as usual, and the =%TREEBROWSER% tag is omitted.

Bullets

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 fine
  • Keep labels short as text does not wrap.
  • You can specify an icon for a bullet of render type tree or icon:
    • Attach the icon to a topic, e.g. myicon.gif, or
    • Use one of the existing icons: globe.gif %ATTACHURL%/globe.gif, home.gif %ATTACHURL%/home.gif, virtualhome.gif %ATTACHURL%/virtualhome.gif, group.gif %ATTACHURL%/group.gif, persons.gif %ATTACHURL%/persons.gif, virtualpersons.gif virtualpersons.gif, person.gif %ATTACHURL%/person.gif, virtualperson.gif %ATTACHURL%/virtualperson.gif, email.gif %ATTACHURL%/email.gif, trend.gif %ATTACHURL%/trend.gif, folder.gif %ATTACHURL%/folder.gif, file.gif %ATTACHURL%/file.gif, doc.gif %ATTACHURL%/doc.gif, image.gif %ATTACHURL%/image.gif, pdf.gif %ATTACHURL%/pdf.gif, ppt.gif %ATTACHURL%/ppt.gif, sound.gif %ATTACHURL%/sound.gif, xls.gif %ATTACHURL%/xls.gif, zip.gif %ATTACHURL%/zip.gif, see.gif %ATTACHURL%/see.gif
    • Refer to an attached icon at the beginning of the bullet with:
      • icon:myicon.gif Followed by normal bullet text
    • Refer to any icon at the beginning of the bullet using a full path or URL:
      • icon:https://nkwiki.de/foswiki/pub/System/DocumentGraphics/xls.png Followed by normal bullet text
  • 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 fine
  • Keep labels short as text does not wrap.
  • You can specify an icon for a bullet of render type tree or icon:
    • Attach the icon to a topic, e.g. myicon.gif, or
    • Use one of the existing icons: globe.gif %ATTACHURL%/globe.gif, home.gif %ATTACHURL%/home.gif, virtualhome.gif %ATTACHURL%/virtualhome.gif, group.gif %ATTACHURL%/group.gif, persons.gif %ATTACHURL%/persons.gif, virtualpersons.gif virtualpersons.gif, person.gif %ATTACHURL%/person.gif, virtualperson.gif %ATTACHURL%/virtualperson.gif, email.gif %ATTACHURL%/email.gif, trend.gif %ATTACHURL%/trend.gif, folder.gif %ATTACHURL%/folder.gif, file.gif %ATTACHURL%/file.gif, doc.gif %ATTACHURL%/doc.gif, image.gif %ATTACHURL%/image.gif, pdf.gif %ATTACHURL%/pdf.gif, ppt.gif %ATTACHURL%/ppt.gif, sound.gif %ATTACHURL%/sound.gif, xls.gif %ATTACHURL%/xls.gif, zip.gif %ATTACHURL%/zip.gif, see.gif %ATTACHURL%/see.gif
    • Refer to an attached icon at the beginning of the bullet with:
      • icon:myicon.gif Followed by normal bullet text
    • Refer to any icon at the beginning of the bullet using a full path or URL:
      • icon:https://nkwiki.de/foswiki/pub/System/DocumentGraphics/xls.png Followed by normal bullet text

CSS classes

CSS classes

A number of classes are used to facilitate look and feel customizations through CSS.

A number of classes are used to facilitate look and feel customizations through CSS.

Constant class

Constant class

This class won't change from one tree to the other:

This class won't change from one tree to the other:

  • treeBrowserPlugin: given to the div element encapsulating the whole tree and javascript.
  • treeBrowserPlugin: given to the div element encapsulating the whole tree and javascript.

Variable classes

Variable classes

Those classes are prefixed with the style parameter. For clarity of the documentation we used the default dtree prefix. Variable classes allow for multiple tree style support on one page.

Those classes are prefixed with the style parameter. For clarity of the documentation we used the default dtree prefix. Variable classes allow for multiple tree style support on one page.

  • dtree: given to the div element encapsulating the whole tree. Since v0.1.
  • dtreeRoot: given to the div element encapsulating the root or title of the tree. Introduced in v1.1.
  • dtreeLeaf: given to the div element encapsulating a tree item without children. Introduced in v0.9.
  • dtreeNodeOpened: given to the div element encapsulating a tree item that is showing children. Introduced in v0.9.
  • dtreeNodeClosed: given to the div element encapsulating a tree item that is hiding children. Introduced in v0.9.
  • dtreeChildren: given to the div element encapsulating the children of a tree item. Changed in v0.9. Formerly clip.
  • dtreeLevel0: given to the div element encapsulating the children of the tree root item. Introduced in v0.9.
  • dtreeLevel1: given to the div element encapsulating the children of level 0 items. Introduced in v0.9.
  • dtreeLevel2: given to the div element encapsulating the children of level 1 items. Introduced in v0.9.
  • dtreeLeveln: given to the div element encapsulating the children of level n-1 items. Introduced in v0.9.
  • dtreeTransluscentBackground: given to the div element used for popup translucent background. Introduced in v1.5.
  • dtreeFakeItem: given to the div element simulating nodes and leaf in dtreeTransluscentBackground. It guarantees same size for the translucent background and actual dtreeChildren div. Typically you should give dtreeFakeItem the same margin and padding properties as for dtreeLeaf, dtreeNodeOpened and dtreeNodeclosed. Introduced in v1.5.
  • dtree: given to the div element encapsulating the whole tree. Since v0.1.
  • dtreeRoot: given to the div element encapsulating the root or title of the tree. Introduced in v1.1.
  • dtreeLeaf: given to the div element encapsulating a tree item without children. Introduced in v0.9.
  • dtreeNodeOpened: given to the div element encapsulating a tree item that is showing children. Introduced in v0.9.
  • dtreeNodeClosed: given to the div element encapsulating a tree item that is hiding children. Introduced in v0.9.
  • dtreeChildren: given to the div element encapsulating the children of a tree item. Changed in v0.9. Formerly clip.
  • dtreeLevel0: given to the div element encapsulating the children of the tree root item. Introduced in v0.9.
  • dtreeLevel1: given to the div element encapsulating the children of level 0 items. Introduced in v0.9.
  • dtreeLevel2: given to the div element encapsulating the children of level 1 items. Introduced in v0.9.
  • dtreeLeveln: given to the div element encapsulating the children of level n-1 items. Introduced in v0.9.
  • dtreeTransluscentBackground: given to the div element used for popup translucent background. Introduced in v1.5.
  • dtreeFakeItem: given to the div element simulating nodes and leaf in dtreeTransluscentBackground. It guarantees same size for the translucent background and actual dtreeChildren div. Typically you should give dtreeFakeItem the same margin and padding properties as for dtreeLeaf, dtreeNodeOpened and dtreeNodeclosed. Introduced in v1.5.

Examples

Examples

Basic

Basic

%TREEBROWSER{"file" title="[[%HOMETOPIC%][%INCLUDINGWEB% Web Home]]" shared="left"}%
   * [[WebChanges][Changes]] 
   * [[WebIndex][Index]]
   * [[WebSearch][Search]]
   * this is a very very very long text
   * *Webs*
%WEBLIST{"      * [[$name.%HOMETOPIC%][$name]]"}%
%TREEBROWSER{"file" title="[[%HOMETOPIC%][%INCLUDINGWEB% Web Home]]" shared="left"}%
   * [[WebChanges][Changes]] 
   * [[WebIndex][Index]]
   * [[WebSearch][Search]]
   * this is a very very very long text
   * *Webs*
%WEBLIST{"      * [[$name.%HOMETOPIC%][$name]]"}%

generates

generates

  
If installedSimulated
open all | close all
If installedSimulated
open all | close all

This tree could be used in the WebLeftBar?, for example. Clicking on the plus icon next to Webs will expand the subtree below that node.

This tree could be used in the WebLeftBar?, for example. Clicking on the plus icon next to Webs will expand the subtree below that node.

To add "collapse/expand all nodes" functionalities do something like:

To add "collapse/expand all nodes" functionalities do something like:

open all | close all
%TREEBROWSER{"file" title="[[%HOMETOPIC%][%INCLUDINGWEB% Web Home]]" shared="tree"}%
...
open all | close all
%TREEBROWSER{"file" title="[[%HOMETOPIC%][%INCLUDINGWEB% Web Home]]" shared="tree"}%
...

Menu

Menu

autotoggle example

autotoggle example

Code

Code

%TREEBROWSER{"thread" noroot="on" shared="menudemo" noindent="on" autotoggle="on" style="dmenu"}%
   * Vegetables
      * Carot
      * Leek
      * Tomato
      * Potato 
   * Fruits
      * Banana 
      * Grape fruit       
         * Pink
         * Yellow 
      * Peach
%TREEBROWSER{"thread" noroot="on" shared="menudemo" noindent="on" autotoggle="on" style="dmenu"}%
   * Vegetables
      * Carot
      * Leek
      * Tomato
      * Potato 
   * Fruits
      * Banana 
      * Grape fruit       
         * Pink
         * Yellow 
      * Peach
If installedSimulated
If installedSimulated

nodeactions example

nodeactions example

Code

Code

%TREEBROWSER{"thread" noroot="on" shared="memenudemo" noindent="on" style="dmenu" nodeactions="onmouseover open, onclick close"}%
   * Vegetables
      * Carot
      * Leek
      * Tomato
      * Potato 
   * Fruits
      * Banana
      * Grape fruit       
         * Pink
         * Yellow 
      * Peach
%TREEBROWSER{"thread" noroot="on" shared="memenudemo" noindent="on" style="dmenu" nodeactions="onmouseover open, onclick close"}%
   * Vegetables
      * Carot
      * Leek
      * Tomato
      * Potato 
   * Fruits
      * Banana
      * Grape fruit       
         * Pink
         * Yellow 
      * Peach

Pop-up example

Pop-up example

Code

Code

%TREEBROWSER{"thread" noroot="on" shared="memenudemo" noindent="on" style="dmenu" nodeactions="onmouseover open, onclick close", closesamelevel="on" popup="on" popupoffset="-10,-4" }%
   * Vegetables
      * Carot
      * Leek
      * Tomato
      * Potato 
   * Fruits
      * Banana
      * Grape fruit       
         * Pink
         * Yellow 
      * Peach
%TREEBROWSER{"thread" noroot="on" shared="memenudemo" noindent="on" style="dmenu" nodeactions="onmouseover open, onclick close", closesamelevel="on" popup="on" popupoffset="-10,-4" }%
   * Vegetables
      * Carot
      * Leek
      * Tomato
      * Potato 
   * Fruits
      * Banana
      * Grape fruit       
         * Pink
         * Yellow 
      * Peach

Simulated

Simulated

Pop-up menu opacity example

Pop-up menu opacity example

Code

Code

%TREEBROWSER{"thread" noroot="on" shared="opacitynotabledemo" noindent="on" style="smenu" nodeactions="onmouseover open, onclick close" popup="on" closesamelevel="on" closepopupdelay="100" firstpopupoffset="-60,0" popupoffset="-20,0" useopacity="on"}%
   * Vegetables
      * Carot
      * Leek
      * Tomato
      * Potato
   * Fruits
      * Banana
         * Green
         * Yellow 
      * Grape fruit       
         * Pink
         * Yellow 
      * Peach
%TREEBROWSER{"thread" noroot="on" shared="opacitynotabledemo" noindent="on" style="smenu" nodeactions="onmouseover open, onclick close" popup="on" closesamelevel="on" closepopupdelay="100" firstpopupoffset="-60,0" popupoffset="-20,0" useopacity="on"}%
   * Vegetables
      * Carot
      * Leek
      * Tomato
      * Potato
   * Fruits
      * Banana
         * Green
         * Yellow 
      * Grape fruit       
         * Pink
         * Yellow 
      * Peach

Simulated

Simulated

Plugin Settings

Plugin Settings

Plugin settings are stored as preferences variables. To reference a plugin setting write %_%, i.e. %TREEBROWSERPLUGIN_SHORTDESCRIPTION%

Plugin settings are stored as preferences variables. To reference a plugin setting write %_%, i.e. %TREEBROWSERPLUGIN_SHORTDESCRIPTION%

  • One line description, is shown in the TextFormattingRules topic:
    • Set SHORTDESCRIPTION = Renders a list as a collapsable/expandable tree.
  • One line description, is shown in the TextFormattingRules topic:
    • Set SHORTDESCRIPTION = Renders a list as a collapsable/expandable tree.
  • Debug plugin: (See output in data/debug.txt)
    • Set DEBUG = 0
  • Debug plugin: (See output in data/debug.txt)
    • Set DEBUG = 0
  • Themes are named _THEME and contain a comma delimited list of render type with parameters:
    • Set THREAD_THEME = tree
    • Set HOME_THEME = icon, home.gif
    • Set ORG_THEME = icon, base.gif, home.gif, person.gif, persons.gif
    • Set GROUP_THEME = icon, tip.gif, page.gif, person.gif, group.gif
    • Set EMAIL_THEME = icon, email.gif
    • Set TREND_THEME = icon, trend.gif
    • Set FILE_THEME = icon, empty.gif
    • Set DIR_THEME = icon, empty.gif
    • Set FORUM_THEME = icon, group.gif, index.gif, indexlist.gif, indexlist.gif
  • Themes are named _THEME and contain a comma delimited list of render type with parameters:
    • Set THREAD_THEME = tree
    • Set HOME_THEME = icon, home.gif
    • Set ORG_THEME = icon, base.gif, home.gif, person.gif, persons.gif
    • Set GROUP_THEME = icon, tip.gif, page.gif, person.gif, group.gif
    • Set EMAIL_THEME = icon, email.gif
    • Set TREND_THEME = icon, trend.gif
    • Set FILE_THEME = icon, empty.gif
    • Set DIR_THEME = icon, empty.gif
    • Set FORUM_THEME = icon, group.gif, index.gif, indexlist.gif, indexlist.gif

Plugin Installation Instructions

Plugin Installation Instructions

  1. Download the zip file.
  2. Unzip TreeBrowserPlugin.zip in your twiki installation directory. Content:
    File:Description:
    data/TWiki/TreeBrowserPlugin.txt Plugin topic
    lib/TWiki/Plugins/TreeBrowserPlugin.pm Plugin Perl module
    pub/TWiki/TreeBrowserPlugin/dtree.css part of dtree
    pub/TWiki/TreeBrowserPlugin/dmenu.css Menu CSS
    pub/TWiki/TreeBrowserPlugin/smenu.css Nicer menu CSS
    pub/TWiki/TreeBrowserPlugin/dtree.js part of dtree
    pub/TWiki/TreeBrowserPlugin/base.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/cd.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/empty.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/folder.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/folderopen.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/globe.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/imgfolder.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/join.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/joinbottom.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/line.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/minus.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/minusbottom.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/musicfolder.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/nolines_minus.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/nolines_plus.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/page.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/plus.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/plusbottom.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/question.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/trash.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/doc.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/email.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/file.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/group.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/home.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/image.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/pdf.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/person.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/persons.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/ppt.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/see.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/sound.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/trend.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/virtualhome.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/virtualperson.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/virtualpersons.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/xls.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/zip.gif icons from RenderListPlugin
  1. Download the zip file.
  2. Unzip TreeBrowserPlugin.zip in your twiki installation directory. Content:
    File:Description:
    data/TWiki/TreeBrowserPlugin.txt Plugin topic
    lib/TWiki/Plugins/TreeBrowserPlugin.pm Plugin Perl module
    pub/TWiki/TreeBrowserPlugin/dtree.css part of dtree
    pub/TWiki/TreeBrowserPlugin/dmenu.css Menu CSS
    pub/TWiki/TreeBrowserPlugin/smenu.css Nicer menu CSS
    pub/TWiki/TreeBrowserPlugin/dtree.js part of dtree
    pub/TWiki/TreeBrowserPlugin/base.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/cd.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/empty.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/folder.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/folderopen.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/globe.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/imgfolder.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/join.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/joinbottom.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/line.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/minus.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/minusbottom.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/musicfolder.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/nolines_minus.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/nolines_plus.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/page.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/plus.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/plusbottom.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/question.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/trash.gif part of dtree
    pub/TWiki/TreeBrowserPlugin/doc.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/email.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/file.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/group.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/home.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/image.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/pdf.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/person.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/persons.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/ppt.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/see.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/sound.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/trend.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/virtualhome.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/virtualperson.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/virtualpersons.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/xls.gif icons from RenderListPlugin
    pub/TWiki/TreeBrowserPlugin/zip.gif icons from RenderListPlugin

Known issues

Known issues

  • PatternSkin prevents javascript to determine menu position in topic content. Use firstpopupoffset="-163,0" as a workaround.
  • NatSkin CSS natMainContent overflow:hidden causes z-index bug in FireFox. Workaround by removing or overriding overflow:hidden for natMainContent.
  • dtreeTranslucentBackground only works for pop-up and not level 0. Sizing issue...
  • Pop-up sub-menu won't work on IE for dmenu style. Workaround by using smenu.
  • PatternSkin prevents javascript to determine menu position in topic content. Use firstpopupoffset="-163,0" as a workaround.
  • NatSkin CSS natMainContent overflow:hidden causes z-index bug in FireFox. Workaround by removing or overriding overflow:hidden for natMainContent.
  • dtreeTranslucentBackground only works for pop-up and not level 0. Sizing issue...
  • Pop-up sub-menu won't work on IE for dmenu style. Workaround by using smenu.

Planned Enhancements

Planned Enhancements

See TWiki:Plugins.TreeBrowserPluginDev.

See TWiki:Plugins.TreeBrowserPluginDev.

Plugin Info

Plugin Info

Author(s): TWiki:Main.ThomasWeigert & TWiki:Main.StephaneLenclud
Version: 5479 (2009-11-10)
Release: v2.0
Change History:  
10 Nov 2009: (v2.0) - Fixed version numbering for configure. By Ingo Kappler.
20 Feb 2009: (v1.9) - Foswiki port. By St�phane Lenclud.
29 Mar 2007: (v1.8) - Improved smenu CSS and fixing warning. By St�phane Lenclud.
18 Mar 2007: (v1.7) - Improved smenu CSS, resolved highlighting gap issue . Now closing sub-menu when highlighting leaf. By St�phane Lenclud.
18 Mar 2007: (v1.6) - Sub-menus now working in IE with smenu style. Closing sub-menu when going back one level with mouse cursor. By St�phane Lenclud.
18 Mar 2007: (v1.5) - Adding useopacity parameter. Adding smenu.css. By St�phane Lenclud.
16 Mar 2007: (v1.4) - Adding firstpopupoffset allowing workaround for PatternSkin problem. By St�phane Lenclud.
14 Mar 2007: (v1.3) - Adding popup, closepopudelay and popupoffset parameters. Implemented pop-up menu. Improved dmenu.css. By St�phane Lenclud.
11 Mar 2007: (v1.2) - Adding nodeactions parameter. Improved dmenu.css. By St�phane Lenclud.
10 Mar 2007: (v1.1) - Adding autotoggle parameter. It's useful for menu style. Improved dmenu.css. Added dtreeRoot CSS class. By St�phane Lenclud.
09 Mar 2007: (v1.0) - Improved CSS with variable class name allowing for multiple tree with different style on the same topic. Now bullet icon: supports full URL or URI. By St�phane Lenclud.
09 Mar 2007: (v0.9) - Adding style parameter. Improved CSS. Fixes extra '\n' in dot pm. By St�phane Lenclud.
07 Mar 2007: (v0.8) - Adding noroot and warn parameters. Now using preRenderingHandler instead of the deprecated startRenderingHandler . %TREEBROWSER% are hidden if there is no tree to render. Fixes TOC icons problem with TWiki:Plugins.NatSkin. By St�phane Lenclud.
01 Oct 2006: (v0.7) - Adding useplusminus , noindent and nocss parameters. By St�phane Lenclud.
17 Sep 2006: (v0.6) - Adding closesamelevel and uselines functionalities, fix rendering issues with Firefox and pattern skin, fix warnings in apache error logs. By St�phane Lenclud
12 Apr 2006: (v0.5) - Minor update for TWiki:Codev.TWikiRelease04x00
16 Sep 2005: (v0.4) - Fix bug in openAll and openTo functions
06 Sep 2005: (v0.3) - Adopt the rendering themes from TWiki:Plugins.RenderListPlugin
05 Sep 2005: (v0.2) - Support sharing of tree state across topics. If JavaScript is not enabled, render the list in standard fashion. Correct user input error containig a line that is too deeply indented.
04 Sep 2005: (v0.1) - Initial version
TWiki Dependency: $TWiki::Plugins::VERSION 1.024
CPAN Dependencies: none
Other Dependencies: none
Perl Version: 5.005, 5.8.7
License: GPL (GNU General Public License)
Plugin Home: http://TWiki.org/cgi-bin/view/Plugins/TreeBrowserPlugin
Feedback: http://TWiki.org/cgi-bin/view/Plugins/TreeBrowserPluginDev
Author(s): TWiki:Main.ThomasWeigert & TWiki:Main.StephaneLenclud
Version: 5479 (2009-11-10)
Release: v2.0
Change History:  
10 Nov 2009: (v2.0) - Fixed version numbering for configure. By Ingo Kappler.
20 Feb 2009: (v1.9) - Foswiki port. By St�phane Lenclud.
29 Mar 2007: (v1.8) - Improved smenu CSS and fixing warning. By St�phane Lenclud.
18 Mar 2007: (v1.7) - Improved smenu CSS, resolved highlighting gap issue . Now closing sub-menu when highlighting leaf. By St�phane Lenclud.
18 Mar 2007: (v1.6) - Sub-menus now working in IE with smenu style. Closing sub-menu when going back one level with mouse cursor. By St�phane Lenclud.
18 Mar 2007: (v1.5) - Adding useopacity parameter. Adding smenu.css. By St�phane Lenclud.
16 Mar 2007: (v1.4) - Adding firstpopupoffset allowing workaround for PatternSkin problem. By St�phane Lenclud.
14 Mar 2007: (v1.3) - Adding popup, closepopudelay and popupoffset parameters. Implemented pop-up menu. Improved dmenu.css. By St�phane Lenclud.
11 Mar 2007: (v1.2) - Adding nodeactions parameter. Improved dmenu.css. By St�phane Lenclud.
10 Mar 2007: (v1.1) - Adding autotoggle parameter. It's useful for menu style. Improved dmenu.css. Added dtreeRoot CSS class. By St�phane Lenclud.
09 Mar 2007: (v1.0) - Improved CSS with variable class name allowing for multiple tree with different style on the same topic. Now bullet icon: supports full URL or URI. By St�phane Lenclud.
09 Mar 2007: (v0.9) - Adding style parameter. Improved CSS. Fixes extra '\n' in dot pm. By St�phane Lenclud.
07 Mar 2007: (v0.8) - Adding noroot and warn parameters. Now using preRenderingHandler instead of the deprecated startRenderingHandler . %TREEBROWSER% are hidden if there is no tree to render. Fixes TOC icons problem with TWiki:Plugins.NatSkin. By St�phane Lenclud.
01 Oct 2006: (v0.7) - Adding useplusminus , noindent and nocss parameters. By St�phane Lenclud.
17 Sep 2006: (v0.6) - Adding closesamelevel and uselines functionalities, fix rendering issues with Firefox and pattern skin, fix warnings in apache error logs. By St�phane Lenclud
12 Apr 2006: (v0.5) - Minor update for TWiki:Codev.TWikiRelease04x00
16 Sep 2005: (v0.4) - Fix bug in openAll and openTo functions
06 Sep 2005: (v0.3) - Adopt the rendering themes from TWiki:Plugins.RenderListPlugin
05 Sep 2005: (v0.2) - Support sharing of tree state across topics. If JavaScript is not enabled, render the list in standard fashion. Correct user input error containig a line that is too deeply indented.
04 Sep 2005: (v0.1) - Initial version
TWiki Dependency: $TWiki::Plugins::VERSION 1.024
CPAN Dependencies: none
Other Dependencies: none
Perl Version: 5.005, 5.8.7
License: GPL (GNU General Public License)
Plugin Home: http://TWiki.org/cgi-bin/view/Plugins/TreeBrowserPlugin
Feedback: http://TWiki.org/cgi-bin/view/Plugins/TreeBrowserPluginDev

Related Topics: TWiki:Plugins.RenderListPlugin, TWiki:Plugins.TreePlugin

Related Topics: TWiki:Plugins.RenderListPlugin, TWiki:Plugins.TreePlugin

IAttachmentActionSizeDateWhoComment
base.gifgifbase.gifmanage 1.0 K 10 Nov 2009 - 22:59AdminUser Saved by install script
cd.gifgifcd.gifmanage 0.2 K 10 Nov 2009 - 22:59AdminUser Saved by install script
dmenu.csscssdmenu.cssmanage 2.8 K 10 Nov 2009 - 22:59AdminUser Saved by install script
doc.gifgifdoc.gifmanage 0.9 K 10 Nov 2009 - 22:59AdminUser Saved by install script
dtree.csscssdtree.cssmanage 1.0 K 10 Nov 2009 - 22:59AdminUser Saved by install script
dtree.jsjsdtree.jsmanage 29.8 K 10 Nov 2009 - 22:59AdminUser Saved by install script
email.gifgifemail.gifmanage 0.2 K 10 Nov 2009 - 22:59AdminUser Saved by install script
empty.gifgifempty.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
file.gifgiffile.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
folder.gifgiffolder.gifmanage 0.4 K 10 Nov 2009 - 22:59AdminUser Saved by install script
folderopen.gifgiffolderopen.gifmanage 0.4 K 10 Nov 2009 - 22:59AdminUser Saved by install script
globe.gifgifglobe.gifmanage 1.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
group.gifgifgroup.gifmanage 0.2 K 10 Nov 2009 - 22:59AdminUser Saved by install script
home.gifgifhome.gifmanage 0.2 K 10 Nov 2009 - 22:59AdminUser Saved by install script
image.gifgifimage.gifmanage 0.9 K 10 Nov 2009 - 22:59AdminUser Saved by install script
imgfolder.gifgifimgfolder.gifmanage 0.6 K 10 Nov 2009 - 22:59AdminUser Saved by install script
join.gifgifjoin.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
joinbottom.gifgifjoinbottom.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
line.gifgifline.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
minus.gifgifminus.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
minusbottom.gifgifminusbottom.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
musicfolder.gifgifmusicfolder.gifmanage 0.6 K 10 Nov 2009 - 22:59AdminUser Saved by install script
nolines_minus.gifgifnolines_minus.gifmanage 0.8 K 10 Nov 2009 - 22:59AdminUser Saved by install script
nolines_plus.gifgifnolines_plus.gifmanage 0.8 K 10 Nov 2009 - 22:59AdminUser Saved by install script
page.gifgifpage.gifmanage 0.6 K 10 Nov 2009 - 22:59AdminUser Saved by install script
pdf.gifgifpdf.gifmanage 0.9 K 10 Nov 2009 - 22:59AdminUser Saved by install script
person.gifgifperson.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
persons.gifgifpersons.gifmanage 0.2 K 10 Nov 2009 - 22:59AdminUser Saved by install script
plus.gifgifplus.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
plusbottom.gifgifplusbottom.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
ppt.gifgifppt.gifmanage 0.9 K 10 Nov 2009 - 22:59AdminUser Saved by install script
question.gifgifquestion.gifmanage 1.0 K 10 Nov 2009 - 22:59AdminUser Saved by install script
see.gifgifsee.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
smenu.csscsssmenu.cssmanage 3.2 K 10 Nov 2009 - 22:59AdminUser Saved by install script
sound.gifgifsound.gifmanage 0.2 K 10 Nov 2009 - 22:59AdminUser Saved by install script
trash.gifgiftrash.gifmanage 1.0 K 10 Nov 2009 - 22:59AdminUser Saved by install script
tree.jpgjpgtree.jpgmanage 7.9 K 10 Nov 2009 - 22:59AdminUser Saved by install script
trend.gifgiftrend.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
virtualhome.gifgifvirtualhome.gifmanage 0.2 K 10 Nov 2009 - 22:59AdminUser Saved by install script
virtualperson.gifgifvirtualperson.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
virtualpersons.gifgifvirtualpersons.gifmanage 0.2 K 10 Nov 2009 - 22:59AdminUser Saved by install script
xls.gifgifxls.gifmanage 0.9 K 10 Nov 2009 - 22:59AdminUser Saved by install script
zip.gifgifzip.gifmanage 0.9 K 10 Nov 2009 - 22:59AdminUser Saved by install script
IAttachmentActionSizeDateWhoComment
base.gifgifbase.gifmanage 1.0 K 10 Nov 2009 - 22:59AdminUser Saved by install script
cd.gifgifcd.gifmanage 0.2 K 10 Nov 2009 - 22:59AdminUser Saved by install script
dmenu.csscssdmenu.cssmanage 2.8 K 10 Nov 2009 - 22:59AdminUser Saved by install script
doc.gifgifdoc.gifmanage 0.9 K 10 Nov 2009 - 22:59AdminUser Saved by install script
dtree.csscssdtree.cssmanage 1.0 K 10 Nov 2009 - 22:59AdminUser Saved by install script
dtree.jsjsdtree.jsmanage 29.8 K 10 Nov 2009 - 22:59AdminUser Saved by install script
email.gifgifemail.gifmanage 0.2 K 10 Nov 2009 - 22:59AdminUser Saved by install script
empty.gifgifempty.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
file.gifgiffile.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
folder.gifgiffolder.gifmanage 0.4 K 10 Nov 2009 - 22:59AdminUser Saved by install script
folderopen.gifgiffolderopen.gifmanage 0.4 K 10 Nov 2009 - 22:59AdminUser Saved by install script
globe.gifgifglobe.gifmanage 1.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
group.gifgifgroup.gifmanage 0.2 K 10 Nov 2009 - 22:59AdminUser Saved by install script
home.gifgifhome.gifmanage 0.2 K 10 Nov 2009 - 22:59AdminUser Saved by install script
image.gifgifimage.gifmanage 0.9 K 10 Nov 2009 - 22:59AdminUser Saved by install script
imgfolder.gifgifimgfolder.gifmanage 0.6 K 10 Nov 2009 - 22:59AdminUser Saved by install script
join.gifgifjoin.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
joinbottom.gifgifjoinbottom.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
line.gifgifline.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
minus.gifgifminus.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
minusbottom.gifgifminusbottom.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
musicfolder.gifgifmusicfolder.gifmanage 0.6 K 10 Nov 2009 - 22:59AdminUser Saved by install script
nolines_minus.gifgifnolines_minus.gifmanage 0.8 K 10 Nov 2009 - 22:59AdminUser Saved by install script
nolines_plus.gifgifnolines_plus.gifmanage 0.8 K 10 Nov 2009 - 22:59AdminUser Saved by install script
page.gifgifpage.gifmanage 0.6 K 10 Nov 2009 - 22:59AdminUser Saved by install script
pdf.gifgifpdf.gifmanage 0.9 K 10 Nov 2009 - 22:59AdminUser Saved by install script
person.gifgifperson.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
persons.gifgifpersons.gifmanage 0.2 K 10 Nov 2009 - 22:59AdminUser Saved by install script
plus.gifgifplus.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
plusbottom.gifgifplusbottom.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
ppt.gifgifppt.gifmanage 0.9 K 10 Nov 2009 - 22:59AdminUser Saved by install script
question.gifgifquestion.gifmanage 1.0 K 10 Nov 2009 - 22:59AdminUser Saved by install script
see.gifgifsee.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
smenu.csscsssmenu.cssmanage 3.2 K 10 Nov 2009 - 22:59AdminUser Saved by install script
sound.gifgifsound.gifmanage 0.2 K 10 Nov 2009 - 22:59AdminUser Saved by install script
trash.gifgiftrash.gifmanage 1.0 K 10 Nov 2009 - 22:59AdminUser Saved by install script
tree.jpgjpgtree.jpgmanage 7.9 K 10 Nov 2009 - 22:59AdminUser Saved by install script
trend.gifgiftrend.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
virtualhome.gifgifvirtualhome.gifmanage 0.2 K 10 Nov 2009 - 22:59AdminUser Saved by install script
virtualperson.gifgifvirtualperson.gifmanage 0.1 K 10 Nov 2009 - 22:59AdminUser Saved by install script
virtualpersons.gifgifvirtualpersons.gifmanage 0.2 K 10 Nov 2009 - 22:59AdminUser Saved by install script
xls.gifgifxls.gifmanage 0.9 K 10 Nov 2009 - 22:59AdminUser Saved by install script
zip.gifgifzip.gifmanage 0.9 K 10 Nov 2009 - 22:59AdminUser Saved by install script
r4 - 10 Nov 2013 - 09:58 - AdminUser r3 - 12 Oct 2010 - 15:36 - AdminUser

View topic | View difference interwoven | History: r5 < r4 < r3 < r2 | More topic actions
 
This site is powered by FoswikiCopyright © by the contributing authors. All material on this site is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback