ADOBE Dreamweaver CS3 MAC User Manual [fr]

ADOBE® DREAMWEAVER® CS
GUIDE DES API DE DREAMWEAVER
3
Copyright
© 2007 Adobe Systems Incorporated. Tous droits réservés.
S'il est distrib ué avec u n logiciel i ncluant un co ntrat de l icence d'utili sateur f inal, le présent e guide, ainsi qu e le logicie l qu'il décrit sont fournis sous licence et peuvent être utilisés ou copiés uniquement en conformité avec les dispositions de ladite licence. Sauf indication contraire dans le contrat de licence, aucune partie du présent guide ne peut être reproduite, conservée dans un système d'archivage, ou transmise, sous quelque forme ou par quelque moyen que ce soit, électronique, mécanique, magnétique ou autre, sans autorisation écrite préalable de Adobe Systems Incorporated. Veuillez noter que le contenu de ce guide est protégé par les lois de protection de la propriété intellectuelle même s'il n'est pas distribué avec un logiciel incluant un contrat de licence d'utilisateur final. Le contenu de ce guide est uniquement fournit à titre informatif. Il peut être modifié sans préavis et ne doit pas être considéré comme un engagement de la part de AdobeSystems Incorporated. Adobe Systems Incorporated ne peut en aucun cas être tenu responsable des erreurs ou inexactitudes que le contenu informatif de ce guide pourrait présenter.
Veuillez garder à l'esprit que certains dessins ou images que vous souhaitez inclure dans votre projet peuvent être protégés par les lois de protection de la propriété intellectuelle. L'intégration de ce type d'éléments à votre travail sans autorisation préalable peut constituer une violation des droits du titulaire du copyright. Veillez à obtenir toute autorisation adéquate auprès du titulaire du copyright. Toute référence à des noms de société dans des exemples de modèles n'est citée qu'à des fins de démonstration et ne doit pas être interprétée comme une référence à une société réelle.
Adobe, le logo Adobe, ActionScript, Adobe Bridge, ColdFusion, Cre ative Suite, Director, Dre amweaver, Fireworks, Flash, FlashPaper, HomeSite, JRun, Photoshop, Shockwave et Version Cue sont des marques déposées ou des marques commerciales d'Adobe Systems Incorporated aux Etats-Unis.
ActiveX, Microsoft et Windows sont des marques commerciales ou des marques déposées de Microsoft aux Etats-Unis et/ou dans d'autres pays. Apple et Mac OS sont des marques commerciales d'Apple Inc., déposées aux Etats-Unis et dans d'autres pays. Java et Solaris sont des marques commerciales ou des marques déposées de Sun Microsystems, Inc. aux États-Unis et/ou dans d'autres pays. Linux est la marque déposée de Linus Torvalds aux Etats-Unis et dans d'autres pays. UNIX est une marque dép osée aux Etats-Unis et dans d'autres pays, elle est licenciée exclusivement par X/Open Company, Ltd. Toutes les autres marques commerciales sont la propriété de leurs titulaires respectifs.
Ce produit contient des logiciels développés par Apache Software Foundation (http://www.apache.org/). Le format Graphics Interchange Format © est la propriété protégée par droit d'auteur de CompuServe Incorporated. GIF(sm) est une propriété de marque de service de CompuServe Incorporated. La technologie de compression audio MPEG Layer­3 est sous licence Fraunhofer IIS et Thomson Multimedia (http://www.mp3licensing.com). Vous ne pouvez pas utiliser de fichiers audio comprimés au format MP3 dans le Logiciel pour des diffusions en temps réel ou en direct. Si vous avez besoin d'un décodeur MP3 pour effectuer des diffusions en temps réel ou en direct, vous êtes tenu de vous procurer cette licence d'utilisation de la technologie MP3. La technologie de compression et de décompression audio discours est utilisée sous licence de Nellymoser, Inc. (www.nellymoser.com) Flash CS3 video est mis en oeuvre par la technologie vidéo On2 TrueMotion. © 1992-2005 On2 Technologies, Inc. Tous droits réservés. http://www.on2.com. Ce produit contient des logiciels développés par OpenSymphony Group (http://www.opensymphony.com/) La technologie de compression et décompression vidéo Sorenson SparkTM est sous licence Sorenson Media, Inc.
Adobe Systems Incorporated, 345 Park Avenue, San Jose, California 95110, USA.
No tic e to U.S . G ove rnm ent En d Us ers . T he S of twa re a nd Doc um ent ati on are “Co mme rc ial Ite ms,” a s t hat ter m i s de fi ne d at 48 C .F.R . §2.101, consisting of “Commercial Computer Software” and “Commercial Computer Software Documentation,” as such terms are used in 48 C.F.R. §12.212 or 48 C.F.R. §227.7202, as applicable. Consistent with 48 C.F.R.
§12.212 or 48 C.F.R. §§227.7202-1 through 227.7202-4, as applicable, the Commercial Computer Software and Commercial Computer Software Documentation are being licensed to U.S. Government end users (a) only as Commercial Items and (b) with only those rights as are granted to all other end users pursuant to the terms and conditions herein. Unpublishedrights reserved under the copyright laws of the United States. Adobe Systems Incorporated, 345 Park Avenue, San Jose, CA 95110-2704, USA. For U.S. Government End Users, Adobe agrees to comply with all applicable equal opportunity l aws including, if appropriate, the provisions of Executive Order 11246, as amended, Section 402 of the Vietnam Era Veterans Readjustment Assistance Act of 1974 (38 USC 4212), and Section 503 of the Rehabilitation Act of 1973, as amended, and the regulations at 41 CFR Parts 60-1 through 60-60, 60-250, and 60-741. The affirmative action clause and regulations contained in the preceding sentence shall be incorporated by reference.

Table des matières

Chapitre 1 : Introduction
Acquis préalables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Extension de Dreamweaver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Ressources supplémentaires pour les créateurs d'extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Nouvelles fonctions de Dreamweaver CS3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Fonctions supprimées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Errata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Conventions utilisées dans ce manuel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Chapitre 2 : API d'E/S des fichiers
Accès aux fichiers de configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
API d'E/S des fichiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Chapitre 3 : API HTTP
Fonctionnement de l'API HTTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
API HTTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
iii
Chapitre 4 : API de Design Notes
Fonctionnement de Design Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
API JavaScript de Design Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
API C de Design Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Chapitre 5 : Intégration de Fireworks
L'API FWLaunch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Chapitre 6 : Intégration de Flash
Fonctionnement des éléments Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Insertion d'éléments Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
L'API des objets Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38
Chapitre 7 : API de base de données
Fonctionnement de l'API de bases de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Fonctions de connexion à une base de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42
Fonctions d'accès à la base de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Chapitre 8 : API de connectivité à une base de données
Développement d'un nouveau type de connexion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
L'API de connexion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Fichier inclus généré . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Fichier de définition pour votre type de connexion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .70
Chapitre 9 : API JavaBeans
L'API JavaBeans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Chapitre 10 : API d'intégration de commande source
Fonctionnement de l'intégration des commandes source avec Dreamweaver . . . . . . . . . . . . . . 77
Ajout d'une fonctionnalité de système de commande source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Fonctions facultatives de l'API d'intégration de commande source . . . . . . . . . . . . . . . . . . . . . . . . . 78
Fonctions facultatives de l'API d'intégration de commande source . . . . . . . . . . . . . . . . . . . . . . . . . 84
Activateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Chapitre 11 : Application
Fonctions relatives aux applications externes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .97
Fonctions globales relatives aux applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .105
Fonctions de communication avec Bridge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .109
Chapitre 12 : Espace de travail
Fonctions d'historique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .113
Fonctions d'insertion d'objets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .120
Fonctions relatives au clavier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .123
Fonctions relatives aux menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .129
Fonctions relatives à la fenêtre de résultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .130
Fonctions de bascule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .141
Fonctions relatives aux barres d'outils . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .158
Fonctions relatives aux fenêtres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .163
Fonctions relatives au fractionnement des codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .172
Fonctions relatives aux barres d'outils du mode Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .178
iv
Chapitre 13 : Site
Fonctions relatives aux rapports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .183
Fonctions relatives aux sites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .184
Chapitre 14 : Document
Fonctions relatives aux conversions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .215
Fonctions relatives aux commandes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .216
Fonctions relatives aux manipulations de fichiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .217
Fonctions relatives à l'ensemble d'un document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .231
Fonctions relatives aux chemins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .240
Fonctions relatives à la sélection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .243
Fonctions de manipulation de chaînes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .249
Fonctions relatives à la traduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252
Fonctions XSLT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .253
Chapitre 15 : Contenu de page
Fonctions du panneau Actifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .257
Fonctions relatives aux comportements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .266
Fonctions relatives au Presse-papiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .274
Fonctions relatives aux éléments de bibliothèque et aux modèles . . . . . . . . . . . . . . . . . . . . . . . .278
Fonctions du panneau Fragments de code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .282
Fonctions de modification de widgets Spry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .286
Insertion de fonctions relatives aux widgets Spry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .288
Fonctions de vérification de la compatibilité avec les navigateurs . . . . . . . . . . . . . . . . . . . . . . . . .290
Chapitre 16 : Documents dynamiques
Fonctions de composants de serveur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .297
Fonctions relatives aux sources de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .298
Fonctions de l'Extension Data Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .299
Fonctions Live data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .301
Fonctions relatives aux comportements de serveur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .305
Fonctions de modèle de serveur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .307
Chapitre 17 : Conception
Fonctions relatives aux mises en forme CSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .313
Fonctions relatives aux cadres et aux jeux de cadres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .330
Fonctions relatives aux calques et aux cartes graphiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .332
Fonctions d'environnement de mise en forme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .334
Fonctions relatives au mode de Mise en forme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .339
Fonctions relatives aux zooms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .347
Propriétés et fonctions de repère . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .350
Fonctions de modification des tableaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .356
Chapitre 18 : Code
Fonctions de code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .365
Fonctions relatives à la recherche et au remplacement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .369
Fonctions de modifications générales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .373
Fonction relative à l'impression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .387
Fonctions relatives à Quick Tag Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .388
Fonctions relatives au mode Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .390
Fonctions de l'éditeur de balises et de la bibliothèque de balises . . . . . . . . . . . . . . . . . . . . . . . . . .404
v
Chapitre 19 : Activateurs
Fonctions d'activateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .409
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .443
vi

Chapitre 1 : Introduction

Le Guide des API de Adobe Dreamweaver CS3 décrit les interfaces de programmation d'applications (API) qui vous permettent d'effectuer diverses tâches de prise en charge lorsque vous développez des extensions Adobe® Dreamweaver® CS3 et ajoutez des codes de programme à vos pages Web Dreamweaver. Ces API sont notamment la principale API JavaScript, qui permet d'accéder à la majeure partie des fonctionnalités de base de Dreamweaver (généralement, tout ce qui peut être effectué à l'aide d'un menu, entres autres), et différentes API d'utilitaires permettant d'exécuter des tâches courantes, telles que la lecture et l'écriture de fichiers, le transfert d'informations à l'aide de HTTP et la communication avec Fireworks et Flash.
Les API d'utilitaires contiennent des sous-ensembles de fonctions liées qui permettent d'effectuer des types de tâches spéci­fiques. Les API d'utilitaires sont les suivantes :
l'API d'E/S des fichiers, qui permet un accès en lecture et en écriture aux fichiers du système local ;
l'API HTTP, qui permet d'envoyer et de recevoir des informations à partir d'un serveur Web ;
l'API de Design Notes, qui permet de stocker et d'extraire les notes relatives aux documents Dreamweaver ;
l'API d'intégration de Fireworks, qui permet de communiquer avec Adobe Fireworks ;
l'intégration Flash, qui contient des informations concernant l'ajout d'éléments Flash à l'interface utilisateur Dream-
weaver et sur l'API des objets Flash (qui permet de créer des objets pour le contenu Adobe Flash) ;
l'API de base de données, qui permet d'accéder aux informations stockées dans les bases de données et de gérer les
connexions à ces bases de données ;
l'API de connectivité à une base de données, qui permet de créer un nouveau type de connexion et les boîtes de dialogue
correspondantes pour les modèles de serveur nouveaux et existants ;
l'API JavaBeans, qui extrait les noms de classe, les méthodes, les propriétés et les évènements définis pour JavaBeans ;
l'API d'intégration de contrôle source, qui permet d'écrire des bibliothèques partagées pour étendre la fonction
Archiver/Extraire de Dreamweaver.
L'API JavaScript permet d'effectuer plusieurs tâches mineures généralement effectuées par l'utilisateur lors de la création ou de la modification de documents Dreamweaver. Ces fonctions d'API sont regroupées selon les parties de l'interface utili­sateur de Dreamweaver auxquelles elles se rapportent. Ainsi, l'API JavaScript comprend les fonctions relatives à l'espace de travail, aux documents, à la conception, etc. Ces fonctions vous permettent d'effectuer des tâches telles que, ouvrir un nouveau document, obtenir ou définir une taille de police, trouver l'occurrence d'une chaîne de recherche en code HTML, afficher une barre d'outils, etc.
1

Acquis préalables

Ce manuel suppose une bonne maîtrise de Dreamweaver, HTML, XML, de la programmation JavaScript et, le cas échéant, de la programmation C. Pour rédiger vos propres extensions afin de créer des applications Web, vous devez connaître les langages de script côté serveur sur au moins une plate-forme telle que Active Server Pages (ASP), ASP.net, PHP : Hypertext Preprocessor (PHP), ColdFusion ou Java Server Pages (JSP).

Extension de Dreamweaver

Pour en savoir plus sur la plate-forme Dreamweaver et l'API permettant de développer des extensions de Dreamweaver, voir Extension de Dreamweaver. Le manuel Extension de Dreamweaver décrit les fonctions des API que Dreamweaver appelle pour implémenter les objets, menus, panneaux flottants, comportements de serveur, etc., qui composent les diverses fonctionnalités de Dreamweaver. Ces API permettent d'ajouter des objets, des menus, des panneaux flottants et d'autres
ADOBE DREAMWEAVER 9.0
Guide des API
fonctions au produit. Extension de Dreamweaver explique également comment personnaliser Dreamweaver en modifiant et en ajoutant des balises à différents fichiers HTML et XML, de façon à ajouter des éléments de menus ou des types de documents, etc.

Ressources supplémentaires pour les créateurs d'extensions

Pour entrer en contact avec d'autres développeurs d'extensions, rejoignez le forum de discussion consacré à l'extensibilité de Dreamweaver. Vous pouvez accéder au site Web de ce forum en allant à l'adresse www.adobe.com/support/dream-
weaver/extend/form/.

Nouvelles fonctions de Dreamweaver CS3

Les nouvelles fonctions suivantes ont été ajoutées à l'API JavaScript de Dreamweaver CS3. Les en-têtes désignent les chapitres et les sections qui contiennent les nouvelles fonctions :
2

Application

Les fonctions suivantes ont été ajoutées au chapitre Application.
Fonctions relatives aux applications externes
« dom.insertFiles() », page 103
« dreamweaver.activateApp() », page 104
« dreamweaver.printDocument() », page 104
« dreamweaver.revealDocument() », page 104
Fonctions de modifications générales
« dw.registerIdleHandler() », page 108
« dw.revokeIdleHandler() », page 109
Communication avec Bridge
« BridgeTalk.bringToFront() », page 109
« Bridgetalk.send() », page 110
« BridgeTalk.suppressStartupScreen() », page 110
« dw.browseInBridge() », page 111

Espace de travail

Les nouvelles fonctions suivantes relatives au Contenu actif et au mode Code ci-dessous ont été ajoutées au chapitre « Espace de travail », page 113.
Contenu actif
« dom.convertNextActiveContent() », page 122
« dom.convertActiveContent() », page 122
mode Code
« dom.source.refreshVariableCodeHints() », page 180
ADOBE DREAMWEAVER 9.0
Guide des API

Site

Les nouvelles fonctions suivantes relatives au Site ont été ajoutées au chapitre « Site », page 183.
« site.displaySyncInfoForFile() », page 193
« site.canDisplaySyncInfoForFile() », page 436

Documents

La nouvelle fonction suivante relative aux ensembles de données XML a été ajoutée au chapitre « Document », page 215.
« MMXSLT.getXML() », page 253

Contenu de page

Les nouvelles fonctions suivantes ont été ajoutées au chapitre « Contenu de page », page 257. Elles concernent la création d'ensembles de données XML Spry, la modification avancée de widgets Spry et d'autres widgets, l'insertion de widgets Spry et la vérification de la compatibilité avec les navigateurs.
Modification de widgets Spry
« element.removeTranslatedAttribute() », page 286
« element.setTranslatedAttribute() », page 287
« element.translatedClassName », page 287
« element.translatedStyle », page 287
3
Insertion de widgets Spry
« dom.addJavaScript() », page 288
« dom.copyAssets() », page 288
« dom.getDefaultAssetFolder() », page 290
Problèmes de vérification de la compatibilité avec les navigateurs
« elem.getComputedStyleProp() », page 290
« window.getDeclaredStyle() », page 291
« dom.getMinDisplayWidth() », page 292
« dom.getBlockElements() elem.getBlockElements() », page 292
« dom.getInlineElements() elem.getInlineElements() », page 293
« dom.getHeaderElements() elem.getHeaderElements() », page 294
« dom.getListElements() elem.getListElements() », page 294
« elem.isBlockElement() », page 295
« elem.isInlineElement() », page 295
« elem.isHeaderElement() », page 296
« elem.isListElement() », page 296

Documents dynamiques

La nouvelle fonction suivante relative aux sources de données a été ajoutée au chapitre « Documents dynamiques », page 297.
« dw.dbi.setExpanded() », page 299
ADOBE DREAMWEAVER 9.0
Guide des API

Conception

Les nouvelles fonctions suivantes relatives aux mises en forme CSS ont été ajoutées au chapitre « Conception », page 313.
Mise en forme CSS
« dom.applyLayout() », page 313
« dom.canApplyLayout() », page 314
« dw.getLayoutNames() », page 315
« dw.getLayoutDescriptions() », page 315
« dw.getFilesForLayout() », page 315

Fonctions supprimées

Les fonctions suivantes ont été supprimées de l'API Dreamweaver CS3 car les fonctions associées ont été supprimées du produit.
« dreamweaver.exportCSS() (déconseillé) », page 222
« dreamweaver.canExportCSS() (déconseillé) », page 420
4

Errata

Vous trouverez une liste des problèmes connus dans la section Extensibility (Extension) du centre de support de Dream­weaver (www.adobe.com/support/dreamweaver/extend/extending_dwmx_errata).

Conventions utilisées dans ce manuel

Conventions typographiques

Ce manuel utilise les conventions typographiques suivantes :
La police de code indique des fragments de code et des constantes d'API, notamment des noms de classe, des noms de
méthodes, des noms de fonctions, des noms de type, des scripts, des instructions SQL et des noms de balises et d'attributs HTML et XML.
La police de code en italique identifie les éléments remplaçables dans le code.
Le symbole de continuation (¬) indique qu'une longue ligne de code a été fractionnée sur deux lignes ou plus. En raison
des limites de marge du format de ce manuel, une ligne de code continue doit ici être coupée. Lorsque vous copiez les lignes de code, supprimez le symbole de continuation et entrez-les comme une seule ligne.
Les accolades ({ }) placées avant et après un argument de fonction indiquent que cet argument est facultatif.
Le nom des fonctions ayant le préfixe dreamweaver.nomfonc peut être abrégé en dw.nomfonc lorsque vous écrivez le code.
Ce manuel utilise le préfixe nombreux exemples, le préfixe
dreamweaver. complet dans les définitions de fonctions et dans l'index. Toutefois, dans de
dw. est utilisé.

Convention d'attribution de nom

Les conventions d'attribution de nom suivantes sont utilisées dans ce manuel :
Vous — le développeur responsable de la rédaction des extensions
L'utilisateur — la personne utilisant Dreamweaver

Chapitre 2 : API d'E/S des fichiers

Adobe® Dreamweaver® CS3 comprend une bibliothèque partagée C, appelée DWfile, qui donne aux auteurs d'objets, de commandes, de comportements, de traducteurs de données, de panneaux flottants et d'inspecteurs Propriétés la possibilité de lire et d'écrire des fichiers sur le système de fichiers local. Ce chapitre décrit l'API d'entrée/sortie des fichiers et son utili­sation.
Pour obtenir des informations générales sur la façon dont les bibliothèques C interagissent avec l'interpréteur JavaScript dans Dreamweaver, voir « Extensibilité de niveau C » dans le manuel Extension de Dreamweaver.

Accès aux fichiers de configuration

Sur les plates-formes Microsoft Windows 2000, Windows XP et Mac OS X, les utilisateurs disposent de leur propre copie des fichiers de configuration. Chaque fois que Dreamweaver écrit dans un fichier de configuration, il le fait dans le dossier Configuration de l'utilisateur. De même, lorsqu'il lit un fichier de configuration, Dreamweaver commence par rechercher ce fichier dans le dossier Configuration de l'utilisateur, puis dans le dossier Configuration de l'application. Les fonctions DWfile procèdent de la même manière. En d'autres termes, si une extension lit ou écrit un fichier dans le dossier Configu­ration de l'application, elle se reporte aussi au dossier Configuration de l'utilisateur. Pour plus d'informations sur les dossiers Configuration dans un environnement multiutilisateur, voir Extension de Dreamweaver.
5

API d'E/S des fichiers

Toutes les fonctions de l'API d'E/S des fichiers sont des méthodes associées à l'objet DWfile.

DWfile.copy()

Disponibilité
Dreamweaver 3.
Description
Cette fonction copie le fichier spécifié vers un nouvel emplacement.
Arguments
originalURL, copyURL
L'argument originalURL, exprimé sous la forme d'une URL de type file://, représente le fichier que vous souhaitez copier.
L'argument copyURL, exprimé sous la forme d'une URL de type file://, représente l'emplacement où vous souhaitez
enregistrer le fichier copié.
Valeurs renvoyées
Valeur booléenne : true si la copie réussit et false dans le cas contraire.
Exemple
Le code suivant copie un fichier appelé myconfig.cfg vers myconfig_backup.cfg :
var fileURL = "file:///c|/Config/myconfig.cfg"; var newURL ="file:///c|/Config/myconfig_backup.cfg"; DWfile.copy(fileURL, newURL);
ADOBE DREAMWEAVER 9.0
Guide des API

DWfile.createFolder()

Disponibilité
Dreamweaver 2.
Description
Cette fonction crée un dossier à l'emplacement spécifié.
Arguments
folderURL
L'argument folderURL, exprimé sous la forme d'une URL de type file://, représente l'emplacement dans lequel vous
souhaitez créer le dossier.
Valeurs renvoyées
Valeur booléenne : true si la création du dossier a réussi et false dans le cas contraire.
Exemple
Le code suivant tente de créer un dossier nommé tempFolder à la racine du lecteur C et affiche un message d'avertissement indiquant si l'opération a réussi.
var folderURL = "file:///c|/tempFolder"; if (DWfile.createFolder(folderURL)){
alert("Création de " + folderURL);
}else{
alert("Impossible de créer " + folderURL);
}
6

DWfile.exists()

Disponibilité
Dreamweaver 2.
Description
Cette fonction vérifie l'existence du fichier spécifié.
Arguments
fileURL
L'argument fileURL, exprimé sous la forme d'une URL de type file://, représente le fichier requis.
Valeurs renvoyées
Valeur booléenne : true si le fichier existe et false dans le cas contraire.
Exemple
Le code suivant recherche le fichier mydata.txt et affiche un message d'avertissement indiquant à l'utilisateur si le fichier existe :
var fileURL = "file:///c|/temp/mydata.txt"; if (DWfile.exists(fileURL)){
alert(fileURL + " existe !");
}else{
alert(fileURL + " n'existe pas.");
}
ADOBE DREAMWEAVER 9.0
Guide des API

DWfile.getAttributes()

Disponibilité
Dreamweaver 2.
Description
Cette fonction obtient les attributs du fichier ou dossier spécifié.
Arguments
fileURL
L'argument fileURL, exprimé sous la forme d'une URL de type file://, représente le fichier ou dossier dont vous souhaitez
obtenir les attributs.
Valeurs renvoyées
Chaîne représentant les attributs du fichier ou du dossier spécifié. Si le fichier ou le dossier n'existe pas, cette fonction renvoie la valeur
R signifie lecture seule.
D signifie dossier.
H signifie masqué.
S indique un fichier ou dossier système.
null. Les caractères suivants de la chaîne représentent les attributs :
7
Exemple
Le code suivant obtient les attributs du fichier mydata.txt et affiche un message d'avertissement si le fichier est en lecture seule :
var fileURL = "file:///c|/temp/mydata.txt"; var str = DWfile.getAttributes(fileURL); if (str && (str.indexOf("R") != -1)){
alert(fileURL + " est en lecture seule !");
}

DWfile.getModificationDate()

Disponibilité
Dreamweaver 2.
Description
Cette fonction renvoie l'heure à laquelle le fichier a été modifié pour la dernière fois.
Arguments
fileURL
L'argument fileURL, exprimé sous la forme d'une URL de type file://, représente le fichier dont vous vérifiez l'heure de
la dernière modification.
Valeurs renvoyées
Chaîne qui contient un nombre hexadécimal représentant le nombre d'unités de temps écoulées depuis une base de temps donnée. La signification exacte des unités de temps et de la base de temps dépend de la plate-forme ; sous Windows, par exemple, une unité de temps est égale à 100 ns et la base de temps est le 1er janvier 1600.
ADOBE DREAMWEAVER 9.0
Guide des API
Exemple
Comme la valeur renvoyée par cette fonction n'est pas une date et une heure identifiables et qu'elle dépend de la plate-forme employée, il est utile d'appeler la fonction deux fois pour comparer les valeurs renvoyées. L'exemple de code suivant renvoie les dates de modification des fichiers file1.txt et file2.txt et affiche un message d'avertissement indiquant le fichier le plus récent :
var file1 = "file:///c|/temp/file1.txt"; var file2 = "file:///c|/temp/file2.txt"; var time1 = DWfile.getModificationDate(file1); var time2 = DWfile.getModificationDate(file2); if (time1 == time2){
alert("file1 et file2 ont été enregistrés en même temps");
}else if (time1 < time2){
alert("file1 est plus ancien que file2");
}else{
alert("file1 est plus récent que file2");
}

DWfile.getCreationDate()

Disponibilité
Dreamweaver 4.
8
Description
Cette fonction renvoie l'heure à laquelle le fichier a été créé.
Arguments
fileURL
L'argument fileURL, exprimé sous la forme d'une URL de type file://, représente le fichier dont vous vérifiez l'heure de
création.
Valeurs renvoyées
Chaîne qui contient un nombre hexadécimal représentant le nombre d'unités de temps écoulées depuis une base de temps donnée. La signification exacte des unités de temps et de la base de temps dépend de la plate-forme ; sous Windows, par exemple, une unité de temps est égale à 100 ns et la base de temps est le 1er janvier 1600.
Exemple
Vous pouvez appeler cette fonction ainsi que la DWfile.getModificationDate() pour un fichier afin de comparer les dates de modification et de création :
var file1 = "file:///c|/temp/file1.txt"; var time1 = DWfile.getCreationDate(file1); var time2 = DWfile.getModificationDate(file1); if (time1 == time2){
alert("file1 n'a pas été modifié depuis sa création");
}else if (time1 < time2){
alert("file1 a été modifié pour la dernière fois à " + time2);
}
ADOBE DREAMWEAVER 9.0
Guide des API

DWfile.getCreationDateObj()

Disponibilité
Dreamweaver MX.
Description
Cette fonction obtient l'objet JavaScript représentant l'heure de création du fichier.
Arguments
fileURL
L'argument fileURL, exprimé sous la forme d'une URL de type file://, représente le fichier dont vous vérifiez l'heure de
création.
Valeurs renvoyées
Obtient un objet Date JavaScript représentant la date et l'heure de création du fichier spécifié.

DWfile.getModificationDateObj()

Disponibilité
Dreamweaver MX.
9
Description
Cette fonction obtient l'objet Date JavaScript représentant l'heure de la dernière modification du fichier.
Arguments
fileURL
L'argument fileURL, exprimé sous la forme d'une URL de type file://, représente le fichier dont vous vérifiez l'heure de
modification la plus récente.
Valeurs renvoyées
Obtient un objet Date JavaScript représentant la date et l'heure de la dernière modification du fichier spécifié.

DWfile.getSize()

Disponibilité
Dreamweaver MX.
Description
Cette fonction obtient la taille du fichier spécifié.
Arguments
fileURL
L'argument fileURL, exprimé sous la forme d'une URL de type file://, représente le fichier dont vous vérifiez la taille.
Valeurs renvoyées
Nombre entier qui représente la taille réelle du fichier spécifié, exprimée en octets.
ADOBE DREAMWEAVER 9.0
Guide des API

DWfile.listFolder()

Disponibilité
Dreamweaver 2.
Description
Cette fonction obtient une liste du contenu du dossier spécifié.
Arguments
folderURL, {constraint}
L'argument folderURL est le dossier dont vous souhaitez obtenir le contenu, exprimé sous la forme d'une URL de type
file:// et d'un masque de fichier facultatif composé de caractères génériques. Les caractères génériques valides sont les astérisques (*), qui représentent un ou plusieurs caractères, et les points d'interrogation (?), qui représentent un seul caractère.
L'argument constraint, s'il est fourni, doit être soit "files" (renvoyer uniquement les fichiers), soit "directories"
(renvoyer uniquement les dossiers). Si cet argument n'est pas spécifié, la fonction renvoie aussi bien des fichiers que des dossiers.
Valeurs renvoyées
Tableau de chaînes représentant le contenu du dossier.
10
Exemple
Le code suivant obtient une liste de tous les fichiers texte (TXT) du dossier C:/Temp et affiche la liste dans un message d'avertissement.
var folderURL = "file:///c|/temp"; var fileMask = "*.txt"; var list = DWfile.listFolder(folderURL + "/" + fileMask, "files"); if (list){
alert(folderURL + " contient : " + list.join("\n"));
}

DWfile.read()

Disponibilité
Dreamweaver 2.
Description
Cette fonction lit le contenu du fichier spécifié dans une chaîne.
Arguments
fileURL
L'argument fileURL, exprimé sous la forme d'une URL de type file://, représente le fichier que vous souhaitez lire.
Valeurs renvoyées
Soit une chaîne indiquant le contenu du fichier, soit la valeur null si la lecture échoue.
Exemple
Le code suivant lit le fichier mydata.txt et, s'il réussit, affiche un message d'avertissement renfermant le contenu du fichier :
var fileURL = "file:///c|/temp/mydata.txt"; var str = DWfile.read(fileURL); if (str){
alert(fileURL + " contient : " + str);
}
ADOBE DREAMWEAVER 9.0
Guide des API

DWfile.remove()

Disponibilité
Dreamweaver 3.
Description
Cette fonction permet de supprimer le fichier spécifié.
Arguments
fileURL
L'argument fileURL, exprimé sous la forme d'une URL de type file://, représente le fichier que vous souhaitez supprimer.
Valeurs renvoyées
Valeur booléenne : true si l'opération réussit et false dans le cas contraire.
Exemple
L'exemple suivant utilise la fonction DWfile.getAttributes() pour déterminer si le fichier est accessible en lecture seule et la fonction
function deleteFile(){
var delAnyway = false; var selIndex = document.theForm.menu.selectedIndex;
var selFile = document.theForm.menu.options[selIndex].value; if (DWfile.getAttributes(selFile).indexOf('R') != -1){
}
}
confirm() pour afficher à l'utilisateur une boîte de dialogue de type Oui/Non :
delAnyway = confirm('Ce fichier est en lecture seule. Voulez-vous quand même le supprimer ?'); if (delAnyway){
DWfile.remove(selFile);
}
11

DWfile.setAttributes()

Disponibilité
Dreamweaver MX.
Description
Cette fonction définit les attributs système d'un fichier donné.
Arguments
fileURL, strAttrs
L'argument fileURL, exprimé sous la forme d'une URL de type file://, identifie le fichier dont vous définissez les attributs.
L'argument strAttrs spécifie les attributs système du fichier identifié par l'argument fileURL. Le tableau suivant décrit
les valeurs d'attribut valides et leur signification :
Valeur d'attribut Description
R Lecture seule
W
H Masqué
V Visible (annule H)
Les valeurs acceptables pour la chaîne
Accessible en écriture (annule R)
strAttrs sont : R, W, H, V, RH, RV, WH ou WV.
ADOBE DREAMWEAVER 9.0
Guide des API
N'utilisez pas R et W conjointement, car ces attributs s'excluent l'un l'autre. Si vous les associez, R perd tout son sens et le fichier est défini comme étant accessible en écriture ( l'autre. Si vous les associez,
H perd tout son sens et le fichier est défini comme étant visible (V).
W). N'utilisez pas H et V conjointement, car ils s'excluent aussi l'un
Si vous spécifiez l'attribut H ou V sans indiquer d'attribut de lecture/écriture R ou W, l'attribut de lecture/écriture existant pour le fichier reste inchangé. De même, si vous spécifiez l'attribut
R ou W sans spécifier un attribut de visibilité H ou V, l'attribut
de visibilité existant pour le fichier reste inchangé.
Valeurs renvoyées
Aucune.

DWfile.write()

Disponibilité
Dreamweaver 2.
Description
Cette fonction rédige la chaîne spécifiée dans le fichier spécifié. Si le fichier spécifié n'existe pas, il est créé.
Arguments
fileURL, text, {mode}
L'argument fileURL, exprimé sous la forme d'une URL de type file://, représente le fichier dans lequel vous écrivez une
chaîne.
L'argument text est la chaîne qui doit être écrite.
L'argument mode, s'il est fourni, doit être "append". Si cet argument est omis, le contenu du fichier est écrasé par la chaîne.
12
Valeurs renvoyées
Valeur booléenne : true si l'écriture de la chaîne dans le fichier a réussi et false dans le cas contraire.
Exemple
Le code suivant tente d'écrire la chaîne "xxx" dans le fichier mydata.txt et affiche un message d'avertissement si l'opération d'écriture réussit. Il essaie ensuite d'annexer la chaîne cette opération réussit. Après l'exécution de ce script, le fichier mydata.txt contient uniquement le texte
var fileURL = "file:///c|/temp/mydata.txt"; if (DWfile.write(fileURL, "xxx")){
alert("Ecriture de xxx dans " + fileURL); } if (DWfile.write(fileURL, "aaa", "append")){
alert("aaa annexé à " + fileURL); }
"aaa" au fichier et affiche un deuxième message d'avertissement si
xxxaaa.

Chapitre 3 : API HTTP

Les extensions ne fonctionnent pas uniquement dans le système de fichiers local. Adobe® Dreamweaver® CS3 permet d'échanger des informations avec un serveur Web via le protocole HTTP (Hypertext Transfer Protocol). Ce chapitre décrit l'API HTTP et son utilisation.

Fonctionnement de l'API HTTP

Toutes les fonctions de l'API HTTP sont des méthodes associées à l'objet MMHttp. La plupart d'entre elles acceptent au moins une URL comme argument et la plupart renvoient un objet. Le port par défaut pour les arguments URL est 80. Pour spécifier un port différent, ajoutez deux points (:) et le numéro de port à la suite de l'URL, comme dans l'exemple suivant :
MMHttp.getText("http://www.myserver.com:8025");
Pour les fonctions qui renvoient un objet, cet objet possède deux propriétés : statusCode et data.
La propriété statusCode indique l'état de l'opération ; les valeurs possibles sont notamment :
200 : Etat OK
400 : Demande inintelligible
404 : URL demandée introuvable
405 : Le serveur ne prend pas en charge la méthode demandée
500 : Erreur de serveur inconnue
503 : Capacité du serveur atteinte
Pour obtenir une liste complète des codes d'état pour votre serveur, consultez votre fournisseur d'accès Internet ou votre administrateur système.
13
La valeur de la propriété des fonctions individuelles.
Les fonctions qui renvoient un objet ont également une version de rappel (« callback »). Les fonctions de rappel permettent aux autres fonctions de s'exécuter pendant que le serveur Web traite une requête HTTP. Ceci est utile si vous effectuez plusieurs requêtes HTTP à partir de Dreamweaver. La version de rappel d'une fonction transmet directement son ID et sa valeur de renvoi à la fonction spécifiée sous forme de premier argument.
data varie selon la fonction ; les valeurs possibles sont spécifiées dans les listes

API HTTP

Cette section présente en détail les fonctions qui sont des méthodes de l'objet MMHttp.

MMHttp.clearServerScriptsFolder()

Disponibilité
Dreamweaver MX.
Description
Supprime le dossier _mmServerScripts (et tous ses fichiers) sous le dossier racine du site en cours, qu'il soit local ou distant. Le dossier _mmServerScripts se trouve dans le dossier Configuration/Connections/Scripts/
server-model/_mmDBScripts.
ADOBE DREAMWEAVER 9.0
Guide des API
Arguments
serverScriptsfolder
L'argument serverScriptsfolder est une chaîne qui nomme un dossier donné, en liaison avec le dossier Configuration
du serveur d'application, à partir duquel vous pouvez extraire et supprimer les scripts de serveur.
Valeurs renvoyées
Un objet représentant la réponse du serveur. La propriété data de cet objet est une chaîne englobant le contenu des scripts supprimés. Si une erreur se produit, Dreamweaver la consigne dans la propriété
statusCode de l'objet renvoyé.
Exemple
Le code suivant, dans un fichier de commandes de menu du dossier Configuration/Menus, supprime tous les fichiers du dossier _mmServerScripts lorsque celle-ci est appelée depuis un menu :
<!-- MENU-LOCATION=NONE --> <html> <head> <TITLE>Suppression des scripts de serveur</TITLE> <SCRIPT SRC="ClearServerScripts.js"></SCRIPT> <SCRIPT LANGUAGE="javascript"> </SCRIPT> <body onLoad="MMHttp.clearServerScriptsFolder()"> </body> </html>
14

MMHttp.clearTemp()

Description
Cette fonction supprime tous les fichiers du dossier Configuration/Temp situé dans le dossier de l'application Dream­weaver.
Arguments
Aucun.
Valeurs renvoyées
Aucune.
Exemple
Le code suivant, lorsqu'il est enregistré dans un fichier du dossier Configuration/Shutdown, supprime tous les fichiers du dossier Configuration/Temp lorsque l'utilisateur quitte Dreamweaver :
<html> <head> <title>Suppression des fichiers temporaires à la fermeture</title> </head> <body onLoad="MMHttp.clearTemp()"> </body> </html>
ADOBE DREAMWEAVER 9.0
Guide des API

MMHttp.getFile()

Description
Cette fonction obtient le fichier situé à l'URL spécifiée et l'enregistre dans le dossier Configuration/Temp situé dans le dossier de l'application Dreamweaver. Dreamweaver crée automatiquement des sous-dossiers qui reproduisent la structure de dossiers du serveur ; par exemple, si le fichier spécifié est dans www.dreamcentral.com/people/index.html, Dream­weaver enregistre le fichier index.html dans le sous-dossier People du dossier www.dreamcentral.com.
Arguments
URL, {prompt}, {saveURL}, {titleBarLabel}
L'argument URL est une URL absolue sur un serveur Web ; si http:// n'est pas indiqué dans l'URL, Dreamweaver considère
qu'il s'agit du protocole HTTP.
L'argument facultatif prompt est une valeur booléenne spécifiant s'il faut inviter l'utilisateur à enregistrer le fichier. Si
saveURL est en dehors du dossier Configuration/Temp, une valeur de prompt égale à false n'est pas prise en compte
pour des raisons de sécurité.
L'argument facultatif saveURL est l'emplacement sur le disque dur de l'utilisateur où le fichier doit être enregistré,
exprimé sous la forme d'une URL de type file://. Si l'argument prompt a pour valeur dossier Configuration/Temp, l'utilisateur peut remplacer
saveURL dans la boîte de dialogue d'enregistrement.
L'argument facultatif titleBarLabel est le libellé qui doit figurer dans la barre de titre de la boîte de dialogue d'enregis-
trement.
true ou si saveURL est en dehors du
15
Valeurs renvoyées
Un objet représentant la réponse du serveur. La propriété data de cet objet est une chaîne contenant l'emplacement où le fichier a été enregistré, exprimé sous la forme d'une URL de type file://. Normalement, la propriété contient le code d'état envoyé par le serveur. Toutefois, si une erreur de disque se produit lors de l'enregistrement du fichier sur le lecteur local, la propriété de l'opération :
statusCode contient un entier représentant l'un des codes d'erreur suivants en cas d'échec
statusCode de l'objet
1 : Erreur inconnue
2 : Fichier introuvable
3 : Chemin non valide
4 : La limite du nombre de fichiers ouverts est atteinte
5 : Accès refusé
6 : Identificateur de fichier non valide
7 : Impossible de supprimer le répertoire de travail en cours
8 : Plus d'entrées de dossier
9 : Erreur lors de la définition du pointeur de fichier
10 : Erreur matérielle
11 : Violation de partage
12 : Violation de verrouillage
13 : Disque saturé
14 : Fin du fichier atteinte
ADOBE DREAMWEAVER 9.0
Guide des API
Exemple
Le code suivant obtient un fichier HTML, enregistre tous les fichiers dans le dossier Configuration/Temp, puis ouvre la copie locale du fichier HTML dans un navigateur :
var httpReply = MMHttp.getFile("http://www.dreamcentral.com/people/profiles/scott.html", false); if (Boolean == 200){
var saveLoc = httpReply.data;
dw.browseDocument(saveLoc); }

MMHttp.getFileCallback()

Description
Cette fonction obtient le fichier situé à l'URL spécifiée, l'enregistre dans le dossier Configuration/Temp du dossier de l'application Dreamweaver, puis appelle la fonction spécifiée avec l'ID et le résultat de la requête. Lorsque le fichier est enregistré localement, Dreamweaver crée automatiquement des sous-dossiers qui reproduisent la structure de dossiers du serveur ; par exemple, si le fichier spécifié est dans www.dreamcentral.com/people/index.html, Dreamweaver enregistre le fichier index.html dans le sous-dossier People du dossier www.dreamcentral.com.
Arguments
callbackFunction, URL, {prompt}, {saveURL}, {titleBarLabel}
L'argument callbackFunction est le nom de la fonction JavaScript à appeler lorsque la requête HTTP est terminée.
L'argument URL est une URL absolue sur un serveur Web ; si http:// n'est pas indiqué dans l'URL, Dreamweaver considère
qu'il s'agit du protocole HTTP.
L'argument facultatif prompt est une valeur booléenne spécifiant s'il faut inviter l'utilisateur à enregistrer le fichier. Si
l'argument
false n'est pas prise en compte pour des raisons de sécurité.
L'argument facultatif saveURL est l'emplacement sur le disque dur de l'utilisateur où le fichier doit être enregistré,
exprimé sous la forme d'une URL de type file://. Si l'argument prompt a pour valeur dossier Configuration/Temp, l'utilisateur peut remplacer
L'argument facultatif titleBarLabel est le libellé qui doit figurer dans la barre de titre de la boîte de dialogue d'enregis-
trement.
saveURL spécifie un emplacement en dehors du dossier Configuration/Temp, une valeur de prompt égale à
true ou si saveURL est en dehors du
saveURL dans la boîte de dialogue d'enregistrement.
16
Valeurs renvoyées
Un objet représentant la réponse du serveur. La propriété data de cet objet est une chaîne contenant l'emplacement où le fichier a été enregistré, exprimé sous la forme d'une URL de type file://. Normalement, la propriété
statusCode de l'objet
contient le code d'état envoyé par le serveur. Toutefois, si une erreur disque se produit lors de l'enregistrement du fichier sur le lecteur local, la propriété
statusCode contient un nombre entier représentant un code d'erreur. Voir
« MMHttp.getFile() », page 15 pour une liste des codes d'erreur possibles.

MMHttp.getText()

Disponibilité
Dreamweaver UltraDev 4, améliorée dans la version Dreamweaver MX.
Description
Extrait le contenu du document situé à l'URL spécifiée.
ADOBE DREAMWEAVER 9.0
Guide des API
Arguments
URL, {serverScriptsFolder}
L'argument URL est une URL absolue sur un serveur Web. Si http:// n'est pas indiqué dans l'URL, Dreamweaver considère
qu'il s'agit du protocole HTTP.
L'argument serverScriptsFolder est une chaîne facultative qui nomme un dossier spécifique, lié au dossier Configu-
ration du serveur d'application, à partir duquel vous souhaitez extraire les scripts de serveur. Pour extraire les scripts, Dreamweaver utilise le protocole de transfert approprié (par exemple FTP, WebDAV ou Remote File System). Dream­weaver copie ces fichiers dans le sous-dossier _mmServerScripts dans le dossier racine du site en cours.
Si une erreur se produit, Dreamweaver la consigne dans la propriété
statusCode de l'objet renvoyé.

MMHttp.getTextCallback()

Disponibilité
Dreamweaver UltraDev 4, amélioré dans Dreamweaver MX.
Description
Extrait le contenu du document situé à l'URL spécifiée et le transmet à la fonction spécifiée.
Arguments
callbackFunc, URL, {serverScriptsFolder}
L'argument callbackFunc est la fonction JavaScript à appeler lorsque la requête HTTP est terminée.
L'argument URL est une URL absolue sur un serveur Web ; si http:// n'est pas indiqué dans l'URL, Dreamweaver considère
qu'il s'agit du protocole HTTP.
L'argument serverScriptsFolder est une chaîne facultative qui nomme un dossier spécifique, lié au dossier Configu-
ration du serveur d'application, à partir duquel vous souhaitez extraire les scripts de serveur. Pour extraire les scripts, Dreamweaver utilise le protocole de transfert approprié (par exemple, FTP, WebDAV ou Remote File System). Dream­weaver extrait ces fichiers et les transmet à la fonction identifiée par
Si une erreur survient, Dreamweaver MX la consigne dans la propriété
callbackFunc.
statusCode de l'objet renvoyé.
17

MMHttp.postText()

Disponibilité
Dreamweaver UltraDev 4, améliorée dans la version Dreamweaver MX.
Description
Exécute un envoi HTTP des données définies à l'URL spécifiée. En règle générale, les données associées à une opération d'envoi se présentent sous la forme de texte codé en formulaire, mais il peut s'agir de tout type de données que le serveur peut accepter.
Arguments
URL, dataToPost, {contentType}, {serverScriptsFolder}
L'argument URL est une URL absolue sur un serveur Web ; si http:// n'est pas indiqué dans l'URL, Dreamweaver considère
qu'il s'agit du protocole HTTP.
L'argument dataToPost représente les données à envoyer. Si le troisième argument est "application/x-www-form-
urlencoded"
spécification RFC 1866 (disponible à l'adresse www.faqs.org/rfcs/rfc1866.html).
L'argument facultatif contentType est le type de contenu des données à envoyer. S'il n'est pas spécifié, il prend par défaut
la valeur
L'argument serverScriptsFolder est une chaîne facultative qui nomme un dossier spécifique, lié au dossier Configu-
ration du serveur d'application, vers lequel vous souhaitez envoyer les données. Pour envoyer les données, Dreamweaver utilise le protocole de transfert approprié (par exemple, FTP, WebDAV ou Remote File System).
Si une erreur se produit, Dreamweaver la consigne dans la propriété
ou s'il n'est pas spécifié, dataToPost doit être codé en formulaire conformément à la section 8.2.1 de la
"application/x-www-form-urlencoded".
statusCode de l'objet renvoyé.
ADOBE DREAMWEAVER 9.0
Guide des API
Exemple
Dans l'exemple suivant d'appel de la fonction MMHttp.postText(), supposons qu'un développeur a placé le fichier myScripts.cfm dans un dossier nommé DeployScripts, qui se trouve dans le dossier Configuration sur l'ordinateur local :
MMHttp.postText()
"http://ultraqa8/DeployScripts/myScripts.cfm",
"arg1=Foo",
"application/x-www-form-urlencoded",
"Configuration/DeployScripts/" )
Voici ce qui se produit lorsque Dreamweaver effectue cet appel de fonction :
1 Le fichier myScripts.cfm du dossier Configuration/DeployScripts de l'ordinateur local est copié dans un autre dossier nommé DeployScripts, qui constitue un sous-dossier du dossier racine du site Web ultraqa8. Pour déployer les fichiers, Dreamweaver utilise le protocole spécifié dans les propriétés de configuration du site.
2 Dreamweaver utilise le protocole HTTP pour envoyer les données
arg1=Foo vers le serveur Web.
3 En réponse à la requête d'envoi, le serveur Web sur ultraqa8 exécute le script myScripts.cfm à l'aide des données arg1.

MMHttp.postTextCallback()

Disponibilité
Dreamweaver UltraDev 4, améliorée dans la version Dreamweaver MX.
18
Description
Exécute un envoi HTTP du texte à l'URL spécifiée et transmet la réponse du serveur à la fonction spécifiée. En règle générale, les données associées à une opération d'envoi se présentent sous la forme de texte codé en formulaire, mais il peut s'agir de tout type de données que le serveur peut accepter.
Arguments
callbackFunc, URL, dataToPost, {contentType}, {serverScriptsFolder}
L'argument callbackFunc est le nom de la fonction JavaScript à appeler lorsque la requête HTTP est terminée.
L'argument URL est une URL absolue sur un serveur Web ; si http:// n'est pas indiqué dans l'URL, Dreamweaver considère
qu'il s'agit du protocole HTTP.
L'argument dataToPost représente les données à envoyer. Si le troisième argument est "application/x-www-form-
urlencoded"
cation RFC 1866 (disponible à l'adresse www.faqs.org/rfcs/rfc1866.html).
ou s'il n'est pas spécifié, data doit être codé en formulaire conformément à la section 8.2.1 de la spécifi-
L'argument facultatif contentType correspond au type de contenu des données à envoyer. S'il n'est pas spécifié, il prend
par défaut la valeur
"application/x-www-form-urlencoded".
L'argument serverScriptsFolder est une chaîne facultative. Il nomme un dossier donné, en liaison avec le dossier
Configuration du serveur d'application sur lequel vous voulez envoyer les données. Pour envoyer les données, Dream­weaver utilise le protocole de transfert approprié (par exemple, FTP, WebDAV ou Remote File System). Dreamweaver extrait ces données et les transmet à la fonction identifiée par
Si une erreur se produit, Dreamweaver la consigne dans la propriété statusCode de l'objet renvoyé.
callbackFunc.

Chapitre 4 : API de Design Notes

Adobe® Dreamweaver® CS3, Fireworks et Flash permettent aux concepteurs et développeurs de sites Web de stocker et de récupérer des informations complémentaires sur les documents (telles que des commentaires de révision, des notes de modification ou le fichier source d'un document GIF ou JPEG) dans des fichiers appelés Design Notes.
MMNotes est une bibliothèque C partagée qui permet aux auteurs d'extensions de lire et d'écrire dans les fichiers Design Notes. A l'instar de la bibliothèque partagée DWfile, MMNotes possède une API JavaScript qui permet d'appeler les fonctions contenues dans la bibliothèque à partir d'objets, de commandes, de comportements, de panneaux flottants, d'inspecteurs de propriétés et de traducteurs de données.
MMNotes possède également une API C qui donne à d'autres applications la possibilité de lire et d'écrire dans les fichiers Design Notes. La bibliothèque partagée MMNotes peut être utilisée indépendamment de Dreamweaver, que celui-ci soit installé ou non.
Pour plus d'informations sur l'utilisation de la fonctionnalité Design Notes dans Dreamweaver, consultez le manuel Utilisation de Dreamweaver.
19

Fonctionnement de Design Notes

Chaque fichier Design Notes stocke des informations relatives à un seul document. Si un fichier Design Notes est associé à un ou plusieurs documents dans un dossier, Dreamweaver crée un sous-dossier _notes pour y stocker les fichiers Design Notes. Le dossier _notes et les fichiers Design Notes qu'il contient ne sont pas visibles dans la fenêtre Site, mais ils s'affichent dans le Finder Macintosh ou dans l'Explorateur Windows. Un nom de fichier Design Notes est composé du nom du fichier principal suivi de l'extension .mno. Par exemple, le fichier Design Notes associé à avocado8.gif est avocado8.gif.mno.
Les fichiers Design Notes sont des fichiers XML stockant des informations sous la forme d'une série de paires clé/valeur. La clé décrit le type des informations stockées et la valeur représente les informations. Les clés sont limitées à 64 caractères.
L'exemple suivant illustre le fichier Design Notes associé au fichier foghorn.gif.mno :
<?xml version="1.0" encoding="iso-8859-1" ?> <info>
<infoitem key="FW
foghorn.png" /> <infoitem key="Auteur" value="Heidi B." /> <infoitem key="Status" value="Version finale, approuvée par Jay L." />
</info>
_source" value="file:///C|sites/dreamcentral/images/sourceFiles/¬

API JavaScript de Design Notes

Toutes les fonctions de l'API JavaScript de Design Notes sont des méthodes associées à l'objet MMNotes.

MMNotes.close()

Description
Cette fonction ferme le fichier Design Notes spécifié et enregistre les modifications éventuelles. Si toutes les paires clé/valeur ont été supprimées, Dreamweaver supprime le fichier Design Notes. S'il s'agit du dernier fichier Design Notes dans le dossier _notes, Dreamweaver supprime également le dossier.
Remarque : Appelez toujours la fonction weaver écrive dans le fichier.
MMNotes.close() une fois le travail sur les Design Notes terminé, afin que Dream-
Arguments
fileHandle
L'argument fileHandle est l'identificateur de fichier renvoyé par la fonction MMNotes.open().
Valeurs renvoyées
Aucune.
Exemple
Consultez « MMNotes.set() », page 23.

MMNotes.filePathToLocalURL()

Description
Cette fonction convertit le chemin d'accès du lecteur local spécifié en une URL de type file://.
Arguments
drivePath
L'argument drivePath est une chaîne contenant le chemin d'accès complet du lecteur.
Valeurs renvoyées
Une chaîne contenant l'URL de type file:// du fichier spécifié.
ADOBE DREAMWEAVER 9.0
Guide des API
20
Exemple
Un appel à la fonction MMNotes.filePathToLocalURL('C:/sites/webdev/index.htm') renvoie
"file:///c|sites/webdev/index.htm".

MMNotes.get()

Description
Cette fonction obtient la valeur de la clé spécifiée dans le fichier Design Notes indiqué.
Arguments
fileHandle, keyName
L'argument fileHandle est l'identificateur de fichier renvoyé par MMNotes.open().
L'argument keyName est une chaîne contenant le nom de la clé.
Valeurs renvoyées
Une chaîne contenant la valeur de la clé.
Exemple
Consultez « MMNotes.getKeys() », page 21.

MMNotes.getKeyCount()

Description
Cette fonction obtient le nombre de paires clé/valeur du fichier Design Notes spécifié.
Arguments
fileHandle
L'argument fileHandle est l'identificateur de fichier renvoyé par la fonction MMNotes.open().
Valeurs renvoyées
Un nombre entier représentant le nombre de paires clé/valeur du fichier Design Notes spécifié.
ADOBE DREAMWEAVER 9.0

MMNotes.getKeys()

Description
Cette fonction renvoie une liste de toutes les clés d'un fichier Design Notes.
Arguments
fileHandle
L'argument fileHandle est l'identificateur de fichier renvoyé par la fonction MMNotes.open().
Valeurs renvoyées
Un tableau de chaînes, chacune d'elles contenant le nom d'une clé.
Exemple
Le code suivant peut être utilisé dans un panneau flottant personnalisé afin d'afficher les informations Design Notes relatives au document actif :
var noteHandle = MMNotes.open(dw.getDocumentDOM().URL); var theKeys = MMNotes.getKeys(noteHandle); var noteString = ""; var theValue = ""; for (var i=0; i < theKeys.length; i++){
theValue = MMNotes.get(noteHandle,theKeys[i]); noteString +=0theKeys[i] + " = " theValue + "\n";
} document.theForm.bigTextField.value = noteString; // toujours fermer noteHandle MMNotes.close(noteHandle);
Guide des API
21

MMNotes.getSiteRootForFile()

Description
Cette fonction détermine la racine du site pour le fichier Design Notes spécifié.
Arguments
fileURL
L'argument fileURL, exprimé sous la forme d'une URL de type file://, est le chemin d'un fichier local.
Valeurs renvoyées
Une chaîne contenant le chemin du dossier racine lo cal pour le site, exprimé sous la forme d'une URL de type file://, ou une chaîne v ide si Dreamweaver n'est pas installé ou si le fichier Design Notes se trouve en dehors de tout site défini par Dream­weaver. Cette fonction recherche tous les sites définis dans Dreamweaver.

MMNotes.getVersionName()

Description
Cette fonction renvoie le nom de version de la bibliothèque partagée MMNotes indiquant l'application qui l'a implémentée.
Arguments
Aucun.
Valeurs renvoyées
Une chaîne contenant le nom de l'application qui a implémenté la bibliothèque partagée MMNotes.
ADOBE DREAMWEAVER 9.0
Exemple
L'appel de la fonction MMNotes.getVersionName() à partir d'une commande, d'un objet, d'un comportement, d'un inspecteur Propriétés, d'un panneau flottant ou d'un traducteur de données Dreamweaver renvoie de la fonction
MMNotes.getVersionName() à partir de Fireworks renvoie également la valeur "Dreamweaver" étant donné
"Dreamweaver". L'appel
que Fireworks utilise la même version de la bibliothèque (celle qui a été créée par l'équipe technique de Dreamweaver).

MMNotes.getVersionNum()

Description
Cette fonction obtient le numéro de version de la bibliothèque partagée MMNotes.
Arguments
Aucun.
Valeurs renvoyées
Une chaîne contenant le numéro de version.

MMNotes.localURLToFilePath()

Description
Cette fonction convertit l'URL de type file:// spécifiée en un chemin d'accès du lecteur local.
Guide des API
22
Arguments
fileURL
L'argument fileURL, exprimé sous la forme d'une URL de type file://, est le chemin d'un fichier local.
Valeurs renvoyées
Une chaîne contenant le chemin d'accès du lecteur local pour le fichier spécifié.
Exemple
Un appel à la fonction MMNotes.localURLToFilePath('file:///MacintoshHD/images/moon.gif') renvoie "Macin-
toshHD:images:moon.gif"
.

MMNotes.open()

Description
Cette fonction ouvre le fichier Design Notes associé au fichier spécifié ou crée un fichier Design Notes s'il n'en existe pas.
Arguments
filePath, {bForceCreate}
L'argument filePath, exprimé sous la forme d'une URL de type file://, est le chemin du fichier principal auquel le fichier
Design Notes est associé.
L'argument bForceCreate est une valeur booléenne indiquant si la note doit être créée même si la fonctionnalité Design
Notes est désactivée pour le site ou si l'argument
Valeurs renvoyées
L'identificateur du fichier Design Notes ou zéro (0) si le fichier n'a pas été ouvert ni créé.
filePath n'est associé à aucun site.
Exemple
Consultez « MMNotes.set() », page 23.

MMNotes.remove()

Description
Cette fonction supprime la clé spécifiée (et sa valeur) du fichier Design Notes indiqué.
Arguments
fileHandle, keyName
L'argument fileHandle est l'identificateur de fichier renvoyé par la fonction MMNotes.open().
L'argument keyName est une chaîne contenant le nom de la clé à supprimer.
Valeurs renvoyées
Valeur booléenne : true indique que l'opération a réussi ; false indique un échec.

MMNotes.set()

Description
Cette fonction crée ou met à jour une paire clé/valeur dans un fichier Design Notes.
Arguments
fileHandle, keyName, valueString
L'argument fileHandle est l'identificateur de fichier renvoyé par la fonction MMNotes.open().
L'argument keyName est une chaîne contenant le nom de la clé.
L'argument valueString est une chaîne contenant la valeur.
ADOBE DREAMWEAVER 9.0
Guide des API
23
Valeurs renvoyées
Valeur booléenne : true indique que l'opération a réussi ; false indique un échec.
Exemple
L'exemple suivant ouvre le fichier Design Notes associé à un fichier situé sur le site dreamcentral appelé peakhike99/index.html, ajoute une nouvelle paire clé/valeur, modifie la valeur d'une clé existante, puis ferme le fichier de Design Notes :
var noteHandle = MMNotes.open('file:///c|/sites/dreamcentral/peakhike99/
index.html',true);
if(noteHandle > 0){
MMNotes.set(noteHandle,"Auteur","M. G. Miller"); MMNotes.set(noteHandle,"Dernière modification","28 août 1999"); MMNotes.close(noteHandle);
}
ADOBE DREAMWEAVER 9.0
Guide des API

API C de Design Notes

Outre l'API JavaScript, la bibliothèque partagée MMNotes affiche une API C permettant aux autres applications de créer des fichiers Design Notes. Il n'est pas nécessaire d'appeler les fonctions C directement si vous utilisez la bibliothèque partagée MMNotes dans Dreamweaver ; les versions JavaScript de ces fonctions les appellent pour vous.
Cette section décrit ces fonctions, leurs arguments et les valeurs qu'elles renvoient. Les définitions de toutes les fonctions et de tous les types de données sont disponibles dans le fichier MMInfo.h du dossier Extending/c_files dans le dossier de l'application Dreamweaver.

void CloseNotesFile()

Description
Cette fonction ferme le fichier Design Notes spécifié et enregistre les modifications éventuelles. Si toutes les paires clé/valeur ont été supprimées du fichier Design Notes, Dreamweaver supprime ce dernier. Dreamweaver supprime le dossier _notes lorsque le dernier fichier Design Notes est supprimé.
Arguments
noteHandle
L'argument noteHandle est l'identificateur de fichier renvoyé par la fonction OpenNotesFile().
24
Valeurs renvoyées
Aucune.

BOOL FilePathToLocalURL()

Description
Cette fonction convertit le chemin d'accès du lecteur local spécifié en une URL de type file://.
Arguments
const char* drivePath, char* localURLBuf, int localURLMaxLen
L'argument drivePath est une chaîne contenant le chemin d'accès complet du lecteur.
L'argument localURLBuf est la zone de mémoire tampon où l'URL de type file:// est stockée.
L'argument localURLMaxLen est la taille maximale de localURLBuf.
Valeurs renvoyées
Valeur booléenne : true indique que l'opération a réussi ; false indique un échec. L'argument localURLBuf reçoit la valeur de l'URL de type file://.

BOOL GetNote()

Description
Cette fonction obtient la valeur de la clé spécifiée dans le fichier Design Notes indiqué.
Arguments
FileHandle noteHandle, const char keyName[64], char* valueBuf, int valueBufLength
L'argument noteHandle est l'identificateur de fichier renvoyé par la fonction OpenNotesFile().
L'argument keyName[64] est une chaîne contenant le nom de la clé.
L'argument valueBuf est la zone de mémoire tampon où la valeur est stockée.
L'argument valueBufLength est le nombre entier renvoyé par GetNoteLength(noteHandle, keyName), indiquant la
longueur maximale de la mémoire tampon des valeurs.
Loading...
+ 440 hidden pages