Système de fichiers 100% SVG

Nouvelle version compatible avec Firefox 1.5, Opera 9 et Batik 1.6

Objets SVG et script sont séparés
Le script est chargé au démarrage 
Les objets SVG sont chargés à la demande et déchargés après utilisation.

Vous pouvez créer votre propre design et le sauver dans un fichier SVG ou SVGZ.

Voir un exemple   

Pour utiliser l'outil, vous devez
1) charger les scripts avec 
    <script xlink:href="js/filesystem.js"/>    gestion du gadget
    <script xlink:href="js/opera.js"/>    emulation de getURL() et parseXML()
    <script xlink:href="js/tools.js"/>    déplacement des fenêtres
2) réserver dans <defs> tag, un groupe avec "motifs" comme id pour stocker le gradient créé.    
3) réserver à la fin une place avec <g id="messages" transform="translate(100,50)"></g> par exemple 
4) mettre dans un groupe <defs> les gradients utilisés pour les boutons
5) appeler l'outil avec 
add_filesystem('svg/file_system.svg','messages',"Choisissez une image",'svg;jpg;jpeg;png;gif','',num)
dans l'ordre: fichier SVG, nom du groupe où insérer le fragment, invite, type de fichiers cherchés et numéro d'utilisation
5) créer une fonction pour utiliser le fichier choisi dans votre SVG principal
function use_file_system(result)
{
    if (!result)
        return
    if (fs_filtre.indexOf(list_files[fs_numero].substring(list_files[fs_numero].lastIndexOf(".") + 1,list_files[fs_numero].length)) < 0)
        return
    var pic_file = fs_repertoire + "/" + list_files[fs_numero]
    svgdoc.getElementById("picture" + fs_num.toString()).setAttributeNS("http://www.w3.org/1999/xlink" , "xlink:href" , pic_file)
}

Contraintes

svgdoc doit être le nom de SVGDocument 

Dans le design SVG, cette fonction est appelée quand vous fermez la fenêtre avec onclick="close_gradient(true)".
Vous devez conserver les id des objets ou alors modifier le script.