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;
use strict;
my @tree =(
{
image => 'tar.png',
onclick => "alert('onclick');",
text => 'Node',
},
{
text => 'Folder',
folderclass => 'folderMan', # Nur für 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);
print css();
print jscript();
print preload();
print Tree(\@tree,"Crystal");
Funktions- Sets
Hier die liste der möglichen Import Sets
:all
Tree css jscript clasic preload help folderFirst size documentRoot loadTree saveTree sortTree orderBy prefix Style orderByColumn border
:recommend
Tree css jscript clasic preload folderFirst size Style documentRoot loadTree saveTree sortTree orderBy prefix
:standart
Tree css jscript preload size Style documentRoot clasic,
:backward
setDocumentRoot getDocumentRoot setSize setClasic setStyle style setModern %anker
:columns
border columns orderByColumn
DESCRIPTION
HTML::Menu::TreeView ist ein Module um ein HTML TreeView zu erstellen.
Changes
1.02
Deutsche Umlaute wurden falsch dargestellt.
Einige Ergänzungen in der Deutschen Dokumentation.
Public
new
Bei der Objektorientierten Schnittstelle kann man die Array Referenz direkt an new übergeben
ms $TreeView = new HTML::Menu::TreeView(\@tree, optional style);
und Tree dann ohne Argumente aufrufen.
print $TreeView->Tree();
css
Gibt den benötigten Stylesheet(css) zurück, der In die Seite eingebunden werden muss.
Mann kann den Document Root setzen wenn man ein Argument übergibt.
css('/document/root/');
Man kann den benötigten Stylesheet natürlich per Hand einbinden:
<link href="/style/Crystal/16/html-menu-treeview/Crystal.css" rel="stylesheet" type="text/css">
documentRoot
Setzt den Document Root im Scalar Context, gibt Ihn in void Context zurück.
default: Diese Variable wird durch make gesetzt.
jscript
Gibt den benötigten Javascript zurück, der In die Seite eingebunden werden muss.
Mann kann den Document Root setzen wenn man ein Argument übergibt.
Man kann den benötigten Javascript natürlich per Hand einbinden:
<script language="JavaScript" type="text/javascript" src="/style/treeview.js"></script>
preload
Gibt den benötigten javascript zurück um Bilder per Javascript in Vorhinein zu laden.
Mann kann den document root setzen wenn man ein Argument übergibt.
Man kann den benötigten javascript natürlich auch per Hand einbinden.
Für eine Größe:
<script language="JavaScript" type="text/javascript" src="/style/Crystal/16/html-menu-treeview/preload.js"></script>
Oder für alle Größen:
<script language="JavaScript" type="text/javascript" src="/style/Crystal/preload.js"></script>
size
Verschiedene Größen sind nur für den Crystal Style verfügbar.
Setzt die Größe im Scalar Context, gibt Sie in void Context zurück.
16,32,48,64 und 128 sind mögliche Werte.
Style
Setzt den Style im Scalar Context, gibt Ihn in void Context zurück.
Style('simple');
simple = Redmond mäßiger style.
Crystal = Kde Crystal style (default).
Tree
Tree(\@tree,optional $style);
Gibt den HTML teil des Treeviews ohne Javascript und Css zurück.
clasic
Klassische Knoten Dekoration einschalten
clasic(1);
klassische Knoten Dekoration ausschalten
clasic(0);
gibt den Status in void Context zurück.
$status = clasic();
columns
Anzahl der Spalten setzen.
columns(3);
Gibt die Anzahl in void Context zurück.
$anzahl = columns();
Oder man kann die Titel für die Spalten Setzen
columns("Name","Column 1","Column 2","Column 3");
border
Spalten Rahmen ein- oder ausschalten.
sortTree
Spalten nach Name oder dem Attribute das von orderBy gesetzt wurde sortieren.
orderBy
Setzt das Attribute das von sortTree und folderFirst benutzt wird.
orderByColumn
Nach Spalte Sortieren.
orderByColumn(i)
folderFirst
Verzeichnisse zuerst anzeigen.
prefix
Wenn man eine offline Webseite erstellen will kann man
z.Bsp:
prefix('.');
setzen.
saveTree
saveTree('filename',\@ref); # oder saveTree()
default: ./TreeViewDump.pl
loadTree
loadTree('filename') oder loadTree()
default: ./TreeViewDump.pl
help
Die Hilfe für die Link Attribute
gibt eine Referenz auf ein hash zurück (void Context),
my $hashref = help();
foreach my $key (sort(keys %{$hashref})){
print "$key : ", $hashref->{$key} ,$/;
}
oder eine Hilfe Nachricht.
print help('href'),$/;
(Nur auf Englisch verfügbar)
reservierte Attribute:
- href
-
Dieses Attribut gibt die Position einer Web-Ressource an und definiert so einen Link zwischen dem
aktuellen Element (dem Quellanker) und dem durch dieses Attribut definierten Zielanker.
- accesskey
-
Dieses Attribut weist einem Element eine Zugriffstaste zu.
- charset
-
Gibt die Zeichenkodierungen an.
- class
-
Name der Klasse des Elements.
- coords
-
Für Image maps.
- dir
-
Leserichtung.
- hreflang
-
Sprache vom Link Ziel.
- lang
-
Basis-Sprache der Attribute und des Inhalts.
- onblur
-
Element verliert die Auswahl.
- ondblclick
-
Wenn mit der Maus auf das Element doppelt angeklickt wird.
- onclick
-
Wenn mit der Maus auf das Element geklickt wird.
- onfocus
-
Element wird ausgewählt.
- onkeydown
-
Wenn eine taste gedrückt wird.
- onkeypress
-
Wenn eine taste gedrückt und wieder losgelassen wird.
- onkeyup
-
Wenn die taste wieder losgelassen wird.
- onmousedown
-
Wenn eine Maustaste gedrückt wird.
- onmousemove
-
Maus wird bewegt.
- onmouseout
-
Maus verlässt den link.
- onmouseover
-
Maus über den link
- onmouseup
-
Wenn die Maustaste wieder losgelassen wird.
- rel
-
Dieses Attribut beschreibt die Beziehung vom aktuellen Dokument zu dem durch das href-Attribut angegebenen Anker.
- rev
-
Dieses Attribut gibt die Zeichenkodierung der durch den Link bezeichneten Ressource an.
- shape
-
Für image maps.
- style
-
Stylesheet Informationen.
- tabindex
-
Position in der tab Reihenfolge.
- target
-
Mit dem Attribut target im einleitenden <a>-Tag können Sie ein Zielfenster für den Verweis festlegen. Der im Wert zugewiesene Name muss mit einem Buchstaben (A-Z, a-z) beginnen, außer in den folgenden
Ausnahmen, die durch einen führenden Unterstrich gekennzeichnet sind:
_blank, um den Verweis in einem neuen Fenster zu öffnen,
_self, um den Verweis im aktuellen Fenster zu öffnen, _parent, um bei verschachtelten Framesets das aktuelle Frameset zu sprengen, _top, um bei verschachtelten Framesets alle Framesets zu sprengen.
- type
-
Content type.
- title
-
Titel.
- id
-
Die id des links. Wird gesetzt.
- addition
-
Zusätzlicher text hinter dem link.
- subtree
-
subtree => [{ text => 'Fo'}, {text => 'Bar'} ]
- image.
-
Bild Name, muss im /style/mimetypes Verzeichnis liegen
- folderclass :
-
Nur für Crystal styles
Mögliche Werte:
folderMan, folderVideo,folderCrystal,
folderLocked , folderText, folderFavorite,
folderPrint,folderHtml,
folderImage,folderSound,folderImportant,
folderTar,folderYellow ,folderGray,
folderGreen und folderRed
Auf http://treeview.lindnerei.de/cgi-bin/crystal.pl gibt es eine komplette liste möglicher werte.
- columns
-
Ein Array mit den Spalten.
- empty.
-
Auf wahr setzen wenn man einen geschlossenes Verzeichnis haben möchte.
backward compatibility
getDocumentRoot
siehe documentRoot()
setClasic
siehe clasic()
setDocumentRoot
siehe documentRoot()
setModern
siehe clasic()
setSize
siehe size()
setStyle
siehe Style()
style
siehe Style()
Private
initTree
Erzeugt den Treeview, wird von initTree, new oder rekursive von appendFolder aufgerufen.
ffolderFirst
Wird innerhalb von initTree zum sortieren benutzt wenn Verzeichnisse zuerst angezeigt werden sollen.
getSelf
Dieses Module benutzt ein Lincoln loader mäßiges Klassen System.
Wenn der erste übergebene Parameter von ein HTML::Menu::TreeView Objekt ist (oo syntax). werden einfach die übergebenen Parameter zurück gegeben.
Ansonsten (fo syntax) wird ein neues HTML::Menu::TreeView Objekt erzeugt und als erster wert gefolgt von den übergeben Parametern zurückgegeben.
appendFolder
Wird von initTree aufgerufen wenn ein item vom aktuellen (sub)tree ein Verzeichnis ist.
appendLastFolder
$self->appendLastFolder(\@tree);
Wird von initTree aufgerufen wenn das letzte item vom aktuellen (sub)tree ein Verzeichnis ist.
appendEmptyFolder
$self->appendEmptyFolder(\$node);
Wird von initTree aufgerufen wenn ein item vom aktuellen (sub)tree ein ein leeres Verzeichnis ist.
appendLastEmptyFolder
$self->appendEmptyFolder(\$node);
Wird von initTree aufgerufen wenn das letzte item vom aktuellen (sub)tree ein leeres Verzeichnis ist.
appendNode
$self->appendNode(\$node);
Wird von initTree aufgerufen wenn ein item vom aktuellen (sub)tree ein Knoten ist.
appendLastNode
$self->appendLastNode(\$node);
wir von initTree aufgerufen wenn das letzte item vom aktuellen (sub)tree ein Knoten ist.
SEE ALSO
http://www.lindnerei.de, http://treeview.lindnerei.de,
HTML::Menu::TreeView, http://treeview.tigris.org,
AUTHOR
Dirk Lindner <lze@cpan.org>
LICENSE
LGPL
Copyright (C) 2008 Dirk Lindner
Diese Bibliothek ist freie Software. Sie dürfen sie unter den Bedingungen der GNU Lesser General Public License, wie von der Free Software Foundation veröffentlicht, weiterverteilen und/oder modifizieren; entweder gemäß Version 2.1 der Lizenz oder (nach Ihrer Option) jeder späteren Version. Diese Bibliothek wird in der Hoffnung weiterverbreitet, daß sie nützlich sein wird, jedoch OHNE IRGENDEINE GARANTIE, auch ohne die implizierte Garantie der MARKTREIFE oder der VERWENDBARKEIT FÜR EINEN BESTIMMTEN ZWECK. Mehr Details finden Sie in der GNU Lesser General Public License. Sie sollten eine Kopie der GNU Lesser General Public License zusammen mit dieser Bibliothek erhalten haben. falls nicht, schreiben Sie an die Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA.
1 POD Error
The following errors were encountered while parsing the POD:
- Around line 56:
Non-ASCII character seen before =encoding in 'für'. Assuming CP1252