NAME
HTML::Menu::TreeView
SYNOPSIS
use HTML::Menu::TreeView qw(Tree);
my @tree =( {
text => 'Folder',
subtree => [
{
text => 'treeview Homepage',
href => 'http://treeview.lindnerei.de',
}
],
},);
Tree(\@tree);
OO Syntax
use HTML::Menu::TreeView qw(Tree);
use strict;
my @tree =(
{
image => 'tar.png',
onclick => "alert('onclick');",
text => 'Node',
},
{
href => "http://www.lindnerei.de",
text => 'Lindnerei.de',
},
{
text => 'Folder',
folderclass => 'folderMan', # only for Crystal styles
subtree => [
{
text => 'subversion',
href => 'http://treeview.tigris.org',
},
],
},
);
my $Treeview = new HTML::Menu::TreeView();
print $Treeview->css("/srv/www/httpdocs");
print $Treeview->jscript();
print $Treeview->preload();
print $Treeview->Tree(\@tree);
FO Syntax
use HTML::Menu::TreeView qw(:all);
documentRoot("/srv/www/httpdocs");
print css();
print jscript();
print Tree(\@tree,"Crystal");
function sets
Here is a list of the function sets you can import:
:all
:recommend
Tree css jscript clasic preload folderFirst size style documentRoot loadTree saveTree sortTree orderBy prefix
:standart
Tree css jscript preload size style documentRoot
reserved attributes:
- href
-
URI for linked resource.
- accesskey
-
accessibility key character.
- charset
-
char encoding of linked resource.
- class
-
class name or set of class names to an element.
- coords
-
for use with client-side image maps.
- dir
-
the base direction of directionally neutral text.
- hreflang
-
language code.
- lang
-
the base language of an elements attribute values and text content.
- onblur
- the element lost the focus.
- ondblclick
-
event occurs when the pointing device button is double clicked
- onclick
-
event occurs when the pointing device button is clicked over an element.
- onfocus
-
the element got the focus.
- onkeydown
-
event occurs when a key is pressed down over an element.
- onkeypress
-
event occurs when a key is pressed and released over an element.
- onkeyup
-
event occurs when a key is released over an element.
- onmousedown
-
event occurs when the pointing device button is pressed over an element.
- onmousemove
-
event occurs when the pointing device is moved while it is over an element.
- onmouseout
-
event occurs when the pointing device is moved away from an element.
- onmouseover
-
event occurs when the pointing device is moved onto an element.
- onmouseup
-
event occurs when the pointing device button is released over an element.
- rel
-
forward link types.
- rev
-
reverse link types.
- shape
-
for use with client-side image maps.
- style
-
specifies style information for the current element.
- tabindex
-
position in tabbing order.
- target
-
target frame information.
- type
-
advisory content type.
- title
-
element title.
- id
-
This attribute assigns a name to an element. This name must be unique in a document.
- addition
-
additional text behind the link
- subtree
- image.
-
a image name, must be placed into /style/mimetypes directory.
- folderclass :
-
possible values:
folderMan, folderVideo,folderCrystal,
folderLocked , folderText, folderFavorite,
folderPrint,folderHtml,
folderImage,folderSound,folderImportant,
folderTar,folderYellow ,folderGray,
folderGreen and folderRed
see http://treeview.lindnerei.de/cgi-bin/crystal.pl for a complete list of possible values for folderclass.
DESCRIPTION
HTML::Menu::TreeView is a Modul to build an Html tree of an AoH.
Changes
0.7.1
some fixes.
new function columns()
new attribute coulmuns => {1,2,3,4,5,6,7,8]
Overwrought Documentation,Code,Examples, tests and Documentation.
Public
clasic()
enable clasic node decoration:
clasic(1);
disable clasic node decoration:
clasic(0);
return the status in void context.
$status = clasic();
columns()
set number of columns
columns(3);
return the count in void context.
$count = columns();
css()
return the necessary css part without <style></style> tag.
you can set the DocumentRoot if you pass a parameter
css('%PATH%');
You can also include it with
<link href="/style/Crystal/16/html-menu-treeview/Crystal.css" rel="stylesheet" type="text/css">
for example.
documentRoot()
set the Document Root in scalar context, or get it in void context.
value: %PATH%
folderFirst()
set or unset show folders first ?
default is false.
enable show folders first:
folderFirst(1);
disable show folders first:
folderFirst(0);
return the status of this property in void context.
$status = folderFirst();
getDocumentRoot()
for backward compatibility.
use documentRoot instead.
help()
help for link attributes.
return a hashref in void context,
my $hashref = help();
foreach my $key (sort(keys %{$hashref})){
print "$key : ", $hashref->{$key} ,$/;
}
or a help Message.
print help('href'),$/;
jscript()
return the necessary javascript without <script> tag.
You can also include it with:
<script language="JavaScript" type="text/javascript" src="/style/treeview.js"></script>
loadTree()
loadTree('filename') or loadTree()
default: ./TreeViewDump.pl
new()
if you use the oo interface you can say:
my $TreeView = new HTML::Menu::TreeView(\@tree, optional style);
and then call Tree without arguments.
print $TreeView->Tree();
orderBy()
set the attribute which is used by sortTree and folderFirst.
prefix()
prefix used by css.
set this if you want to build offline websites.
for example:
prefix('.');
return the prefix in void context.
preload()
return the necessary javascript for preloading images without <script> tag.
for example you can also include it with
<script language="JavaScript" type="text/javascript" src="/style/Crystal/16/html-menu-treeview/preload.js"></script>
or
<script language="JavaScript" type="text/javascript" src="/style/Crystal/preload.js"></script>
if you use different images sizes.
saveTree()
saveTree('filename',\@ref) or saveTree()
this prperty is set during make
value: %PATH%
setClasic()
use clasic instead.
for backward compatibility.
use a classic node decoration
setDocumentRoot()
for backward compatibility.
use documentRoot instead.
set the local path to the style folder.
should be the Document Root of your webserver.
example: setDocumentRoot('%PATH%');
value: %PATH%
setModern()
use clasic instead.
for backward compatibility.
use a modern node decoration
setSize()
for backward compatibility.
use size instead.
only for Crystal styles
16,32,48,64 and 128 are possible values.
setStyle()
for backward compatibility.
use style instead.
setStyle('style');
simple = redmond like style
Crystal = Crystal style
size()
only for Crystal styles
set the size in scalar context, or get in void context.
16,32,48,64 and 128 are possible values.
sortTree()
set or unset sorting treeview Items.
default is false.
enable sorting:
sortTree(1);
disable sorting:
sortTree(0);
return the status in void context.
$status = sortTree();
style()
set the style in scalar context, or get in void context.
setStyle('simple');
simple = redmond like style.
Crystal = Crystal style (default).
Tree()
Tree(\@tree,optional $style);
Returns the html part of the Treeview without javasript and css.
Private
initTree()
ffolderFirst()
getSelf()
HTML::Menu::TreeView Module use a Lincoln loader like class system.
if the first parameter is a HTML::Menu::TreeView object (oo syntax ) this function returns the given parameters.
or the first parameter it is not a object referenz (fo syntax) it create a new HTML::Menu::TreeView object,
return it as first value and @_ as the second value .
my ($self, @p) = getSelf(@_);
appendFolder()
appendLastFolder()
appendNode()
appendLastNode()
SEE ALSO
http://www.lindnerei.de, http://treeview.lindnerei.de,
AUTHOR
Dirk Lindner <lindnerei@o2online.de>
COPYRIGHT AND LICENSE
Copyright (C) 2007 by Hr. Dirk Lindner
This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.