Mirari
Affichage d'une page
Page "mirari.dev.browser" créée par Zephyr le 05/02/2009 à 14h48 05s :

Mirari :: Développement :: Explorateur de fichiers

Vous êtes sur l'une des pages d'informations pour développeurs (cliquez ici pour revenir en arrière).

L'une des choses dont je voulais me débarrasser dans Mirari, c'était cet horrible explorateur de fichiers avec des petites cases à cocher pour les actions de déplacement et suppression. Ça partait d'une bonne intention (éviter d'avoir des menus déroulants à rallonge pour effectuer une action), mais ça restait quand même assez peu intuitif. Et puis gros problème : impossible de déplacer un dossier dans un autre (il aurait fallu cocher les deux, mais alors comment savoir lequel devait contenir l'autre ? Peut-être avec deux cases, l'une pour "source" et l'autre pour "destination", mais ça devient vraiment trop compliqué).

Bref, un bon vieux drag & drop donne un résultat qui s'approche quand même bien plus de ce qu'on peut avoir avec des explorateurs de fichiers actuels. Par contre, il faut aller dans le merveilleux monde du JavaScript et des incompatibilités entre navigateurs. Vous pouvez télécharger une démonstration du résultat ici ; les JavaScript utilisés sont un peu trop longs pour être expliqués intégralement ici, mais les exemples devraient parler d'eux-mêmes après une petite note sur le mode d'utilisation des fonctions fournies :

L'idée est que l'objet "behavior" contient des méthodes pour transformer des éléments HTML (identifiés par un attribut "id") et leur ajouter des comportements dynamiques. Un simple "behavior.makeDraggable ('folder')" rend par exemple l'objet dont l'attribut "id" vaut "folder" déplaçable à la souris (il aussi possible de préciser en 2eme paramètre quel élément doit être utilisée comme "poignée" sur laquelle cliquer pour déplacer l'objet). Chaque comportement ainsi déclenché ne s'occupe que du strict minimum, tout le reste étant personnalisable à travers un mécanisme de "triggers" (fonctions liées à un type d'évènement, qui sont appelées automatiquement quand celui-ci se déclenche). Dans l'exemple, ce sont ces triggers qui rendent les icônes transparentes lors d'un déplacement, restaurent la position des fichiers quand la souris est lâchée, etc. Certains de ces triggers sont d'ailleurs déjà codés et utilisables directement sans avoir à déclarer de fonction supplémentaire.

Au final, cet ensemble de bibliothèques JavaScript ne remplit que les tâches indispensables au fonctionnement de Mirari, mais devrait être extensible et adaptable assez facilement à des utilisations variées. Pour utiliser la démo, ouvrez simplement le fichier "index.htm" avec votre navigateur. Je n'ai testé qu'Internet Explorer 6 et 7, Firefox 2 et Opera 9; il est possible que des problèmes de compatibilité se présentent avec d'autres.

Dernière modification par Zephyr le 05/02/2009 à 15h11 20s

Afficher la liste des pages créées
Rechercher parmi les pages
Vous pouvez créer une page si vous possédez un compte utilisateur
© RCa 2011 :: 18 ms