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 UTF-8