ADOBE MX 2004 User Manual [fr]

Guide des API de Dreamweaver
Marques commerciales
Add Life to the Web, Afterburner, Aftershock, Andromedia, Allaire, Animation PowerPack, Aria, Attain, Authorware, Authorware Star, Backstage, Bright Tiger, Clustercats, Cold Fusion, Contribute, Design in Motion, Director, Dream Templates, Dreamweaver, Drumbeat 2000, EDJE, EJIPT, Extreme 3D, Fireworks, Flash, Fontographer, FreeHand, Generator, HomeSite, JFusion, JRun, Kawa, Know Your Site, Knowledge Objects, Knowledge Stream, Knowledge Track, LikeMinds, Lingo, Live Effects, MacRecorder Logo and Design, Macromedia, Macromedia Action!, Macromedia Flash, Macromedia M Logo & Design, Macromedia Spectra, Macromedia xRes Logo and Design, MacroModel, Made with Macromedia, Made with Macromedia Logo and Design, MAGIC Logo and Design, Mediamaker, Movie Critic, Open Sesame!, Roundtrip HTML, Shockwave, Sitespring, SoundEdit, Titlemaker, UltraDev, Web Design 101, what the web can be et Xtra sont des marques commerciales ou des marques déposées de Macromedia, Inc. aux Etats-Unis ou dans d’autres juridictions ou pays. Les autres noms de produit, logos, concepts, titres, mots ou phrases mentionnés dans cette publication peuvent être des marques commerciales, des marques de service ou des noms commerciaux de Macromedia, Inc. ou d’autres entités et peuvent être déposés dans certaines juridictions ou certains pays.
Informations de tiers
Ce manuel contient des liens vers des sites Web tiers qui ne sont pas contrôlés par Macromedia et Macromedia ne peut en aucun cas être tenu responsable du contenu de ces sites. Si vous accédez à l’un de ces sites, vous le faites à vos propres risques. Macromedia propose ces liens dans un but pratique uniquement et ne peut en aucun cas endosser ou accepter la responsabilité du contenu de ces sites tiers.
Vous trouverez des informations sur les logiciels tiers et/ou d’autres conditions générales à l’adresse suivante : www.macromedia.com/go/thirdparty_fr/.
Navigateur Opera ® Copyright © 1995-2002 Opera Software ASA et ses fournisseurs. Tous droits réservés.
Dénégation de responsabilité d’Apple
APPLE COMPUTER, INC. N’ASSUME AUCUNE GARANTIE, IMPLICITE OU EXPLICITE, SUR LE LOGICIEL INFORMATIQUE CI-INCLUS, SA COMMERCIABILITE OU SON ADEQUATION A UN OBJECTIF PARTICULIER. L’EXCLUSION DES GARANTIES IMPLICITES N’ETANT PAS AUTORISEE DANS CERTAINS ETATS, L’EXCLUSION CI-DESSUS PEUT DONC NE PAS S’APPLIQUER A VOTRE CAS. CETTE GARANTIE VOUS OFFRE DES DROITS JURIDIQUES SPECIFIQUES. VOUS POUVEZ DISPOSER DE CERTAINS AUTRES DROITS, QUI VARIENT SELON LES ETATS.
Copyright © 1997-2003 Macromedia, Inc. Tous droits réservés. Ce manuel ne peut pas être copié, photocopié, reproduit, traduit ou converti sous forme électronique ou informatique, en partie ou en totalité, sans l’autorisation écrite préalable de Macromedia, Inc. Numéro de référence ZDW70M400F
Remerciements
Direction : Sheila McGinn Gestion de projet : Robert Berry Rédaction : Robert Berry et David Jacowitz Direction des éditions : Lisa Stanziano Mise en forme : Mary Kraemer Gestion de la production : Patrice O’Neill Conception et production : Adam Barnett, Aaron Begley, Chris Basmajian, John Francis, Jeff Harmon. Remerciements particuliers à Jay London, Jeff Schang, Lori Hylan-Cho, Hisami Scott, Sam Mathews, Jake Cockrell, Russ
Helfand, Randy Edmunds, George Comninos, Rosana Francescato, Charles Nadeau, Bonnie Loo, Gwenael Cossoul, Luciano Arruda, Masayo Noda, Richard Clairicia, Scott Richards, Seungmin Lee, Vincent Truong, Birnou Sébarte et les équipes d’ingénierie et de contrôle qualité de Dreamweaver.
Première édition : Novembre 2003 Macromedia, Inc.
600 Townsend St. San Francisco, CA 94103
TABLE DES MATIERES
CHAPITRE 1 : Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Arrière-plan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Extension de Dreamweaver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Ressources supplémentaires pour les développeurs d’extensions. . . . . . . . . . . . . . . 26
Nouvelles fonctions de Dreamweaver MX 2004 . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Fonctions supprimées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Contenu de page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Activateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Autre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Changements dans la documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Errata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Conventions utilisées dans ce manuel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
PARTIE I : API d’utilitaire
CHAPITRE 2 : API d’E/S des fichiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Accès aux fichiers de configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
API d’E/S des fichiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
DWfile.copy() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
DWfile.createFolder(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
DWfile.exists() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
DWfile.getAttributes() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
DWfile.getModificationDate() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
DWfile.getCreationDate() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
DWfile.getCreationDateObj() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
DWfile.getModificationDateObj(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
DWfile.getSize(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
DWfile.listFolder() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
DWfile.read() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
DWfile.remove() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3
DWfile.setAttributes() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
DWfile.write() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
CHAPITRE 3 : API HTTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Fonctionnement de l’API HTTP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
API HTTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
MMHttp.clearServerScriptsFolder() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
MMHttp.clearTemp() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
MMHttp.getFile() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
MMHttp.getFileCallback(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
MMHttp.getText(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
MMHttp.getTextCallback() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
MMHttp.postText() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
MMHttp.postTextCallback() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
CHAPITRE 4 : API de Design Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Fonctionnement de Design Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
API JavaScript de Design Notes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
MMNotes.close() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
MMNotes.filePathToLocalURL(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
MMNotes.get() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
MMNotes.getKeyCount() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
MMNotes.getKeys(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
MMNotes.getSiteRootForFile() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
MMNotes.getVersionName() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
MMNotes.getVersionNum(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
MMNotes.localURLToFilePath() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
MMNotes.open() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
MMNotes.remove() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
MMNotes.set(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
API C de Design Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
void CloseNotesFile() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
BOOL FilePathToLocalURL() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
BOOL GetNote(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
int GetNoteLength() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
int GetNotesKeyCount() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
BOOL GetNotesKeys() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
BOOL GetSiteRootForFile() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
BOOL GetVersionName() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
BOOL GetVersionNum(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
BOOL LocalURLToFilePath() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
FileHandle OpenNotesFile(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
FileHandle OpenNotesFilewithOpenFlags(). . . . . . . . . . . . . . . . . . . . . . . . . . . 62
BOOL RemoveNote() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
BOOL SetNote() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
CHAPITRE 5 : Intégration de Fireworks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
L’API FWLaunch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
4 Table des matières
FWLaunch.bringDWToFront() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
FWLaunch.bringFWToFront(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
FWLaunch.execJsInFireworks() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
FWLaunch.getJsResponse() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
FWLaunch.mayLaunchFireworks() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
FWLaunch.optimizeInFireworks() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
FWLaunch.validateFireworks(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
CHAPITRE 6 : Intégration de Flash. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Fonctionnement des éléments Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Insertion d’éléments Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Ajout d’un élément Flash à la barre Insérer . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Ajout d’un élément Flash à un menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
API des objets Flash. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
SWFFile.createFile(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
SWFFile.getNaturalSize() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
SWFFile.getObjectType() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
SWFFile.readFile() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
CHAPITRE 7 : API de base de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Fonctionnement de l’API de bases de données. . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Fonctions de connexion à une base de données . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
MMDB.deleteConnection(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
MMDB.getColdFusionDsnList() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
MMDB.getConnection() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
MMDB.getConnectionList() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
MMDB.getConnectionName() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
MMDB.getConnectionString() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
MMDB.getDriverName() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
MMDB.getDriverUrlTemplateList() (déconseillée). . . . . . . . . . . . . . . . . . . . . . 82
MMDB.getLocalDsnList() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
MMDB.getPassword() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
MMDB.getRDSPassword() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
MMDB.getRDSUserName() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
MMDB.getRemoteDsnList() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
MMDB.getRuntimeConnectionType() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
MMDB.getUserName() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
MMDB.hasConnectionWithName() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
MMDB.needToPromptForRdsInfo() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
MMDB.needToRefreshColdFusionDsnList(). . . . . . . . . . . . . . . . . . . . . . . . . . 87
MMDB.popupConnection() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
MMDB.setRDSPassword(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
MMDB.setRDSUserName() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
MMDB.showColdFusionAdmin() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
MMDB.showConnectionMgrDialog(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
MMDB.showOdbcDialog() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
MMDB.showRdsUserDialog(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
MMDB.showRestrictDialog() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
Table des matières 5
MMDB.testConnection(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
Fonctions d’accès à la base de données. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
MMDB.getColumnAndTypeList(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
MMDB.getColumnList() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
MMDB.getColumns() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
MMDB.getColumnsOfTable() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
MMDB.getPrimaryKeys() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
MMDB.getProcedures() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
MMDB.getSPColumnList() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
MMDB.getSPColumnListNamedParams(). . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
MMDB.getSPParameters(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
MMDB.getSPParamsAsString() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
MMDB.getTables() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
MMDB.getViews(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
MMDB.showResultset(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
MMDB.showSPResultset(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
MMDB.showSPResultsetNamedParams() . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
CHAPITRE 8 : API de connectivité à une base de données . . . . . . . . . . . . . . . . 103
Développement d’un nouveau type de connexion . . . . . . . . . . . . . . . . . . . . . . . . 103
API de connexion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
findConnection() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
applyConnection() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Fichier inclus généré . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Fichier de définition pour votre type de connexion . . . . . . . . . . . . . . . . . . . . . . . 109
CHAPITRE 9 : API JavaBeans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
API JavaBeans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
MMJB.getClasses(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
MMJB.getClassesFromPackage() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
MMJB.getErrorMessage(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
MMJB.getEvents() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
MMJB.getIndexedProperties() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
MMJB.getMethods() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
MMJB.getProperties() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
MMJB.getReadProperties() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
MMJB.getWriteProperties() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
CHAPITRE 10 : API d’intégration de commande source . . . . . . . . . . . . . . . . . . 119
Fonctionnement de l’intégration des commandes source avec Dreamweaver . . . . 119
Ajout d’une fonctionnalité de système de commande source . . . . . . . . . . . . . . . . 120
Fonctions obligatoires de l’API d’intégration de commande source . . . . . . . . . . . 120
bool SCS_GetAgentInfo() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
bool SCS_Connect() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
bool SCS_Disconnect() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
bool SCS_IsConnected() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
int SCS_GetRootFolderLength() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
bool SCS_GetRootFolder() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
6 Table des matières
int SCS_GetFolderListLength() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
bool SCS_GetFolderList() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
bool SCS_Get() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
bool SCS_Put() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
bool SCS_NewFolder(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
bool SCS_Delete() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
bool SCS_Rename() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
bool SCS_ItemExists() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Fonctions facultatives de l’API d’intégration de commande source . . . . . . . . . . . 126
bool SCS_GetConnectionInfo(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
bool SCS_SiteDeleted() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
bool SCS_SiteRenamed() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
int SCS_GetNumNewFeatures() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
bool SCS_GetNewFeatures() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
bool SCS_GetCheckoutName() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
bool SCS_Checkin(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
bool SCS_Checkout() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
bool SCS_UndoCheckout() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
int SCS_GetNumCheckedOut() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
bool SCS_GetFileCheckoutList() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
int SCS_GetErrorMessageLength(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
bool SCS_GetErrorMessage(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
int SCS_GetNoteCount(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
int SCS_GetMaxNoteLength(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
bool SCS_GetDesignNotes() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
bool SCS_SetDesignNotes(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
bool SCS_IsRemoteNewer(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
Activateurs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
bool SCS_canConnect() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
bool SCS_canGet(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
bool SCS_canCheckout() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
bool SCS_canPut(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
bool SCS_canCheckin() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
bool SCS_CanUndoCheckout(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
bool SCS_canNewFolder(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
bool SCS_canDelete() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
bool SCS_canRename() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
bool SCS_BeforeGet() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
bool SCS_BeforePut() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
bool SCS_AfterGet() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
bool SCS_AfterPut(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
PARTIE II : API JavaScript
CHAPITRE 11 : Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Fonctions relatives aux applications externes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
dreamweaver.browseDocument() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Table des matières 7
dreamweaver.getBrowserList(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
dreamweaver.getExtensionEditorList() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
dreamweaver.getExternalTextEditor() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
dreamweaver.getFlashPath() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
dreamweaver.getPrimaryBrowser() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
dreamweaver.getPrimaryExtensionEditor() . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
dreamweaver.getSecondaryBrowser() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
dreamweaver.openHelpURL() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
dreamweaver.openWithApp() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
dreamweaver.openWithBrowseDialog() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
dreamweaver.openWithExternalTextEditor() . . . . . . . . . . . . . . . . . . . . . . . . . 149
dreamweaver.openWithImageEditor() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
dreamweaver.validateFlash() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
Fonctions globales relatives aux applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
dreamweaver.beep() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
dreamweaver.getShowDialogsOnInsert() . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
dreamweaver.quitApplication(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
dreamweaver.showAboutBox() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
dreamweaver.showDynamicDataDialog(). . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
dreamweaver.showPreferencesDialog() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
dreamweaver.showTagChooser() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
CHAPITRE 12 : Espace de travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
Fonctions relatives à l’historique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
dom.redo() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
dom.undo() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
dreamweaver.getRedoText() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
dreamweaver.getUndoText() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
dreamweaver.playRecordedCommand() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
dreamweaver.redo(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
dreamweaver.startRecording(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
dreamweaver.stopRecording(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
dreamweaver.undo() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
dreamweaver.historyPalette.clearSteps() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
dreamweaver.historyPalette.copySteps() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
dreamweaver.historyPalette.getSelectedSteps() . . . . . . . . . . . . . . . . . . . . . . . . 159
dreamweaver.historyPalette.getStepCount() . . . . . . . . . . . . . . . . . . . . . . . . . . 160
dreamweaver.historyPalette.getStepsAsJavaScript() . . . . . . . . . . . . . . . . . . . . . 160
dreamweaver.historyPalette.getUndoState() . . . . . . . . . . . . . . . . . . . . . . . . . . 161
dreamweaver.historyPalette.replaySteps() . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
dreamweaver.historyPalette.saveAsCommand(). . . . . . . . . . . . . . . . . . . . . . . . 162
dreamweaver.historyPalette.setSelectedSteps(). . . . . . . . . . . . . . . . . . . . . . . . . 162
dreamweaver.historyPalette.getUndoState() . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Fonctions d’insertion d’objets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
dom.insertFlashElement(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
dreamweaver.objectPalette.getMenuDefault() . . . . . . . . . . . . . . . . . . . . . . . . . 164
dreamweaver.objectPalette.setMenuDefault() . . . . . . . . . . . . . . . . . . . . . . . . . 164
dreamweaver.reloadObjects() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
Fonctions relatives au clavier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
8 Table des matières
dom.arrowDown() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
dom.arrowLeft() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
dom.arrowRight(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
dom.arrowUp() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
dom.backspaceKey(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
dom.deleteKey() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
dom.endOfDocument() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
dom.endOfLine() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
dom.nextParagraph() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
dom.nextWord(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
dom.pageDown() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
dom.pageUp() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
dom.previousParagraph() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
dom.previousWord() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
dom.startOfDocument() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
dom.startOfLine() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
dreamweaver.mapKeyCodeToChar() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
Fonctions relatives aux menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
dreamweaver.getMenuNeedsUpdating() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
dreamweaver.notifyMenuUpdated() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
dreamweaver.reloadMenus() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
Fonctions de la fenêtre de résultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
Création d’une fenêtre de résultats indépendante . . . . . . . . . . . . . . . . . . . . . . 173
dreamweaver.createResultsWindow() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
dreamweaver.showResults(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
resWin.addItem() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
resWin.addResultItem() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
resWin.setCallbackCommands() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
resWin.setColumnWidths() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
resWin.setFileList(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
resWin.setTitle(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
resWin.startProcessing() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
resWin.stopProcessing() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
Utilisation du groupe de panneaux Résultats intégré. . . . . . . . . . . . . . . . . . . . 178
dreamweaver.resultsPalette.clear() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
dreamweaver.resultsPalette.Copy() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
dreamweaver.resultsPalette.cut() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
dreamweaver.resultsPalette.Paste(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
dreamweaver.resultsPalette.openInBrowser . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
dreamweaver.resultsPalette.openInEditor() . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
dreamweaver.resultsPalette.save() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
dreamweaver.resultsPalette.selectAll() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
Débogage de serveur. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
dreamweaver.resultsPalette.debugWindow.addDebugContextData() . . . . . . . 182
Fonctions de bascule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
dom.getEditNoFramesContent() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
dom.getHideAllVisualAids(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
dom.getPreventLayerOverlaps() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
dom.getShowAutoIndent(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
dom.getShowFrameBorders() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
Table des matières 9
dom.getShowGrid() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
dom.getShowHeadView(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
dom.getShowInvalidHTML(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
dom.getShowImageMaps(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
dom.getShowInvisibleElements() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
dom.getShowLayerBorders(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
dom.getShowLineNumbers() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
dom.getShowRulers() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
dom.getShowSyntaxColoring(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
dom.getShowTableBorders(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
dom.getShowToolbar() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
dom.getShowTracingImage() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
dom.getShowWordWrap() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
dom.getSnapToGrid(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
dom.setEditNoFramesContent(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
dom.setHideAllVisualAids() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
dom.setPreventLayerOverlaps() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
dom.setShowFrameBorders() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
dom.setShowGrid() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
dom.setShowHeadView() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
dom.setShowInvalidHTML(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
dom.setShowImageMaps() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
dom.setShowInvisibleElements() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
dom.setShowLayerBorders() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
dom.setShowLineNumbers() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
dom.setShowRulers() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
dom.setShowSyntaxColoring() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
dom.setShowTableBorders() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
dom.setShowToolbar() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
dom.setShowTracingImage(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
dom.setShowWordWrap() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
dom.setSnapToGrid() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
dreamweaver.getHideAllFloaters(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
dreamweaver.getShowStatusBar() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
dreamweaver.htmlInspector.getShowAutoIndent() . . . . . . . . . . . . . . . . . . . . . 196
dreamweaver.htmlInspector.getShowInvalidHTML() . . . . . . . . . . . . . . . . . . . 197
dreamweaver.htmlInspector.getShowLineNumbers() . . . . . . . . . . . . . . . . . . . 197
dreamweaver.htmlInspector.getShowSyntaxColoring() . . . . . . . . . . . . . . . . . . 197
dreamweaver.htmlInspector.getShowWordWrap() . . . . . . . . . . . . . . . . . . . . . 198
dreamweaver.htmlInspector.setShowAutoIndent() . . . . . . . . . . . . . . . . . . . . . 198
dreamweaver.htmlInspector.setShowInvalidHTML() . . . . . . . . . . . . . . . . . . . 198
dreamweaver.htmlInspector.setShowLineNumbers(). . . . . . . . . . . . . . . . . . . . 199
dreamweaver.htmlInspector.setShowSyntaxColoring() . . . . . . . . . . . . . . . . . . 199
dreamweaver.htmlInspector.setShowWordWrap(). . . . . . . . . . . . . . . . . . . . . . 199
dreamweaver.setHideAllFloaters(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
dreamweaver.setShowStatusBar() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
site.getShowDependents() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
site.getShowHiddenFiles() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
site.getShowPageTitles() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
site.getShowToolTips() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
10 Table des matières
site.setShowDependents(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
site.setShowHiddenFiles(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
site.setShowPageTitles() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
site.setShowToolTips() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
Fonctions relatives aux barres d’outils . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
dom.forceToolbarUpdate() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
dom.getShowToolbarIconLabels() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
dom.getToolbarIdArray() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
dom.getToolbarItemValue() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
dom.getToolbarLabel() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
dom.getToolbarVisibility() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
dom.setToolbarItemAttribute(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
dom.setShowToolbarIconLabels(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
dom.setToolbarPosition() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
dom.setToolbarVisibility() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
Fonctions relatives aux fenêtres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
dom.getFocus(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
dom.getView() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
dom.getWindowTitle(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
dom.setView() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
dreamweaver.bringAttentionToFloater() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
dreamweaver.cascade() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
dreamweaver.getActiveWindow() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
dreamweaver.getDocumentList() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
dreamweaver.getFloaterVisibility() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
dreamweaver.getFocus() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
dreamweaver.getPrimaryView() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
dreamweaver.getSnapDistance() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
dreamweaver.minimizeRestoreAll(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
dreamweaver.setActiveWindow() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
dreamweaver.setFloaterVisibility() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
dreamweaver.setPrimaryView(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
dreamweaver.setSnapDistance() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
dreamweaver.showProperties() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
dreamweaver.tileHorizontally(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
dreamweaver.tileVertically() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
dreamweaver.toggleFloater() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
dreamweaver.updateReference() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
CHAPITRE 13 : Site. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
Fonctions relatives aux rapports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
dreamweaver.isReporting() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
dreamweaver.showReportsDialog(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
Fonctions relatives aux sites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
dreamweaver.loadSitesFromPrefs() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
dreamweaver.saveSitesToPrefs(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
site.addLinkToExistingFile(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
site.addLinkToNewFile() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
site.canEditColumns() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
Table des matières 11
site.changeLinkSitewide() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
site.changeLink() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
site.checkIn() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
site.checkLinks(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
site.checkOut(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
site.checkTargetBrowsers() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
site.cloak() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
site.defineSites() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
site.deleteSelection() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
site.deployFilesToTestingServerBin(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
site.editColumns() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
site.exportSite(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
site.findLinkSource() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
site.get() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
site.getAppServerAccessType() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
site.getAppServerPathToFiles() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
site.getAppURLPrefixForSite() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
site.getCheckOutUser() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
site.getCheckOutUserForFile() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
site.getCloakingEnabled(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
site.getConnectionState() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
site.getCurrentSite() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
site.getFocus(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
site.getLinkVisibility() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
site.getLocalPathToFiles() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
site.getSelection() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
site.getSiteForURL(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
site.getSites(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
site.importSite() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
site.invertSelection() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
site.isCloaked() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
site.locateInSite() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
site.makeEditable() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
site.makeNewDreamweaverFile() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
site.makeNewFolder(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
site.newHomePage(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
site.newSite() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
site.open(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
site.put(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
site.recreateCache(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
site.refresh() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
site.remoteIsValid(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
site.removeLink() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
site.renameSelection(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
site.runValidation(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
site.saveAsImage(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
site.selectAll() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
site.selectHomePage(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
site.selectNewer() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
site.setAsHomePage() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
12 Table des matières
site.setCloakingEnabled() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
site.setConnectionState() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
site.setCurrentSite() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
site.setFocus(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
site.setLayout() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
site.setLinkVisibility(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
site.setSelection() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
site.synchronize() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
site.uncloak() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
site.uncloakAll() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
site.undoCheckOut() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
site.viewAsRoot() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
CHAPITRE 14 : Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
Fonctions relatives aux conversions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
dom.convertLayersToTable() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
dom.convertTablesToLayers(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
Fonctions relatives aux commandes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
dreamweaver.editCommandList(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
dreamweaver.popupCommand() (déconseillée). . . . . . . . . . . . . . . . . . . . . . . . 252
dreamweaver.runCommand(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
Fonctions relatives aux manipulations de fichiers. . . . . . . . . . . . . . . . . . . . . . . . . 253
dom.cleanupXHTML() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
dom.convertToXHTML() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
dom.getIsXHTMLDocument() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
dreamweaver.browseForFileURL() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
dreamweaver.browseForFolderURL() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
dreamweaver.closeDocument(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
dreamweaver.createDocument() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
dreamweaver.createXHTMLDocument() . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
dreamweaver.createXMLDocument(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
dreamweaver.exportCSS(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
dreamweaver.exportEditableRegionsAsXML() (déconseillée) . . . . . . . . . . . . . 260
dreamweaver.exportTemplateDataAsXML() . . . . . . . . . . . . . . . . . . . . . . . . . . 260
dreamweaver.getDocumentDOM() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
dreamweaver.getNewDocumentDOM(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
dreamweaver.getRecentFileList(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
dreamweaver.importXMLIntoTemplate() . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
dreamweaver.newDocument() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
dreamweaver.newFromTemplate() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
dreamweaver.openDocument(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
dreamweaver.openDocumentFromSite() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
dreamweaver.openInFrame(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
dreamweaver.releaseDocument(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
dreamweaver.revertDocument() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
dreamweaver.saveAll(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
dreamweaver.saveDocument() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
dreamweaver.saveDocumentAs(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
dreamweaver.saveDocumentAsTemplate() . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
Table des matières 13
dreamweaver.saveFrameset() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
dreamweaver.saveFramesetAs() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
Fonctions globales relatives aux documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
dom.checkSpelling(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
dom.checkTargetBrowsers() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
dom.getParseMode(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
dom.hideInfoMessagePopup() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
dom.runValidation(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
dom.showInfoMessagePopup(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
dom.showPagePropertiesDialog() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
dreamweaver.doURLDecoding(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
dreamweaver.getElementRef(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
dreamweaver.getObjectRefs() (déconseillée) . . . . . . . . . . . . . . . . . . . . . . . . . . 274
dreamweaver.getObjectTags() (déconseillée) . . . . . . . . . . . . . . . . . . . . . . . . . . 275
dreamweaver.getPreferenceInt() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
dreamweaver.getPreferenceString() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
dreamweaver.setPreferenceInt(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
dreamweaver.setPreferenceString() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278
dreamweaver.showTargetBrowsersDialog() . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
Fonctions relatives aux chemins. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
dreamweaver.getConfigurationPath() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
dreamweaver.getDocumentPath() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
dreamweaver.getSiteRoot() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
dreamweaver.getTempFolderPath() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
dreamweaver.relativeToAbsoluteURL(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
Fonctions relatives à la sélection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
dom.getSelectedNode() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
dom.getSelection() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
dom.nodeToOffsets() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
dom.offsetsToNode() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
dom.selectAll() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
dom.setSelectedNode(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
dom.setSelection() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
dreamweaver.getSelection() (déconseillée). . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
dreamweaver.nodeExists(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
dreamweaver.nodeToOffsets() (déconseillée). . . . . . . . . . . . . . . . . . . . . . . . . . 286
dreamweaver.offsetsToNode() (déconseillée) . . . . . . . . . . . . . . . . . . . . . . . . . . 287
dreamweaver.selectAll(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
dreamweaver.setSelection() (déconseillée) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
Fonctions de manipulation de chaînes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
dreamweaver.doURLEncoding(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
dreamweaver.getTokens() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
dreamweaver.latin1ToNative() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
dreamweaver.nativeToLatin1() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
dreamweaver.scanSourceString(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
Fonctions relatives à la traduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
dom.runTranslator() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
dreamweaver.editLockedRegions() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
dreamweaver.getTranslatorList() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
dreamweaver.useTranslatedSource() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
14 Table des matières
CHAPITRE 15 : Contenu de page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
Fonctions du panneau Actifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
dreamweaver.assetPalette.addToFavoritesFromDocument(). . . . . . . . . . . . . . . 295
dreamweaver.assetPalette.addToFavoritesFromSiteAssets() . . . . . . . . . . . . . . . 295
dreamweaver.assetPalette.addToFavoritesFromSiteWindow() . . . . . . . . . . . . . 296
dreamweaver.assetPalette.copyToSite() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
dreamweaver.assetPalette.edit() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
dreamweaver.assetPalette.getSelectedCategory() . . . . . . . . . . . . . . . . . . . . . . . 297
dreamweaver.assetPalette.getSelectedItems() . . . . . . . . . . . . . . . . . . . . . . . . . . 297
dreamweaver.assetPalette.getSelectedView() . . . . . . . . . . . . . . . . . . . . . . . . . . 298
dreamweaver.assetPalette.insertOrApply(). . . . . . . . . . . . . . . . . . . . . . . . . . . . 298
dreamweaver.assetPalette.locateInSite(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
dreamweaver.assetPalette.newAsset(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
dreamweaver.assetPalette.newFolder(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
dreamweaver.assetPalette.recreateLibraryFromDocument(). . . . . . . . . . . . . . . 300
dreamweaver.assetPalette.refreshSiteAssets() . . . . . . . . . . . . . . . . . . . . . . . . . . 300
dreamweaver.assetPalette.removeFromFavorites() . . . . . . . . . . . . . . . . . . . . . . 300
dreamweaver.assetPalette.renameNickname() . . . . . . . . . . . . . . . . . . . . . . . . . 301
dreamweaver.assetPalette.setSelectedCategory() . . . . . . . . . . . . . . . . . . . . . . . 301
dreamweaver.assetPalette.setSelectedView(). . . . . . . . . . . . . . . . . . . . . . . . . . . 301
dreamweaver.libraryPalette.deleteSelectedItem() (déconseillée) . . . . . . . . . . . . 302
dreamweaver.libraryPalette.getSelectedItem() (déconseillée) . . . . . . . . . . . . . . 302
dreamweaver.libraryPalette.newFromDocument() (déconseillée). . . . . . . . . . . 302
dreamweaver.libraryPalette.recreateFromDocument() (déconseillée). . . . . . . . 303
dreamweaver.libraryPalette.renameSelectedItem() (déconseillée) . . . . . . . . . . . 303
dreamweaver.referencePalette.getFontSize() . . . . . . . . . . . . . . . . . . . . . . . . . . 303
dreamweaver.referencePalette.setFontSize() . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
dreamweaver.templatePalette.deleteSelectedTemplate() (déconseillée). . . . . . . 304
dreamweaver.templatePalette.getSelectedTemplate() (déconseillée) . . . . . . . . . 304
dreamweaver.templatePalette.renameSelectedTemplate() (déconseillée). . . . . . 305
Fonctions relatives aux comportements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
dom.addBehavior(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
dom.getBehavior() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
dom.reapplyBehaviors() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
dom.removeBehavior() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
dreamweaver.getBehaviorElement() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
dreamweaver.getBehaviorEvent() (déconseillée) . . . . . . . . . . . . . . . . . . . . . . . 308
dreamweaver.getBehaviorTag() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
dreamweaver.popupAction(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
dreamweaver.behaviorInspector.getBehaviorAt() . . . . . . . . . . . . . . . . . . . . . . . 310
dreamweaver.behaviorInspector.getBehaviorCount(). . . . . . . . . . . . . . . . . . . . 310
dreamweaver.behaviorInspector.getSelectedBehavior() . . . . . . . . . . . . . . . . . . 311
dreamweaver.behaviorInspector.moveBehaviorDown(). . . . . . . . . . . . . . . . . . 311
dreamweaver.behaviorInspector.moveBehaviorUp() . . . . . . . . . . . . . . . . . . . . 312
dreamweaver.behaviorInspector.setSelectedBehavior(). . . . . . . . . . . . . . . . . . . 313
Fonctions relatives au Presse-papiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314
dom.clipCopy() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314
dom.clipCopyText() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314
dom.clipCut() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
Table des matières 15
dom.clipPaste(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
dom.clipPasteText() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
dreamweaver.clipCopy() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
dreamweaver.clipCut() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
dreamweaver.clipPaste() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
dreamweaver.getClipboardText() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
Fonctions relatives aux éléments de bibliothèque et aux modèles . . . . . . . . . . . . . 319
dom.applyTemplate() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
dom.detachFromLibrary() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
dom.detachFromTemplate() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
dom.getAttachedTemplate() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
dom.getEditableRegionList() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
dom.getIsLibraryDocument(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
dom.getIsTemplateDocument() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
dom.getSelectedEditableRegion() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
dom.insertLibraryItem() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
dom.markSelectionAsEditable() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
dom.newEditableRegion() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
dom.removeEditableRegion() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
dom.updateCurrentPage() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
dreamweaver.updatePages(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
Fonctions du panneau Fragments de code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
dreamweaver.snippetPalette.getCurrentSnippetPath(). . . . . . . . . . . . . . . . . . . 325
dreamweaver.snippetPalette.newFolder(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
dreamweaver.snippetPalette.newSnippet(). . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
dreamweaver.snippetPalette.editSnippet() . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
dreamweaver.snippetPalette.insert()r. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
dreamweaver.snippetPalette.insertSnippet() . . . . . . . . . . . . . . . . . . . . . . . . . . 327
dreamweaver.snippetPalette.rename() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
dreamweaver.snippetPalette.remove() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
CHAPITRE 16 : Documents dynamiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
Fonctions de composants de serveur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
dreamweaver.serverComponents.getSelectedNode() . . . . . . . . . . . . . . . . . . . . 329
dreamweaver.serverComponents.refresh(). . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
Fonctions relatives aux sources de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
dreamweaver.dbi.getDataSources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
Fonctions de l’Extension Data Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
dreamweaver.getExtDataValue() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
dreamweaver.getExtDataArray() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
dreamweaver.getExtParticipants() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
dreamweaver.getExtGroups() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
dreamweaver.refreshExtData() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
Fonctions Live data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
dreamweaver.getLiveDataInitTags() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
dreamweaver.getLiveDataMode() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
dreamweaver.getLiveDataParameters (). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
dreamweaver.liveDataTranslate(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
dreamweaver.setLiveDataError(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
16 Table des matières
dreamweaver.setLiveDataMode() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
dreamweaver.setLiveDataParameters() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
dreamweaver.showLiveDataDialog(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
Fonctions relatives aux comportements de serveur. . . . . . . . . . . . . . . . . . . . . . . . 338
dreamweaver.getParticipants(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
dreamweaver.serverBehaviorInspector.getServerBehaviors(). . . . . . . . . . . . . . . 339
dreamweaver.popupServerBehavior() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
Fonctions de modèle de serveur. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
dom.serverModel.getAppURLPrefix() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
dom.serverModel.getDelimiters() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
dom.serverModel.getDisplayName() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
dom.serverModel.getFolderName() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
dom.serverModel.getServerExtension() (déconseillée). . . . . . . . . . . . . . . . . . . 342
dom.serverModel.getServerIncludeUrlPatterns(). . . . . . . . . . . . . . . . . . . . . . . 342
dom.serverModel.getServerInfo() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
dom.serverModel.getServerLanguage() (déconseillée) . . . . . . . . . . . . . . . . . . . 344
dom.serverModel.getServerName(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
dom.serverModel.getServerSupportsCharset() . . . . . . . . . . . . . . . . . . . . . . . . 345
dom.serverModel.getServerVersion() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
dom.serverModel.testAppServer(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
dreamweaver.getServerModels() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
CHAPITRE 17 : Conception. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
Fonctions CSS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
dom.applyCSSStyle() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
dom.removeCSSStyle(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
dreamweaver.cssRuleTracker.editSelectedRule() . . . . . . . . . . . . . . . . . . . . . . . 348
dreamweaver.cssRuleTracker.newRule() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
dreamweaver.cssStylePalette.applySelectedStyle() . . . . . . . . . . . . . . . . . . . . . . 349
dreamweaver.cssStylePalette.attachStyleSheet() . . . . . . . . . . . . . . . . . . . . . . . . 350
dreamweaver.cssStylePalette.deleteSelectedStyle() . . . . . . . . . . . . . . . . . . . . . . 350
dreamweaver.cssStylePalette.duplicateSelectedStyle() . . . . . . . . . . . . . . . . . . . 350
dreamweaver.cssStylePalette.editSelectedStyle(). . . . . . . . . . . . . . . . . . . . . . . . 351
dreamweaver.cssStylePalette.editStyleSheet() . . . . . . . . . . . . . . . . . . . . . . . . . . 351
dreamweaver.cssStylePalette.getMediaType(). . . . . . . . . . . . . . . . . . . . . . . . . . 351
dreamweaver.cssStylePalette.getSelectedStyle() . . . . . . . . . . . . . . . . . . . . . . . . 352
dreamweaver.cssStylePalette.getSelectedTarget() (déconseillée) . . . . . . . . . . . . 352
dreamweaver.cssStylePalette.getStyles() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
dreamweaver.cssStylePalette.newStyle(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
dreamweaver.cssStylePalette.setMediaType(). . . . . . . . . . . . . . . . . . . . . . . . . . 354
Fonctions relatives aux cadres et aux jeux de cadres . . . . . . . . . . . . . . . . . . . . . . . 354
dom.getFrameNames(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
dom.isDocumentInFrame() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
dom.saveAllFrames() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
dom.splitFrame() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
Fonctions relatives aux calques et aux cartes graphiques . . . . . . . . . . . . . . . . . . . . 356
dom.align(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
dom.arrange(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
dom.makeSizesEqual() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
Table des matières 17
dom.moveSelectionBy() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
dom.resizeSelectionBy() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
dom.setLayerTag() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
Fonctions d’environnement de mise en forme . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
dom.getRulerOrigin(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
dom.getRulerUnits(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
dom.getTracingImageOpacity() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
dom.loadTracingImage(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
dom.playAllPlugins() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
dom.playPlugin() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
dom.setRulerOrigin() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
dom.setRulerUnits(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
dom.setTracingImagePosition(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
dom.setTracingImageOpacity(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
dom.snapTracingImageToSelection() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
dom.stopAllPlugins() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
dom.stopPlugin() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
dreamweaver.arrangeFloatingPalettes() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
dreamweaver.showGridSettingsDialog() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
Fonctions relatives au mode de Mise en forme. . . . . . . . . . . . . . . . . . . . . . . . . . . 364
dom.addSpacerToColumn() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
dom.createLayoutCell() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
dom.createLayoutTable() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
dom.doesColumnHaveSpacer() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
dom.doesGroupHaveSpacers() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
dom.getClickedHeaderColumn() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
dom.getShowLayoutTableTabs(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
dom.getShowLayoutView() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
dom.isColumnAutostretch(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
dom.makeCellWidthsConsistent() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
dom.removeAllSpacers() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
dom.removeSpacerFromColumn() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
dom.setColumnAutostretch() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
dom.setShowLayoutTableTabs() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
dom.setShowLayoutView(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
Fonctions de modification des tableaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
dom.convertWidthsToPercent() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
dom.convertWidthsToPixels() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
dom.decreaseColspan(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
dom.decreaseRowspan() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
dom.deleteTableColumn() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
dom.deleteTableRow() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
dom.doDeferredTableUpdate(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372
dom.getShowTableWidths() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372
dom.getTableExtent() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372
dom.increaseColspan() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
dom.increaseRowspan() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
dom.insertTableColumns(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
dom.insertTableRows(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
dom.mergeTableCells(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
18 Table des matières
dom.removeAllTableHeights() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375
dom.removeAllTableWidths(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375
dom.removeColumnWidth() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375
dom.selectTable() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
dom.setShowTableWidths() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
dom.setTableCellTag() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
dom.setTableColumns() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
dom.setTableRows() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
dom.showInsertTableRowsOrColumnsDialog() . . . . . . . . . . . . . . . . . . . . . . . 377
dom.splitTableCell() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
CHAPITRE 18 : Code. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
Fonctions de code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
dreamweaver.codeHints.addMenu() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
dreamweaver.codeHints.addFunction(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
dreamweaver.codeHints.resetMenu() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
dreamweaver.codeHints.showCodeHints() . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
dreamweaver.reloadCodeColoring() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
Fonctions relatives à la recherche et au remplacement . . . . . . . . . . . . . . . . . . . . . 383
dreamweaver.findNext() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
dreamweaver.replace(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
dreamweaver.replaceAll() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
dreamweaver.setUpComplexFind(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
dreamweaver.setUpComplexFindReplace() . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
dreamweaver.setUpFind() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
dreamweaver.setUpFindReplace() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
dreamweaver.showFindDialog() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
dreamweaver.showFindReplaceDialog() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
Fonctions de modifications générales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
dom.applyCharacterMarkup() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
dom.applyFontMarkup() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
dom.deleteSelection() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
dom.editAttribute() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
dom.exitBlock() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
dom.getCharSet(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
dom.getFontMarkup() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
dom.getLineFromOffset(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
dom.getLinkHref(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
dom.getLinkTarget(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
dom.getListTag() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
dom.getTextAlignment() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
dom.getTextFormat() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
dom.hasCharacterMarkup() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
dom.indent() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
dom.insertHTML() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
dom.insertObject(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
dom.insertText() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
dom.newBlock(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
dom.notifyFlashObjectChanged() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
Table des matières 19
dom.outdent() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
dom.removeCharacterMarkup() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
dom.removeFontMarkup(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
dom.removeLink() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
dom.resizeSelection() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
dom.setAttributeWithErrorChecking(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
dom.setLinkHref() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
dom.setLinkTarget() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
dom.setListBoxKind() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
dom.showListPropertiesDialog(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
dom.setListTag(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
dom.setTextAlignment() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
dom.setTextFieldKind() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
dom.setTextFormat() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
dom.showFontColorDialog() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
dreamweaver.deleteSelection() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
dreamweaver.editFontList(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
dreamweaver.getFontList() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
dreamweaver.getFontStyles() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
dreamweaver.getKeyState() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
dreamweaver.getNaturalSize(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
dreamweaver.getSystemFontList(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
Fonction relative à l’impression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
dreamweaver.PrintCode() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
Fonctions relatives à Quick Tag Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
dom.selectChild(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
dom.selectParent() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
dom.stripTag() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
dom.wrapTag() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
dreamweaver.showQuickTagEditor() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
Fonctions du mode code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
dom.formatRange() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
dom.formatSelection() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
dom.getShowNoscript() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
dom.getAutoValidationCount() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
dom.isDesignviewUpdated(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
dom.isSelectionValid() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
dom.setShowNoscript. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410
dom.source.arrowDown(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410
dom.source.arrowLeft() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
dom.source.arrowRight() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
dom.source.arrowUp() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
dom.source.balanceBracesTextview() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
dom.source.endOfDocument(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
dom.source.endOfLine() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
dom.source.endPage(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
dom.source.getCurrentLines() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
dom.source.getSelection(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
dom.source.getLineFromOffset() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
dom.source.getText() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
20 Table des matières
dom.source.getValidationErrorsForOffset() . . . . . . . . . . . . . . . . . . . . . . . . . . 415
dom.source.indentTextview() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
dom.source.insert(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
dom.source.nextWord() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
dom.source.outdentTextview() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
dom.source.pageDown(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
dom.source.pageUp() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
dom.source.previousWord() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
dom.source.replaceRange(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
dom.source.scrollEndFile(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
dom.source.scrollLineDown(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
dom.source.scrollLineUp() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
dom.source.scrollPageDown(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
dom.source.scrollPageUp() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
dom.source.scrollTopFile() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
dom.source.selectParentTag() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
dom.source.setCurrentLine() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
dom.source.startOfDocument() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
dom.source.startOfLine() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
dom.source.topPage(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
dom.source.wrapSelection() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
dom.synchronizeDocument() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
Fonctions de l’éditeur de balises et de la bibliothèque de balises. . . . . . . . . . . . . . 423
dom.getTagSelectorTag() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
dreamweaver.popupInsertTagDialog() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
dreamweaver.popupEditTagDialog(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
dreamweaver.showTagChooser(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
dreamweaver.showTagLibraryEditor(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
dreamweaver.tagLibrary.getTagLibraryDOM() . . . . . . . . . . . . . . . . . . . . . . . . 425
dreamweaver.tagLibrary.getSelectedLibrary() . . . . . . . . . . . . . . . . . . . . . . . . . 425
dreamweaver.tagLibrary.getSelectedTag() . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426
dreamweaver.tagLibrary.importDTDOrSchema(). . . . . . . . . . . . . . . . . . . . . . 426
dreamweaver.tagLibrary.getImportedTagList() . . . . . . . . . . . . . . . . . . . . . . . . 427
CHAPITRE 19 : Activateurs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
Activateurs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
dom.canAlign() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
dom.canApplyTemplate() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
dom.canArrange(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
dom.canClipCopyText(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
dom.canClipPaste() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
dom.canClipPasteText() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
dom.canConvertLayersToTable() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
dom.canConvertTablesToLayers(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
dom.canDecreaseColspan() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432
dom.canDecreaseRowspan() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432
dom.canDeleteTableColumn() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432
dom.canDeleteTableRow() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
dom.canEditNoFramesContent() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
Table des matières 21
dom.canIncreaseColspan() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
dom.canIncreaseRowspan() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
dom.canInsertTableColumns() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
dom.canInsertTableRows() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
dom.canMakeNewEditableRegion(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
dom.canMarkSelectionAsEditable() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
dom.canMergeTableCells() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
dom.canPlayPlugin() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
dom.canRedo(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436
dom.canRemoveEditableRegion(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436
dom.canSelectTable() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436
dom.canSetLinkHref() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
dom.canShowListPropertiesDialog(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
dom.canSplitFrame() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
dom.canSplitTableCell() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
dom.canStopPlugin() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
dom.canUndo() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
dom.hasTracingImage() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
dreamweaver.assetPalette.canEdit() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
dreamweaver.assetPalette.canInsertOrApply() . . . . . . . . . . . . . . . . . . . . . . . . . 439
dreamweaver.canClipCopy(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
dreamweaver.canClipCut(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
dreamweaver.canClipPaste() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
dreamweaver.canDeleteSelection() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441
dreamweaver.canExportCSS(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441
dreamweaver.canExportTemplateDataAsXML() . . . . . . . . . . . . . . . . . . . . . . . 441
dreamweaver.canFindNext() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442
dreamweaver.canOpenInFrame() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442
dreamweaver.canPlayRecordedCommand() . . . . . . . . . . . . . . . . . . . . . . . . . . 442
dreamweaver.canPopupEditTagDialog() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443
dreamweaver.canRedo() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443
dreamweaver.canRevertDocument() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443
dreamweaver.canSaveAll(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
dreamweaver.canSaveDocument(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
dreamweaver.canSaveDocumentAsTemplate() . . . . . . . . . . . . . . . . . . . . . . . . 444
dreamweaver.canSaveFrameset() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
dreamweaver.canSaveFramesetAs() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
dreamweaver.canSelectAll(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
dreamweaver.canShowFindDialog() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446
dreamweaver.canUndo() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446
dreamweaver.cssRuleTracker.canEditSelectedRule() . . . . . . . . . . . . . . . . . . . . 446
dreamweaver.cssStylePalette.canApplySelectedStyle() . . . . . . . . . . . . . . . . . . . 447
dreamweaver.cssStylePalette.canDeleteSelectedStyle() . . . . . . . . . . . . . . . . . . . 447
dreamweaver.cssStylePalette.canDuplicateSelectedStyle() . . . . . . . . . . . . . . . . 447
dreamweaver.cssStyle.canEditSelectedStyle(). . . . . . . . . . . . . . . . . . . . . . . . . . 448
dreamweaver.cssStylePalette.canEditStyleSheet(). . . . . . . . . . . . . . . . . . . . . . . 448
dreamweaver.isRecording(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
dreamweaver.htmlStylePalette.canEditSelection() . . . . . . . . . . . . . . . . . . . . . . 449
dreamweaver.resultsPalette.canClear(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449
dreamweaver.resultsPalette.canCopy(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449
22 Table des matières
dreamweaver.resultsPalette.canCut(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
dreamweaver.resultsPalette.canPaste() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
dreamweaver.resultsPalette.canOpenInBrowser() . . . . . . . . . . . . . . . . . . . . . . 450
dreamweaver.resultsPalette.canOpenInEditor(). . . . . . . . . . . . . . . . . . . . . . . . 450
dreamweaver.resultsPalette.canSave() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
dreamweaver.resultsPalette.canSelectAll() . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
dreamweaver.snippetpalette.canEditSnippet(). . . . . . . . . . . . . . . . . . . . . . . . . 451
dreamweaver.snippetpalette.canInsert(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
site.browseDocument(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
site.canAddLink() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
site.canChangeLink() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
site.canCheckIn() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
site.canCheckOut() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
site.canCloak() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
site.canConnect() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
site.canFindLinkSource() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
site.canGet() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
site.canLocateInSite() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
site.canMakeEditable() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
site.canMakeNewFileOrFolder(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
site.canOpen() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
site.canPut() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
site.canRecreateCache() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
site.canRefresh() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
site.canRemoveLink() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
site.canSetLayout() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
site.canSelectAllCheckedOutFiles(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
site.canSelectNewer() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
site.canShowPageTitles(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
site.canSynchronize() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
site.canUncloak() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
site.canUndoCheckOut() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461
site.canViewAsRoot() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461
INDEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
Table des matières 23
24 Table des matières
CHAPITRE 1

Introduction

Le Guide des API de Dreamweaver décrit deux interfaces de programmation d’applications (API)
qui vous permettent d’effectuer diverses tâches de prise en charge lorsque vous développez des
extensions Macromedia Dreamweaver MX 2004 et ajoutez des codes de programme à vos pages
Web Dreamweaver. Ces deux API sont l’API des utilitaires et l’API JavaScript. L’API des utilitaires
contient des sous-ensembles de fonctions liées qui permettent d’effectuer des types de tâches
spécifiques. Il comprend les sous-ensembles suivants :
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 ;
l’API d’intégration de Fireworks, qui permet de communiquer avec Macromedia Fireworks ;
l’intégration Flash, qui contient des informations concernant l’ajout d’éléments Flash à
l’interface utilisateur Dreamweaver et sur l’API des objets Flash (qui permet de créer des objets pour le contenu Macromedia 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 utilisateur 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.
25

Arrière-plan

Ce manuel suppose une bonne maîtrise de Dreamweaver, HTML, XML, de la programmation
JavaScript et, le cas échéant, de la programmation C. Si vous rédigez des extensions pour élaborer
des applications Web, vous devez également maîtriser la création de scripts 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 forment les diverses fonctionnalités de
Dreamweaver. Ces API permettent d’ajouter des objets, des menus, des panneaux flottants et
d’autres fonctions au produit. Extension de Dreamweaver explique également comment
personnaliser Dreamweaver en modifiant et en ajoutant des balises à divers fichiers HTML et
XML, de façon à ajouter des types d’éléments, des éléments de menus, etc.

Ressources supplémentaires pour les développeurs d’extensions

Pour entrer en contact avec d’autres développeurs d’extensions, vous pouvez rejoindre le forum de
discussion consacré à l’extensibilité de Dreamweaver. Pour ce faire, il vous suffit de vous rendre à
l’adresse suivante : www.macromedia.com/go/extending_newsgrp.

Nouvelles fonctions de Dreamweaver MX 2004

Les fonctions suivantes ont été ajoutées à l’API JavaScript de Dreamweaver MX 2004. Les en-têtes
désignent les chapitres et les sections qui contiennent les nouvelles fonctions :
Espace de travail
Les fonctions barre Insérer, fenêtre Résultats et barre d’outils ci-dessous ont été ajoutées au
chapitre Espace de travail.
Insertion d’objets
dom.insertFlashElement(), page 163
dreamweaver.objectPalette.getMenuDefault(), page 164
dreamweaver.objectPalette.setMenuDefault(), page 164
dreamweaver.reloadObjects(), page 165
Fenêtre Résultats
dreamweaver.showResults(), page 173
Barre d’outils
dom.getToolbarItemValue(), page 204
dom.setToolbarItemAttribute(), page 206
26 Chapitre 1 : Introduction
Document
Les nouvelles fonctions suivantes (fonctions globales relatives au document) ont été ajoutées au
chapitre Document.
Fonctions globales relatives au document
dom.hideInfoMessagePopup(), page 270
dreamweaver.showTargetBrowsersDialog(), page 279
dom.showInfoMessagePopup(), page 272
Conception
Les nouvelles fonctions suivantes (relatives à CSS, HTML et à la modification des tableaux) ont
été ajoutées au chapitre Conception.
CSS
dreamweaver.cssRuleTracker.newRule(), page 349
dreamweaver.cssRuleTracker.editSelectedRule(), page 348
dreamweaver.cssStylePalette.getMediaType(), page 351
dreamweaver.cssStylePalette.setMediaType(), page 354
Modification des tableaux
dom.getShowTableWidths(), page 372
dom.removeColumnWidth(), page 375
dom.setShowTableWidths(), page 376
Code
Les nouvelles fonctions suivantes (relatives au mode Code) ont été ajoutées au chapitre Code.
Mode Code
dom.getAutoValidationCount(), page 408
dom.source.getValidationErrorsForOffset(), page 415

Fonctions supprimées

Les fonctions suivantes ont été supprimées de l’API Dreamweaver MX 2004, car les fonctions
associées ont été supprimées du produit.
Document
Dans le chapitre Document, la fonction de conversion suivante a été supprimée :
Fonction de conversion
dom.convertTo30()
Fonctions supprimées 27
Contenu de page
Dans le chapitre Contenu de page, les fonctions suivantes (relatives aux scénarios) ont été
supprimées :
Fonctions relatives aux scénarios
dreamweaver.timelineInspector.addBehavior()
dreamweaver.timelineInspector.addFrame()
dreamweaver.timelineInspector.addKeyframe()
dreamweaver.timelineInspector.addObject()
dreamweaver.timelineInspector.addTimeline()
dreamweaver.timelineInspector.changeObject()
dreamweaver.timelineInspector.getAutoplay()
dreamweaver.timelineInspector.getCurrentFrame()
dreamweaver.timelineInspector.getLoop()
dreamweaver.timelineInspector.recordPathOfLayer()
dreamweaver.timelineInspector.removeBehavior()
dreamweaver.timelineInspector.removeFrame()
dreamweaver.timelineInspector.removeKeyframe()
dreamweaver.timelineInspector.removeObject()
dreamweaver.timelineInspector.removeTimeline()
dreamweaver.timelineInspector.renameTimeline()
dreamweaver.timelineInspector.setAutoplay()
dreamweaver.timelineInspector.setCurrentFrame()
dreamweaver.timelineInspector.setLoop()
Conception
Dans le chapitre Conception, les fonctions suivantes (relatives aux styles HTML) ont été supprimées :
Fonctions relatives aux styles HTML
dom.applyHTMLStyle()
dreamweaver.htmlStylePalette.deleteSelectedStyle()
dreamweaver.htmlStylePalette.duplicateSelectedStyle()
dreamweaver.htmlStylePalette.editSelectedStyle()
dreamweaver.htmlStylePalette.getSelectedStyle()
dreamweaver.htmlStylePalette.getStyles()
dreamweaver.htmlStylePalette.newStyle()
dreamweaver.htmlStylePalette.setSelectedStyle()
Code
Dans le chapitre Code, les fonctions suivantes (relatives au débogueur JavaScript et à l’inspecteur
de balises) ont été supprimées :
Fonctions relatives au débogueur JS
dreamweaver.debugDocument()
dreamweaver.startDebugger()
dreamweaver.getIsAnyBreakpoints()
dreamweaver.removeAllBreakpoints()
28 Chapitre 1 : Introduction
Fonctions relatives à l’inspecteur de balises
dreamweaver.tagInspector.deleteTags()
dreamweaver.tagInspector.deleteTagsEnabled()
dreamweaver.tagInspector.editTagName()
dreamweaver.tagInspector.editTagNameEnabled()
dreamweaver.tagInspector.tagAfter()
dreamweaver.tagInspector.tagAfterEnabled()
dreamweaver.tagInspector.tagBefore()
dreamweaver.tagInspector.tagBeforeEnabled()
dreamweaver.tagInspector.tagInside()
dreamweaver.tagInspector.tagInsideEnabled()
Activateurs
Dans le chapitre Activateurs, les fonctions suivantes (relatives aux activateurs) ont été supprimées :
dreamweaver.timelineInspector.canAddFrame()
dreamweaver.timelineInspector.canAddKeyFrame()
dreamweaver.timelineInspector.canChangeObject()
dreamweaver.timelineInspector.canRemoveBehavior()
dreamweaver.timelineInspector.canRemoveFrame()
dreamweaver.timelineInspector.canRemoveKeyFrame()
dreamweaver.timelineInspector.canRemoveObject()
Autre
Les arguments
dw.getFloaterVisibility() et dw.setFloaterVisibility().
Changements dans la documentation
Extension de Dreamweaver MX a été divisé en deux manuels : Extension de Dreamweaver et un
Guide des API de Dreamweaver. Extension de Dreamweaver décrit comment développer différents
types d’extensions Dreamweaver, en indiquant les fonctions que vous devez écrire pour créer
chaque type. Il décrit également comment personnaliser Dreamweaver en modifiant certains
fichiers HTML et XML configurables. Le Guide des API de Dreamweaver décrit les deux API qui
vous permettent d’effectuer diverses tâches dans vos extensions de Dreamweaver.
Le manuel Extension de Dreamweaver a été conçu pour aider les utilisateurs à développer une
extension Dreamweaver. Le Guide des API de Dreamweaver est conçu pour aider le programmeur
qui maîtrise déjà bien ces notions à retrouver rapidement la fonction lui permettant d’effectuer
une tâche précise. Cette division en deux manuels permet également de clarifier la distinction
entre les fonctions API d’extension que l’auteur de l’extension doit coder et que Dreamweaver
appelle, et les fonctions API JavaScript et d’utilitaires qu’un programmeur peut appeler pour
effectuer différentes tâches dans une extension.
Le Guide des API de Dreamweaver comprend les améliorations suivantes, à l’attention des
développeurs d’extensions :
"answers" et "sitespring" ont été supprimés des fonctions
Réorganisation des fonctions en chapitres.
Les fonctions API JavaScript sont maintenant regroupées d’abord par chapitre, selon le contexte Dreamweaver lié (Espace de travail, Document, Conception, etc.), puis par sujet selon la fonction spécifique (fonctions clavier, fonctions de menu, fonctions de fenêtre, etc.).
Fonctions supprimées 29
Fonctions déconseillées désormais indiquées dans le texte.
Les fonctions déconseillées faisaient auparavant l’objet d’une section séparée. Elles sont maintenant intégrées à leur sujet d’origine, afin de garder le contexte, et sont signalées par le suffixe « (déconseillée) » dans le nom de la fonction.
Chapitre relatif aux fonctions des activateurs.
Les fonctions des activateurs ont été intégrées dans un chapitre à part, avec des références croisées aux fonctions API concernées.

Errata

Vous trouverez une liste des problèmes connus dans la section Extensibility (Extension) du centre
de support de Dreamweaver (www.macromedia.com/go/extending_errata).

Conventions utilisées dans ce manuel

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 ({ }) autour d’un argument de fonction indiquent que l’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 la fonction, et également dans l’index. Toutefois, dans de nombreux exemples, le préfixe est utilisé.
Conventions de noms utilisées dans ce manuel :
dreamweaver. complet pour définir
Vous - le développeur responsable de la rédaction des extensions.
L’utilisateur - la personne utilisant Dreamweaver.
dw.
30 Chapitre 1 : Introduction
PARTIE I

API d’utilitaire

Etudiez les fonctions utilitaires de Macromedia Dreamweaver MX 2004 qui vous permettent
d’accéder aux fichiers locaux ainsi qu’aux fichiers placés sur un site, de travailler avec des objets
Macromedia Fireworks MX 2004 et Macromedia Flash MX 2004, de gérer des connexions aux
bases de données, de créer des types de connexion aux bases de données, d’accéder aux
composants JavaBeans et d’intégrer Dreamweaver à divers systèmes de commande source.
Chapitre 2 : API d’E/S des fichiers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Chapitre 3 : API HTTP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Chapitre 4 : API de Design Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Chapitre 5 : Intégration de Fireworks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Chapitre 6 : Intégration de Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Chapitre 7 : API de base de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Chapitre 8 : API de connectivité à une base de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Chapitre 9 : API JavaBeans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Chapitre 10 : API d’intégration de commande source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
PARTIE I
CHAPITRE 2

API d’E/S des fichiers

Macromedia Dreamweaver MX 2004 inclut 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 de 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 utilisation.
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 Configuration 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.

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.
33
DWfile.copy()
Disponibilité
Dreamweaver 3.
Description
Cette fonction copie le fichier spécifié vers un nouvel emplacement.
Arguments
originalURL
, copyURL
L’ a r g u m e n t originalURL, exprimé sous la forme d’une URL de type file://, représente le
fichier que vous souhaitez copier.
L’ a r g u m e n t 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);
DWfile.createFolder()
Disponibilité
Dreamweaver 2.
Description
Cette fonction crée un dossier à l’emplacement spécifié.
Arguments
folderURL
L’ a r g u m e n t folderURL, exprimé sous la forme d’une URL de type file://, représente
l’emplacement auquel 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 {
34 Chapitre 2 : API d’E/S des fichiers
alert("Impossible de créer " + folderURL);
}
DWfile.exists()
Disponibilité
Dreamweaver 2.
Description
Cette fonction vérifie l’existence du fichier spécifié.
Arguments
fileURL
L’ a r g u m e n t 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 + " trouvé");
} else {
alert(fileURL + " est introuvable.");
}
DWfile.getAttributes()
Disponibilité
Dreamweaver 2.
Description
Cette fonction obtient les attributs du fichier ou dossier spécifié.
Arguments
fileURL
L’ a r g u m e n t 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
null. Les caractères suivants de la chaîne représentent les
attributs :
R signifie lecture seule.
D signifie dossier.
API d’E/S des fichiers 35
H signifie masqué.
S indique un fichier ou dossier système.
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’ a r g u m e n t 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.
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 à la même heure");
}else if (time1 < time2){
alert("file1 est moins récent que file2");
} else {
alert("file1 est plus récent que file2");
}
36 Chapitre 2 : API d’E/S des fichiers
DWfile.getCreationDate()
Disponibilité
Dreamweaver 4.
Description
Cette fonction renvoie l’heure à laquelle le fichier a été créé.
Arguments
fileURL
L’ a r g u m e n t 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 fonction 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);
}
DWfile.getCreationDateObj()
Disponibilité
Dreamweaver MX.
Description
Cette fonction obtient l’objet JavaScript représentant l’heure de création du fichier.
Arguments
fileURL
L’ a r g u m e n t 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 de date JavaScript représentant la date et l’heure de création du fichier spécifié.
API d’E/S des fichiers 37
DWfile.getModificationDateObj()
Disponibilité
Dreamweaver MX.
Description
Cette fonction obtient l’objet de date JavaScript représentant l’heure de la dernière modification
du fichier.
Arguments
fileURL
L’ a r g u m e n t 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 de 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’ a r g u m e n t 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.
DWfile.listFolder()
Disponibilité
Dreamweaver 2.
Description
Cette fonction obtient une liste du contenu du dossier spécifié.
38 Chapitre 2 : API d’E/S des fichiers
Arguments
folderURL,
{constraint}
L’ a r g u m e n t 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’ a r g u m e n t constraint, s’il est fourni, doit être soit "files" (renvoyer uniquement les
fichiers), soit 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.
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, "fichiers");
if (list){
alert(folderURL + " contient : " + list.join("\n"));
}
DWfile.read()
Disponibilité
Dreamweaver 2.
"directories" (renvoyer uniquement les dossiers). Si cet argument n’est pas
Description
Cette fonction lit le contenu du fichier spécifié dans une chaîne.
Arguments
fileURL
L’ a r g u m e n t 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);
}
API d’E/S des fichiers 39
DWfile.remove()
Disponibilité
Dreamweaver 3.
Description
Cette fonction déplace le fichier spécifié dans la Corbeille.
Arguments
fileURL
L’ a r g u m e n t 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
dialogue de type Oui/Non :
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){
delAnyway = confirm(’Ce fichier est en lecture seule. Voulez-vous le
supprimer ?’);
if (delAnyway){
DWfile.remove(selFile);
}
}
}
confirm() pour afficher à l’utilisateur une boîte de
DWfile.setAttributes()
Disponibilité
Dreamweaver MX.
Description
Cette fonction définit les attributs système d’un fichier donné.
40 Chapitre 2 : API d’E/S des fichiers
Arguments
fileURL
, strAttrs
L’ a r g u m e n t fileURL, exprimé sous la forme d’une URL de type file://, identifie le fichier dont
vous définissez les attributs.
L’ a r g u m e n t 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
W
H
V
Accessible en lecture seule
Accessible en écriture (annule R)
Masqué
Visible (annule H)
Les valeurs acceptables pour la chaîne N’utilisez pas
R perd tout son sens et le fichier est défini comme étant accessible en écriture (W). N’utilisez pas H et V conjointement, car ils s’excluent aussi l’un l’autre. Si vous les associez, H perd tout son
R et W conjointement, car ces attributs s’excluent l’un l’autre. Si vous les associez,
sens et le fichier est défini comme étant visible ( Si vous spécifiez l’attribut
H ou V sans indiquer d’attribut de lecture/écriture R ou W, l’attribut de
strAttrs sont : R, W, H, V, RH, RV, WH ou WV.
V).
lecture/écriture existant pour le fichier reste inchangé. De même, si vous spécifiez l’attribut 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’ a r g u m e n t fileURL, exprimé sous la forme d’une URL de type file://, représente le fichier
dans lequel vous écrivez une chaîne.
L’ a r g u m e n t text est la chaîne qui doit être écrite.
L’ a r g u m e n t mode, s’il est fourni, doit être "append". Si cet argument est omis, le contenu du
fichier est écrasé par la chaîne.
R
API d’E/S des fichiers 41
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
"aaa" au
fichier et affiche un deuxième message d’avertissement si 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("xxx écrit dans " + fileURL); } if (DWfile.write(fileURL, "aaa", "append")){
alert("aaa annexé à " + fileURL); }
xxxaaa.
42 Chapitre 2 : API d’E/S des fichiers
CHAPITRE 3

API HTTP

Les extensions ne fonctionnent pas uniquement dans le système de fichiers local. Macromedia Dreamweaver MX 2004 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é
200: Status OK (état OK)
400: Unintelligible request (requête incompréhensible)
404: Requested URL not found (URL demandée introuvable)
405: Server does not support requested method (le serveur ne prend pas en charge la méthode
demandée)
500: Unknown server error (erreur de serveur inconnue)
503: Server capacity reached (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.
La valeur de la propriété listes 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.
statusCode indique l’état de l’opération ; les valeurs possibles sont notamment :
data varie selon la fonction ; les valeurs possibles sont spécifiées dans les
43

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/
Arguments
serverScriptsfolder
server-model/_mmDBScripts.
L’ a r g u m e n t 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é
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>Clear Server Scripts</TITLE> <SCRIPT SRC="ClearServerScripts.js"></SCRIPT> <SCRIPT LANGUAGE="javascript"> </SCRIPT> <body onLoad="MMHttp.clearServerScriptsFolder()"> </body> </html>
statusCode de l’objet renvoyé.
MMHttp.clearTemp()
Description
Cette fonction supprime tous les fichiers du dossier Configuration/Temp situé dans le dossier de l’application Dreamweaver.
Arguments
Aucun.
44 Chapitre 3 : API HTTP
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>Clean Up Temp Files on Shutdown</title> </head> <body onLoad="MMHttp.clearTemp()"> </body> </html>
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, Dreamweaver enregistre le fichier index.html dans le sous-dossier People du dossier www.dreamcentral.com.
Arguments
URL,
{prompt}, {saveURL}, {titleBarLabel}
L’ a r g u m e n t URL est une URL absolue sur un serveur Web ; si http:// n’est pas indiqué dans
l’URL, Dreamweaver MX considère qu’il s’agit du protocole HTTP.
L’a rgum e nt fa cult ati f prompt est une valeur booléenne spécifiant s’il faut inviter l’utilisateur à
enregistrer le fichier. Si
prompt égale à false n’est pas prise en compte pour des raisons de sécurité.
saveURL est en dehors du dossier Configuration/Temp, une valeur de
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
pour valeur
peut remplacer
true ou si saveURL est en dehors du dossier Configuration/Temp, l’utilisateur
saveURL dans la boîte de dialogue d’enregistrement.
L’a rgum e nt fa cult ati f titleBarLabel est le libellé qui doit figurer dans la barre de titre de la
boîte de dialogue d’enregistrement.
prompt a
API HTTP 45
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é serveur. Toutefois, si une erreur de disque se produit lors de l’enregistrement du fichier sur le lecteur local, la propriété suivants en cas d’échec de l’opération :
statusCode contient un entier représentant l’un des codes d’erreur
statusCode de l’objet contient le code d’état envoyé par le
1: Unspecified error (erreur inconnue)
2: File not found (fichier introuvable)
3: Invalid path (chemin non valide)
4: Number of open files limit reached (la limite du nombre de fichiers ouverts est atteinte)
5: Access denied (accès refusé)
6: Invalid file handle (identificateur de fichier non valide)
7: Cannot remove current working directory (impossible de supprimer le répertoire de travail
en cours)
8: No more folder entries (plus d’entrées de dossier)
9: Error setting file pointer (erreur lors de la définition du pointeur de fichier)
10: Hardware error (erreur matérielle)
11: Sharing violation (violation de partage)
12: Lock violation (violation de verrouillage)
13: Disk full (disque saturé)
14: End of file reached (fin du fichier atteinte)
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 (httpReply.statusCode == 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.
46 Chapitre 3 : API HTTP
Arguments
callbackFunction
, URL, {prompt}, {saveURL}, {titleBarLabel}
L’ a r g u m e n t callbackFunction est le nom de la fonction JavaScript à appeler lorsque la
requête HTTP est terminée.
L’ a r g u m e n t URL est une URL absolue sur un serveur Web ; si http:// n’est pas indiqué dans
l’URL, Dreamweaver MX considère qu’il s’agit du protocole HTTP.
L’a rgum e nt fa cult ati f prompt est une valeur booléenne spécifiant s’il faut inviter l’utilisateur à
enregistrer le fichier. Si l’argument
Configuration/Temp, une valeur de
raisons de sécurité.
saveURL spécifie un emplacement en dehors du dossier
prompt égale à false n’est pas prise en compte pour des
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
pour valeur
peut remplacer
true ou si saveURL est en dehors du dossier Configuration/Temp, l’utilisateur
saveURL dans la boîte de dialogue d’enregistrement.
prompt a
L’a rgum e nt fa cult ati f titleBarLabel est le libellé qui doit figurer dans la barre de titre de la
boîte de dialogue d’enregistrement.
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é 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() pour une liste des codes d’erreur possibles.
statusCode de l’objet contient le code d’état envoyé par le
MMHttp.getText()
Disponibilité
Macromedia Dreamweaver UltraDev 4, améliorée dans la version Dreamweaver MX.
Description
Extrait le contenu du document situé à l’URL spécifiée.
Arguments
URL
, {serverScriptsFolder}
L’ a r g u m e n t 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’ a r g u m e n t serverScriptsFolder est une chaîne facultative qui nomme un dossier
spécifique, lié au dossier Configuration 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). Dreamweaver 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é
renvoyé.
statusCode de l’objet
API HTTP 47
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’ a r g u m e n t callbackFunc est la fonction JavaScript à appeler lorsque la requête HTTP est
terminée.
L’ a r g u m e n t URL est une URL absolue sur un serveur Web ; si http:// n’est pas indiqué dans
l’URL, Dreamweaver MX considère qu’il s’agit du protocole HTTP.
L’ a r g u m e n t serverScriptsFolder est une chaîne facultative qui nomme un dossier
spécifique, lié au dossier Configuration 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). Dreamweaver extrait
ces fichiers et les transmet à la fonction identifiée par Si une erreur survient, Dreamweaver MX la consigne dans la propriété
renvoyé.
MMHttp.postText()
Disponibilité
Macromedia Dreamweaver UltraDev 4, améliorée dans la version Dreamweaver MX.
callbackFunc.
statusCode de l’objet
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’ a r g u m e n t URL est une URL absolue sur un serveur Web ; si http:// n’est pas indiqué dans
l’URL, Dreamweaver MX considère qu’il s’agit du protocole HTTP.
L’ a r g u m e n t dataToPost représente les données à envoyer. Si le troisième argument est
"application/x-www-form-urlencoded" ou s’il n’est pas spécifié, dataToPost doit être
codé en formulaire conformément à la section 8.2.1 de la 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
"application/x-www-form-urlencoded".
L’ a r g u m e n t serverScriptsFolder est une chaîne facultative qui nomme un dossier
spécifique, lié au dossier Configuration 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).
48 Chapitre 3 : API HTTP
Si une erreur se produit, Dreamweaver la consigne dans la propriété statusCode de l’objet renvoyé.
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é
Macromedia Dreamweaver UltraDev 4, améliorée dans la version Dreamweaver MX.
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’ a r g u m e n t callbackFunc est le nom de la fonction JavaScript à appeler lorsque la requête
HTTP est terminée.
L’ a r g u m e n t URL est une URL absolue sur un serveur Web ; si http:// n’est pas indiqué dans
l’URL, Dreamweaver MX considère qu’il s’agit du protocole HTTP.
L’ a r g u m e n t dataToPost représente les données à envoyer. Si le troisième argument est
"application/x-www-form-urlencoded" ou s’il n’est pas spécifié, dataToPost doit être
codé en formulaire conformément à la section 8.2.1 de la spécification RFC 1866 (disponible
à l’adresse www.faqs.org/rfcs/rfc1866.html).
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".
API HTTP 49
L’ a r g u m e n t 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, Dreamweaver 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é
renvoyé.
callbackFunc.
statusCode de l’objet
50 Chapitre 3 : API HTTP
CHAPITRE 4

API de Design Notes

Macromedia Dreamweaver, Macromedia Fireworks et Macromedia Flash MX 2004 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, voir le manuel Utilisation de Dreamweaver.

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.
51
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_source" value="file:///C|sites/¬
dreamcentral/images/sourceFiles/foghorn.png" />
<infoitem key="Author" value="Heidi B." />
<infoitem key="Status" value="Final draft, approved ¬
by Jay L." /> </info>

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 MMNotes.close() une fois le travail sur les Design Notes terminé, afin que Dreamweaver écrive sur le fichier.
Arguments
fileHandle
L’ a r g u m e n t fileHandle est l’identificateur de fichier renvoyé par la fonction
MMNotes.open().
Valeurs renvoyées
Aucune.
Exemple
Voir MMNotes.set(), page 56.
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’ a r g u m e n t 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é.
52 Chapitre 4 : API de Design Notes
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’ a r g u m e n t fileHandle est l’identificateur de fichier renvoyé par MMNotes.open().
L’ a r g u m e n t keyName est une chaîne contenant le nom de la clé.
Valeurs renvoyées
Une chaîne contenant la valeur de la clé.
Exemple
Voir MMNotes.getKeys(), page 53.
MMNotes.getKeyCount()
Description
Cette fonction obtient le nombre de paires clé/valeur du fichier Design Notes spécifié.
Arguments
fileHandle
L’ a r g u m e n t 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é.
MMNotes.getKeys()
Description
Cette fonction obtient une liste de toutes les clés d’un fichier Design Notes.
Arguments
fileHandle
L’ a r g u m e n t 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é.
API JavaScript de Design Notes 53
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 += theKeys[i] + " = " theValue + "\n"; } document.theForm.bigTextField.value = noteString; // always close noteHandle MMNotes.close(noteHandle);
MMNotes.getSiteRootForFile()
Description
Cette fonction détermine la racine du site pour le fichier Design Notes spécifié.
Arguments
fileURL
L’ a r g u m e n t 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 local pour le site, exprimé sous la forme d’une URL de type file://, ou une chaîne vide si Dreamweaver n’est pas installé ou si le fichier Design Notes se trouve en dehors de tout site défini par Dreamweaver. Cette fonction recherche tous les sites définis dans Dreamweaver.
MMNotes.getVersionName()
Description
Cette fonction obtient 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.
54 Chapitre 4 : API de Design Notes
Exemple
L’appel de la fonction MMNotes.getVersionName() à partir d’une commande, d’un objet, d’un comportement, d’un inspecteur de propriétés, d’un panneau flottant ou d’un traducteur de données Dreamweaver renvoie
MMNotes.getVersionName() à partir de Fireworks renvoie également la valeur "Dreamweaver"
"Dreamweaver". L’appel de la fonction
étant donné 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.
Arguments
fileURL
L’ a r g u m e n t 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 "MacintoshHD: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’ a r g u m e n t filePath, exprimé sous la forme d’une URL de type file://, est le chemin du
fichier principal auquel le fichier Design Notes est associé.
API JavaScript de Design Notes 55
L’ a r g u m e n t 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
associé à aucun site.
Valeurs renvoyées
L’identificateur du fichier Design Notes ou zéro (0) si le fichier n’a pas été ouvert ni créé.
Exemple
Voir MMNotes.set(), page 56.
MMNotes.remove()
Description
Cette fonction supprime la clé spécifiée (et sa valeur) du fichier Design Notes indiqué.
Arguments
fileHandle
, keyName
filePath n’est
L’ a r g u m e n t fileHandle est l’identificateur de fichier renvoyé par la fonction
MMNotes.open().
L’ a r g u m e n t 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’ a r g u m e n t fileHandle est l’identificateur de fichier renvoyé par la fonction
MMNotes.open().
L’ a r g u m e n t keyName est une chaîne contenant le nom de la clé.
L’ a r g u m e n t valueString est une chaîne contenant la valeur.
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,"Author","M. G. Miller");
56 Chapitre 4 : API de Design Notes
MMNotes.set(noteHandle,"Last Changed","28 août 1999");
MMNotes.close(noteHandle); }

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
FileHandle noteHandle
L’ a r g u m e n t noteHandle est l’identificateur de fichier renvoyé par la fonction
OpenNotesFile().
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’ a r g u m e n t drivePath est une chaîne contenant le chemin d’accès complet du lecteur.
L’ a r g u m e n t localURLBuf est la zone de mémoire tampon où l’URL de type file:// est stockée.
L’ a r g u m e n t 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://.
API C de Design Notes 57
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’ a r g u m e n t noteHandle est l’identificateur de fichier renvoyé par la fonction
OpenNotesFile().
L’ a r g u m e n t keyName[64] est une chaîne contenant le nom de la clé.
L’ a r g u m e n t valueBuf est la zone de mémoire tampon où la valeur est stockée.
L’ a r g u m e n t valueBufLength est le nombre entier renvoyé par GetNoteLength(noteHandle,
keyName), indiquant la longueur maximale de la mémoire tampon des valeurs.
Valeurs renvoyées
Valeur booléenne : true indique que l’opération a réussi ; false indique un échec. L’argument
valueBuf reçoit la valeur de la clé.
Exemple
Le code suivant obtient la valeur de la clé comments dans le fichier Design Notes associé au fichier welcome.html :
FileHandle noteHandle = OpenNotesFile("file:///c|/sites/avocado8/¬ iwjs/welcome.html"); if(noteHandle > 0){
int valueLength = GetNoteLength( noteHandle, "comments");
char* valueBuffer = new char[valueLength + 1];
GetNote(noteHandle, "comments", valueBuffer, valueLength + 1);
printf("Comments: %s",valueBuffer);
CloseNotesFile(noteHandle); }
int GetNoteLength()
Description
Cette fonction obtient la longueur de la valeur associée à la clé spécifiée.
Arguments
FileHandle
noteHandle, const char keyName[64]
L’ a r g u m e n t noteHandle est l’identificateur de fichier renvoyé par la fonction
OpenNotesFile().
L’ a r g u m e n t keyName[64] est une chaîne contenant le nom de la clé.
Valeurs renvoyées
Un nombre entier représentant la longueur de la valeur.
Exemple
Voir BOOL GetNote(), page 58.
58 Chapitre 4 : API de Design Notes
int GetNotesKeyCount()
Description
Cette fonction obtient le nombre de paires clé/valeur du fichier Design Notes spécifié.
Arguments
FileHandle noteHandle
L’ a r g u m e n t noteHandle est l’identificateur de fichier renvoyé par la fonction
OpenNotesFile().
Valeurs renvoyées
Un nombre entier représentant le nombre de paires clé/valeur du fichier Design Notes spécifié.
BOOL GetNotesKeys()
Description
Cette fonction obtient une liste de toutes les clés d’un fichier Design Notes.
Arguments
FileHandle
noteHandle, char* keyBufArray[64], int keyArrayMaxLen
L’ a r g u m e n t noteHandle est l’identificateur de fichier renvoyé par OpenNotesFile().
L’ a r g u m e n t keyBufArray[64] est le tableau en mémoire tampon où les clés sont stockées.
L’ a r g u m e n t keyArrayMaxLen est le nombre entier renvoyé par
GetNotesKeyCount(noteHandle), indiquant le nombre maximum d’éléments contenus dans
le tableau en mémoire tampon des clés.
Valeurs renvoyées
Valeur booléenne : true indique que l’opération a réussi ; false indique un échec. L’argument
keyBufArray reçoit les noms de clé.
Exemple
Le code suivant imprime les noms de clé et les valeurs de toutes les clés du fichier Design Notes associé au fichier welcome.html :
typedef char[64] InfoKey; FileHandle noteHandle = OpenNotesFile("file:///c|/sites/avocado8/¬ iwjs/welcome.html"); if (noteHandle > 0){
int keyCount = GetNotesKeyCount(noteHandle);
if (keyCount <= 0)
return; InfoKey* keys = new InfoKey[keyCount]; BOOL succeeded = GetNotesKeys(noteHandle, keys, keyCount);
if (succeeded){
for (int i=0; i < keyCount; i++){
printf("Key is: %s\n", keys[i]); printf("Value is: %s\n\n", GetNote(noteHandle, keys[i]);
} } delete []keys;
API C de Design Notes 59
} CloseNotesFile(noteHandle);
BOOL GetSiteRootForFile()
Description
Cette fonction détermine la racine du site pour le fichier Design Notes spécifié.
Arguments
const char* filePath infoPrefs}
, char* siteRootBuf, int siteRootBufMaxLen, {InfoPrefs*
L’ a r g u m e n t filePath est l’URL de type file:// du fichier dont vous souhaitez obtenir la racine
du site.
L’ a r g u m e n t siteRootBuf est la zone de mémoire tampon où la racine du site est stockée.
L’ a r g u m e n t siteRootBufMaxLen est la taille maximale de la mémoire tampon référencée par
siteRootBuf.
L’a rgum e nt fa cult ati f infoPrefs est une référence à un struct dans lequel les préférences du
site sont stockées.
Valeurs renvoyées
Valeur booléenne : true indique que l’opération a réussi ; false indique un échec. L’argument
siteRootBuf reçoit l’adresse de la mémoire tampon qui stocke la racine du site. Si vous spécifiez
l’argument Le struct deux de type
infoPrefs, la fonction renvoie également les préférences de Design Notes pour le site.
InfoPrefs possède deux variables : bUseDesignNotes et bUploadDesignNotes, toutes
BOOL.
BOOL GetVersionName()
Description
Cette fonction obtient le nom de version de la bibliothèque partagée MMNotes indiquant l’application qui l’a implémentée.
Arguments
char*
versionNameBuf, int versionNameBufMaxLen
L’ a r g u m e n t versionNameBuf est la zone de mémoire tampon où le nom de version est stocké.
L’ a r g u m e n t versionNameBufMaxLen est la taille maximale de la mémoire tampon référencée
par
versionNameBuf.
Valeurs renvoyées
Valeur booléenne : true indique que l’opération a réussi ; false indique un échec. Dreamweaver stocke
Dreamweaver dans l’argument versionNameBuf.
BOOL GetVersionNum()
Description
Cette fonction obtient le numéro de version de la bibliothèque partagée MMNotes, ce qui vous permet de savoir si certaines fonctions sont disponibles.
60 Chapitre 4 : API de Design Notes
Arguments
char*
versionNumBuf, int versionNumBufMaxLen
L’ a r g u m e n t versionNumBuf est la zone de mémoire tampon où le numéro de version est
stocké.
L’ a r g u m e n t versionNumBufMaxLen est la taille maximale de la mémoire tampon référencée
par
versionNumBuf.
Valeurs renvoyées
Valeur booléenne : true indique que l’opération a réussi ; false indique un échec. L’argument
versionNumBuf stocke le numéro de version.
BOOL LocalURLToFilePath()
Description
Cette fonction convertit l’URL de type file:// spécifiée en un chemin d’accès du lecteur local.
Arguments
const char*
localURL, char* drivePathBuf, int drivePathMaxLen
L’ a r g u m e n t localURL, exprimé sous la forme d’une URL de type file://, est le chemin d’un
fichier local.
L’ a r g u m e n t drivePathBuf est la zone de mémoire tampon où le chemin d’accès du lecteur
local est stocké.
L’ a r g u m e n t drivePathMaxLen est la taille maximale de la mémoire tampon référencée par
drivePathBuf.
Valeurs renvoyées
Valeur booléenne : true indique que l’opération a réussi ; false indique un échec. L’argument
drivePathBuf reçoit le chemin de fichier local.
FileHandle OpenNotesFile()
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
const char* localFileURL, {BOOL bForceCreate}
L’ a r g u m e n t localFileURL, exprimé sous la forme d’une URL de type file://, est une chaîne
contenant le chemin du fichier principal auquel le fichier Design Notes est associé.
L’ a r g u m e n t bForceCreate est une valeur booléenne indiquant si le fichier Design Notes doit
être créé même si la fonctionnalité Design Notes est désactivée pour le site ou si le chemin spécifié par l’argument
localFileURL n’est associé à aucun site.
API C de Design Notes 61
FileHandle OpenNotesFilewithOpenFlags()
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. Vous pouvez ouvrir le fichier en mode lecture seule.
Arguments
const char* localFileURL, {BOOL bForceCreate}
, {BOOL bReadOnly}
L’ a r g u m e n t localFileURL, exprimé sous la forme d’une URL de type file://, est une chaîne
contenant le chemin du fichier principal auquel le fichier Design Notes est associé.
L’ a r g u m e n t bForceCreate est une valeur booléenne indiquant si le fichier Design Notes doit
être créé même si la fonctionnalité Design Notes est désactivée pour le site ou si le chemin n’est associé à aucun site. La valeur par défaut est
false. Cet argument est facultatif, mais vous
devez le définir si vous spécifiez le troisième argument.
L’a rgum e nt fa cult ati f bReadOnly est une valeur booléenne indiquant si le fichier doit être
ouvert en mode lecture seule. La valeur par défaut est
bReadOnly disponible à partir de la version 2 du fichier MMNotes.dll.
BOOL RemoveNote()
Description
Cette fonction supprime la clé spécifiée (et sa valeur) du fichier Design Notes indiqué.
Arguments
FileHandle
noteHandle, const char keyName[64]
false. Vous pouvez spécifier l’argument
L’ a r g u m e n t noteHandle est l’identificateur de fichier renvoyé par la fonction
OpenNotesFile().
L’ a r g u m e n t keyName[64] 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.
BOOL SetNote()
Description
Cette fonction crée ou met à jour une paire clé/valeur dans un fichier Design Notes.
Arguments
FileHandle
noteHandle, const char keyName[64], const char* value
L’ a r g u m e n t noteHandle est l’identificateur de fichier renvoyé par la fonction
OpenNotesFile().
L’ a r g u m e n t keyName[64] est une chaîne contenant le nom de la clé.
L’ a r g u m e n t value est une chaîne contenant la valeur.
Valeurs renvoyées
Valeur booléenne : true indique que l’opération a réussi ; false indique un échec.
62 Chapitre 4 : API de Design Notes
CHAPITRE 5

Intégration de Fireworks

FWLaunch est une bibliothèque C partagée qui donne aux auteurs d’objets, de commandes, de comportements et d’inspecteurs de propriétés la possibilité de communiquer avec Macromedia Fireworks MX 2004. A l’aide de FWLaunch, vous rédigez du code JavaScript pour ouvrir l’interface utilisateur (IU) de Fireworks et fournissez des commandes à Fireworks via son propre API JavaScript, au sujet duquel vous trouverez plus d’informations dans le manuel Extension de Fireworks. Pour des informations générales sur l’interaction des bibliothèques C avec l’interpréteur JavaScript dans Macromedia Dreamweaver MX 2004, voir Extension de Dreamweaver pour plus de détails sur les extensions C.

L’API FWLaunch

L’objet FWLaunch permet aux extensions d’ouvrir Fireworks, d’exécuter des opérations Fireworks à l’aide de l’API JavaScript de Fireworks et de renvoyer les valeurs à Dreamweaver. Ce chapitre décrit l’API de communication FWLaunch et son utilisation.
FWLaunch.bringDWToFront()
Disponibilité
Dreamweaver 3, Fireworks 3.
Description
Cette fonction fait passer Dreamweaver au premier plan.
Arguments
Aucun.
Valeurs renvoyées
Aucune.
63
FWLaunch.bringFWToFront()
Disponibilité
Dreamweaver 3, Fireworks 3.
Description
Cette fonction fait passer Fireworks au premier plan s’il est en cours d’exécution.
Arguments
Aucun.
Valeurs renvoyées
Aucune.
FWLaunch.execJsInFireworks()
Disponibilité
Dreamweaver 3, Fireworks 3.
Description
Cette fonction transmet l’élément JavaScript spécifié (ou une référence à un fichier JavaScript) à Fireworks en vue de son exécution.
Arguments
javascriptOrFileURL
L’ a r g u m e n t javascriptOrFileURL, exprimé sous la forme d’une URL de type file://, est soit
une chaîne de JavaScript littéral, soit le chemin d’accès d’un fichier JavaScript.
Valeurs renvoyées
Un objet cookie si le code JavaScript a été transmis avec succès ou un code d’erreur non nul indiquant que l’une des erreurs suivantes s’est produite :
Utilisation non valide, ce qui indique que le chemin du fichier JS ou JSF n’est pas valide ou que
l’argument chaîne vide.
javascriptOrFileURL est spécifié comme ayant la valeur null ou comme une
Erreur d’E/S de fichier, ce qui indique que Fireworks ne peut pas créer de fichier réponse car le
disque est saturé.
Erreur de notification de Dreamweaver ; l’utilisateur n’exécute pas une version valide de
Dreamweaver (version 3 ou ultérieure).
Erreur de lancement de Fireworks, ce qui indique que la fonction n’ouvre pas une version
valide de Fireworks (version 3 ou ultérieure).
L’utilisateur a annulé l’opération.
64 Chapitre 5 : Intégration de Fireworks
FWLaunch.getJsResponse()
Disponibilité
Dreamweaver 3, Fireworks 3.
Description
Cette fonction détermine si Fireworks est toujours en train d’exécuter le code JavaScript qui lui a été transmis par la fonction
FWLaunch.execJsInFireworks(), que l’exécution du script se soit
terminée avec succès ou qu’une erreur se soit produite.
Arguments
progressTrackerCookie
L’ a r g u m e n t progressTrackerCookie est l’objet cookie renvoyé par la fonction
FWLaunch.execJsInFireworks().
Valeurs renvoyées
Une chaîne contenant le résultat du script transmis à FWLaunch.execJsInFireworks() si l’opération se termine avec succès, la valeur
null si Fireworks est toujours en train d’exécuter le
code JavaScript, ou un code d’erreur non nul indiquant que l’une des erreurs suivantes s’est produite :
Utilisation non valide, ce qui indique qu’une erreur JavaScript s’est produite pendant que
Fireworks exécutait le script.
Erreur d’E/S de fichier, ce qui indique que Fireworks ne peut pas créer de fichier réponse car le
disque est saturé.
Erreur de notification de Dreamweaver ; l’utilisateur n’exécute pas une version valide de
Dreamweaver (version 3 ou ultérieure).
Erreur de lancement de Fireworks, ce qui indique que la fonction n’ouvre pas une version
valide de Fireworks (version 3 ou ultérieure).
L’utilisateur a annulé l’opération.
Valeurs renvoyées
Le code suivant transmet la chaîne "prompt('Please enter your name:')" à la fonction
FWLaunch.execJsInFireworks(), puis il vérifie le résultat :
var progressCookie = FWLaunch.execJsInFireworks("prompt('Please enter your
name:')");
var doneFlag = false; while (!doneFlag){
// check for completion every 1/2 second setTimeout('checkForCompletion()',500);
}
function checkForCompletion(){
if (progressCookie != null) {
var response = FWLaunch.getJsResponse(progressCookie);
if (response != null) {
if (typeof(response) == "number") {
// error or user-cancel, time to close the window // and let the user know we got an error window.close(); alert("An error occurred.");
L’API FWLaunch 65
} else {
// got a valid response! alert("Nice to meet you, " + response); window.close();
}
doneFlag = true;
} }
}
FWLaunch.mayLaunchFireworks()
Disponibilité
Dreamweaver 2, Fireworks 2.
Description
Cette fonction détermine s’il est possible d’ouvrir une session d’optimisation de Fireworks.
Arguments
Aucun.
Valeurs renvoyées
Une valeur booléenne indiquant si la plate-forme est Windows ou Macintosh ; sur Macintosh, la valeur indique si une autre session d’optimisation de Fireworks est déjà en cours d’exécution.
FWLaunch.optimizeInFireworks()
Disponibilité
Dreamweaver 2, Fireworks 2.
Description
Cette fonction ouvre une session d’optimisation de Fireworks pour l’image spécifiée.
Arguments
docURL, imageURL, {targetWidth}, {targetHeight}
L’ a r g u m e n t docURL est le chemin d’accès du document actif, exprimé sous la forme d’une URL
de type file://.
L’ a r g u m e n t imageURL est le chemin de l’image sélectionnée. Si le chemin est relatif, sa
référence sera le chemin spécifié dans l’argument
docURL.
L’ a r g u m e n t targetWidth (facultatif ) définit la largeur par rapport à laquelle l’image doit être
redimensionnée.
L’ a r g u m e n t targetHeight (facultatif ) définit la hauteur par rapport à laquelle l’image doit
être redimensionnée.
Valeurs renvoyées
Zéro (0) si une session d’optimisation de Fireworks a été lancée avec succès pour l’image spécifiée ; sinon, un code d’erreur non nul indiquant que l’une des erreurs suivantes s’est produite :
66 Chapitre 5 : Intégration de Fireworks
Utilisation non valide, ce qui indique que l’argument docURL, l’argument imageURL, ou les
deux, ont été spécifiés comme étant
null ou sous forme d’une chaîne vide.
Erreur d’E/S de fichier ; Fireworks ne peut pas créer de fichier réponse car le disque est saturé.
Erreur de notification de Dreamweaver ; l’utilisateur n’exécute pas une version valide de
Dreamweaver (version 2 ou ultérieure).
Erreur lors du démarrage de Fireworks, ce qui indique que la fonction n’ouvre pas une version
valide de Fireworks (version 2 ou ultérieure).
L’utilisateur a annulé l’opération.
FWLaunch.validateFireworks()
Disponibilité
Dreamweaver 2, Fireworks 2.
Description
Cette fonction recherche la version spécifiée de Fireworks sur le disque dur de l’utilisateur.
Arguments
{versionNumber}
L’ a r g u m e n t versionNumber est un nombre à virgule flottante supérieur ou égal à 2 ; il est
facultatif et représente la version requise de Fireworks. Si cet argument n’est pas défini, il prend par défaut la valeur 2.
Valeurs renvoyées
Une valeur booléenne indiquant si la version spécifiée de Fireworks a été trouvée.
Exemple
Le code suivant vérifie si Fireworks est installé :
if (FWLaunch.validateFireworks(6.0)){
alert("Fireworks 6.0 or later is installed.");
}else{
alert("Fireworks 6.0 is not installed.");
}
Un exemple simple de communication FWLaunch
La commande suivante demande à Fireworks d’inviter l’utilisateur à entrer son nom, puis renvoie le nom à Dreamweaver.
<html> <head> <title>Prompt in Fireworks</title> <meta http-equiv="Content-Type" content="text/html; ¬ charset=iso-8859-1"> <script>
function commandButtons(){
return new Array("Prompt", "promptInFireworks()", "Cancel", ¬ "readyToCancel()", "Close","window.close()");
}
var gCancelClicked = false;
L’API FWLaunch 67
var gProgressTrackerCookie = null;
function readyToCancel() {
gCancelClicked = true;
}
function promptInFireworks() {
var isFireworks3 = FWLaunch.validateFireworks(3.0); if (!isFireworks3) {
alert("You must have Fireworks 3.0 or later to use this ¬
command"); return;
}
// Tell Fireworks to execute the prompt() method. gProgressTrackerCookie = FWLaunch.execJsInFireworks¬ ("prompt('Please enter your name:')");
// null means it wasn’t launched, a number means an error code if (gProgressTrackerCookie == null || ¬ typeof(gProgressTrackerCookie) == "number") {
window.close();
alert("an error occurred");
gProgressTrackerCookie = null; } else {
// bring Fireworks to the front
FWLaunch.bringFWToFront();
// start the checking to see if Fireworks is done yet
checkOneMoreTime(); }
}
function checkOneMoreTime() {
// Call checkJsResponse() every 1/2 second to see if Fireworks
// is done yet
window.setTimeout("checkJsResponse();", 500);
}
function checkJsResponse() {
var response = null;
// The user clicked the cancel button, close the window if (gCancelClicked) {
window.close();
alert("cancel clicked"); } else {
// We’re still going, ask Fireworks how it’s doing
if (gProgressTrackerCookie != null)
response = ¬ FWLaunch.getJsResponse(gProgressTrackerCookie);
if (response == null) {
// still waiting for a response, call us again in 1/2 a // second checkOneMoreTime();
} else if (typeof(response) == "number") {
// if the response was a number, it means an error // occurred // the user cancelled in Fireworks window.close(); alert("an error occurred.");
68 Chapitre 5 : Intégration de Fireworks
} else {
// got a valid response! This return value might not // always be a useful one, since not all functions in // Fireworks return a string, but we know this one does, // so we can show the user what we got. window.close(); FWLaunch.bringDWToFront(); // bring Dreamweaver to the ¬ front alert("Nice to meet you, " + response + "!");
} }
}
</script> </head> <body> <form> <table width="313" nowrap> <tr> <td>This command asks Fireworks to execute the prompt() ¬ function. When you click Prompt, Fireworks comes forward and ¬ asks you to enter a value into a dialog box. That value is then ¬ returned to Dreamweaver and displayed in an alert.</td> </tr> </table> </form> </body> </html>
L’API FWLaunch 69
70 Chapitre 5 : Intégration de Fireworks
CHAPITRE 6

Intégration de Flash

Macromedia Dreamweaver MX 2004 prend maintenant en charge les éléments Flash XM 2004, en plus de l’API d’objet Flash, qui s’appuie sur le modèle Flash Generator pour créer de nouveaux objets Flash. Ce chapitre décrit comment utiliser les éléments Flash (fichiers SWC), et explique en détail comment créer des objets Flash (fichiers SWF) à partir des modèles Flash Generator (fichiers SWT).
Pour plus d’informations sur l’ajout de contenu Flash à des objets ou des commandes Dreamweaver, voir Extension de Dreamweaver.

Fonctionnement des éléments Flash

Les éléments Flash se présentent sous forme de fichiers SWC. Un fichier SWC est un clip vidéo compilé généré par Flash pour être utilisé par Macromedia et des produits tiers. Dreamweaver peut rendre ces composants accessibles aux utilisateurs via la barre Insérer, le menu Insérer ou une barre d’outils. Vous créez des éléments Flash à l’aide de l’outil de création Web Flash, mais Dreamweaver peut analyser les propriétés d’un élément Flash et les exprimer via la balise (enfant de la balise
param, de façon à changer les propriétés de l’élément au moment de l’édition (pour plus
d’informations sur l’utilisation des propriétés des composants dans Dreamweaver, voir Utilisation de Dreamweaver).
object). Les utilisateurs peuvent ensuite modifier les attributs de la balise
param
71

Insertion d’éléments Flash

Les éléments Flash sont installés via Extension Manager. Dreamweaver ajoute des éléments Flash aux documents de la même façon que les objets de la barre Insérer ou du menu Insérer (pour plus d’informations sur l’utilisation d’objets Dreamweaver, voir Objets de la barre Insérer dans Extension de Dreamweaver). Les utilisateurs peuvent ajouter des chaînes de code aux documents en cliquant sur les objets de la barre Insérer ou en sélectionnant les options dans le menu Insérer. Les utilisateurs peuvent accéder aux éléments Flash via la barre Insérer ou le menu Insérer (ce qui signifie que vous pouvez ajouter à la barre Insérer ou au menu Insérer un fichier d’élément Flash valide déjà installé dans le dossier Configuration/Objects/FlashElements ou l’un de ses sous­dossiers). Les développeurs d’extensions peuvent utiliser la fonction JavaScript
dom.insertFlashElement() du fichier de définition de l’objet pour ajouter des éléments Flash
disponibles à un document. Lorsque l’utilisateur sélectionne l’objet de l’élément Flash, Dreamweaver ouvre le fichier SWC, qui contient le contenu Flash (fichier SWF) et un fichier détaillant les paramètres que l’utilisateur peut modifier. Dreamweaver insère ensuite le fichier SWF dans le document de l’utilisateur.
Ajout d’un élément Flash à la barre Insérer
De même que pour tout autre objet, l’ajout d’un élément Flash à la barre Insérer se fait via la balise
button. Toutefois, une balise button pour un élément Flash doit avoir des attributs file et command pour être correctement ajoutée au document (pour plus d’informations sur la balise button, voir Objets de la barre Insérer dans Extension de Dreamweaver). Les attributs file
permettent d’indiquer à Dreamweaver où se trouve le fichier source de l’élément par rapport au dossier Objects. Utilisez ensuite l’attribut fonction
dom.insertFlashElement() lorsque l’utilisateur clique sur le bouton de la barre
Insérer. L’exemple suivant représente le code qui doit être écrit dans le fichier inserbar.xml (en tant
qu’enfant de la balise
category ou menubutton appropriée, selon l’endroit où vous souhaitez voir
apparaître le bouton de l’élément Flash) :
<button id="FlashElement_Nav" name="Navigation" file="FlashElements\nav.swc" command="dw.getDocumentDOM().insertFlashElement('nav.swc')" />
Remarque : L’image sur la barre Insérer pour l’élément Flash est déterminée au sein du fichier SWC. En outre, la balise
button pour un élément Flash doit avoir un attribut de fichier défini.
command pour indiquer à Dreamweaver d’utiliser la
Ajout d’un élément Flash à un menu
Un élément Flash peut également être situé dans le menu Insérer ou dans d’autres menus de Dreamweaver. Utilisez la fonction JavaScript dom.insertFlashElement() avec le format de fichier menus.xml (voir Menus et commandes de menus dans Extension de Dreamweaver) pour indiquer l’emplacement de l’élément de menu Flash. L’exemple suivant est un code qui permet, au sein du fichier menus.xml, d’intégrer l’élément Navigation Flash dans le menu Insertion > Elément Flash :
<menuitem name="Navigation" key=""command="dw.getDocumentDOM().insertFlashElement('nav.swc')" enabled="(dw.getFocus() != 'browser') && (dw.getDocumentDOM() != null && ¬
dw.getDocumentDOM().getParseMode() == 'html')"
id="DWMenu_Insert_FlashElement_Nav" />
72 Chapitre 6 : Intégration de Flash

API des objets Flash

L’API des objets Flash permet aux développeurs d’extensions de construire des objets pour créer un contenu Macromedia Flash simple via Flash Generator. Cette API fournit un moyen de définir des paramètres dans un modèle Flash Generator pour réaliser un fichier SWF ou d’image. Elle permet de créer de nouveaux objets Flash mais aussi de lire et de manipuler des objets Flash existants. Les fonctionnalités bouton Flash et texte Flash sont construites à l’aide de cette API.
Le fichier de modèle Flash Generator SWT contient toutes les informations indispensables à la construction d’un fichier d’objet Flash. Ces fonctions d’API vous permettent de créer un nouveau fichier SWF (ou fichier d’image) à partir d’un fichier SWT en remplaçant les paramètres du fichier SWT par des valeurs réelles. Pour plus d’informations sur Flash, voir le manuel correspondant. Les fonctions suivantes sont des méthodes de l’objet
SWFFile.createFile()
Description
Cette fonction génère un nouveau fichier Objet Flash à partir du modèle et du tableau des paramètres spécifiés. Elle crée également une version GIF, PNG, JPEG et MOV du titre si les noms de fichier sous ces formats sont précisés.
Pour pouvoir spécifier un paramètre facultatif placé après des paramètres facultatifs que vous ne voulez pas spécifier, vous devez insérer des chaînes vides dans ces paramètres. Par exemple, si vous souhaitez spécifier un fichier PNG, mais pas de fichier GIF, vous devez insérer une chaîne vide avant de spécifier le nom du fichier PNG.
Arguments
templateFile {jpgFileName}, {movFileName}, {generatorParams}
, templateParams, swfFileName, {gifFileName}, {pngFileName},
SWFFile.
L’ a r g u m e n t templateFile est le chemin d’accès du fichier modèle, exprimé sous la forme
d’une URL de type file://. Il peut s’agir d’un fichier SWT.
L’ a r g u m e n t templateParams est un tableau de paires nom/valeur dans lequel les noms
identifient les paramètres du fichier SWT et les valeurs correspondent à la définition que vous voulez leur attribuer. Pour que Dreamweaver puisse reconnaître un fichier SWF comme objet Flash, le premier paramètre doit être nom du type d’objet, telle que
"dwType". Sa valeur doit être une chaîne représentant le
"Flash Text".
L’ a r g u m e n t swfFileName, exprimé sous forme d’une URL de type file://, correspond au nom
de fichier de sortie d’un fichier SWF ou d’une chaîne vide à ignorer.
L’ a r g u m e n t gifFileName, exprimé sous forme d’une URL de type file://, correspond au nom
de fichier de sortie d’un fichier GIF. Cet argument est facultatif.
L’ a r g u m e n t pngFileName, exprimé sous forme d’une URL de type file://, correspond au nom
de fichier de sortie d’un fichier PNG. Cet argument est facultatif.
L’ a r g u m e n t jpgFileName, exprimé sous forme d’une URL de type file://, correspond au nom
de fichier de sortie d’un fichier JPEG. Cet argument est facultatif.
L’ a r g u m e n t movFileName, exprimé sous forme d’une URL de type file://, correspond au nom
de fichier de sortie d’un fichier QuickTime. Cet argument est facultatif.
API des objets Flash 73
L’ a r g u m e n t generatorParams est un tableau de chaînes représentant les indicateurs facultatifs
de la ligne de commande de Generator. Cet argument est facultatif. Les éléments de données de toutes les balises doivent suivre dans le tableau. Les indicateurs couramment utilisés sont répertoriés dans le tableau suivant :
Indicateur d’option
-defaultsize
-exactFit
Valeurs renvoyées
Données Description Exemple
Largeur, hauteur
Aucune Etend le contenu de l’image de sortie
Définit la taille de l’image de sortie en fonction des largeur et hauteur indiquées.
pour qu’il s’adapte exactement à la taille de sortie indiquée.
"-defaultsize", "640", "480"
"-exactFit"
Chaîne qui contient l’une des valeurs suivantes :
"noError" signifie que l’appel s’est déroulé sans anomalie.
"invalidTemplateFile" signifie que le fichier de modèle choisi était incorrect ou
introuvable.
"invalidOutputFile" signifie qu’au moins un des noms de fichier de sortie spécifiés était
incorrect.
"invalidData" signifie qu’une ou plusieurs des paires nom/valeur templateParams étaient
incorrectes.
"initGeneratorFailed" signifie que Generator n’a pas pu être initialisé.
"outOfMemory" signifie que l’opération n’a pas pu se terminer correctement faute de mémoire.
"unknownError" signifie qu’une erreur inconnue s’est produite.
Exemple
Le code JavaScript suivant crée un fichier objet Flash de type "monType", qui remplace toutes les occurrences de la chaîne Il crée un fichier GIF et un fichier SWF.
var params = new Array; params[0] = "dwType"; params[1] = "monType"; params[2] = "text"; params[3] = "Hello World"; errorString = SWFFile.createFile( "file:///MyMac/test.swt", ¬ params, "file:///MyMac/test.swf", "file:///MyMac/test.gif");
"text" à l’intérieur du fichier de modèle par la chaîne "Hello World".
SWFFile.getNaturalSize()
Description
Cette fonction renvoie la taille naturelle de tout contenu Flash.
74 Chapitre 6 : Intégration de Flash
Arguments
fileName
L’ a r g u m e n t fileName, exprimé sous la forme d’une URL de type file://, correspond au chemin
d’accès au contenu Flash.
Valeurs renvoyées
Un tableau contenant deux éléments qui représentent la largeur et la hauteur du contenu Flash ou une valeur
null si le fichier n’est pas un fichier Flash.
SWFFile.getObjectType()
Description
Cette fonction renvoie le type d’objet Flash, c’est-à-dire la valeur transmise dans le paramètre
dwType lorsque le fichier a été créé par la fonction SWFFile.createFile().
Arguments
fileName
L’ a r g u m e n t fileName, exprimé sous la forme d’une URL de type file://, correspond au chemin
d’accès à un fichier Objet Flash. Il s’agit généralement d’un fichier SWF.
Valeurs renvoyées
Une chaîne représentant le type d’objet ou contenant la valeur null si le fichier n’est pas un fichier Objet Flash ou s’il est introuvable.
Exemple
Le code suivant vérifie si le fichier test.swf est un objet Flash de type monType :
if ( SWFFile.getObjectType("file:///MyMac/test.swf") == ¬ "monType" ){
alert ("Ceci est un objet monType.");
}else{
alert ("Ceci n’est pas un objet monType.");
}
SWFFile.readFile()
Description
Cette fonction lit un fichier Objet Flash.
Arguments
fileName
L’ a r g u m e n t fileName, exprimé sous la forme d’une URL de type file://, correspond au chemin
d’accès à un fichier Objet Flash.
API des objets Flash 75
Valeurs renvoyées
Un tableau de chaînes dans lequel le premier élément est le chemin d’accès complet du fichier modèle SWT. Les chaînes suivantes représentent les paramètres (paires nom/valeur) de l’objet. Dans le tableau, chaque nom est suivi de sa valeur. La première paire nom/valeur est
"dwType",
suivie par sa valeur. La fonction renvoie une valeur null si le fichier est introuvable ou s’il ne s’agit pas d’un fichier Objet Flash.
Exemple
L’appel du code var params = SWFFile.readFile("file:///MyMac/test.swf") renvoie les valeurs suivantes dans le tableau des paramètres :
"file:///MyMac/test.swt" // fichier modèle utilisé pour créer ce fichier .swf "dwType" // premier paramètre "monType" // première valeur de paramètre "text" // second paramètre "Hello World" // seconde valeur de paramètre
76 Chapitre 6 : Intégration de Flash
CHAPITRE 7

API de base de données

Les fonctions de l’API de base de données permettent de gérer les connexions aux bases de données et d’accéder aux informations stockées dans ces dernières. L’API de base de données est divisé en deux fonctions distinctes : la gestion des connexions et l’accès aux bases de données.
La gestion des connexions aux bases de données permet, par exemple, d’obtenir le nom d’utilisateur et le mot de passe nécessaires pour établir une connexion à une base de données ou d’ouvrir une boîte de dialogue de connexion à une base de données.
L’accès aux informations de base de données permet par exemple d’extraire les métadonnées qui décrivent le schéma ou la structure d’une base de données. Ces métadonnées incluent des informations telles que les noms des tables, des colonnes, des procédures stockées et des affichages. Vous pouvez également afficher les résultats de l’exécution d’une requête de base de données ou d’une procédure stockée. Lorsque vous accédez à une base de données par le biais de cette API, vous utilisez des instructions SQL (Structured Query Language).
Les fonctions de l’API de base de données sont utilisées au moment de la conception, lorsque les utilisateurs développent leurs applications Web, et non au moment de l’exécution, c’est-à-dire lorsque l’application Web est déployée.
Il est possible d’utiliser ces fonctions dans n’importe quelle extension. En fait, les fonctions des API de comportement de serveur, de format des données et de source de données de Macromedia Dreamweaver MX 2004 utilisent toutes des fonctions de base de données.

Fonctionnement de l’API de bases de données

L’exemple suivant illustre la façon dont la fonction de comportement de serveur,
getDynamicBindings(), est définie pour Recordset.js. Cet exemple utilise la fonction MMDB.getColumnAndTypeList() :
fonction getDynamicBindings(ss) {
var serverModel = dw.getDocumentDOM().serverModel.getServerName(); var bindingsAndTypeArray = new Array(); var connName = ss.connectionName; var statement = ss.source; var rsName = ss.rsName;
// remove SQL comments statement = statement.replace(/\/\*[\S\s]*?\*\//g, " "); var bIsSimple = ParseSimpleSQL(statement); statement = stripCFIFSimple(statement);
77
if (bIsSimple) { statement = RemoveWhereClause(statement,false); } else {
var pa = new Array();
if (ss.ParamArray != null) { for (var i = 0; i < ss.ParamArray.length; i++) { pa[i] = new Array(); pa[i][0] = ss.ParamArray[i].name; pa[i][1] = ss.ParamArray[i].value; } }
var statement = replaceParamsWithVals(statement, pa, serverModel); }
bindingsAndTypeArray = MMDB.getColumnAndTypeList(connName, statement);
return bindingsAndTypeArray; }

Fonctions de connexion à une base de données

Les fonctions de connexion à une base de données vous permettent d’établir et de gérer toutes les connexions, y compris les connexions ADO de Dreamweaver, ColdFusion et JDBC. Ces fonctions interagissent avec le Gestionnaire de connexions uniquement ; elles n’accèdent pas aux bases de données. Pour les fonctions qui accèdent aux bases de données, voir Fonctions d’accès à la
base de données, page 91.
MMDB.deleteConnection()
Disponibilité
Dreamweaver MX.
Description
Cette fonction permet de supprimer la connexion à la base de données nommée.
Arguments
connName
L’ a r g u m e n t connName est le nom de la connexion à la base de données tel qu’il est spécifié dans
le Gestionnaire de connexions. Cet argument identifie la connexion à la base de données à
supprimer en fonction de son nom.
Valeurs renvoyées
Aucune.
Exemple
L’exemple suivant supprime une connexion à une base de données :
function clickedDelete() {
var selectedObj = dw.serverComponents.getSelectedNode();
if (selectedObj && selectedObj.objectType=="Connection")
{
var connRec = MMDB.getConnection(selectedObj.name);
78 Chapitre 7 : API de base de données
if (connRec) {
MMDB.deleteConnection(selectedObj.name); dw.serverComponents.refresh();
}
} }
MMDB.getColdFusionDsnList()
Disponibilité
Dreamweaver UltraDev 4.
Description
Extrait les noms des sources de données (DSN) ColdFusion du serveur du site, en utilisant les fonctions
Arguments
getRDSUserName() et getRDSPassword().
Aucun.
Valeurs renvoyées
Tableau contenant les DSN ColdFusion définis sur le serveur pour le site en cours.
MMDB.getConnection()
Disponibilité
Dreamweaver UltraDev 4, améliorée dans la version Dreamweaver MX.
Description
Extrait un objet de connexion nommé.
Arguments
name
L’ a r g u m e n t name est une variable de chaîne qui spécifie le nom de la connexion à laquelle vous
souhaitez faire référence.
Valeurs renvoyées
Référence à un objet de connexion nommé. Les objets de connexion ont les propriétés suivantes :
Propriété Description
name
type
string
dsn
driver
Nom de connexion
Indique, en cas de useHTTP false, quel fichier DLL utiliser pour se connecter à une base de données en exécution
Chaîne de connexion ADO d’exécution ou URL JDBC
DSN ColdFusion
Pilote JDBC d’exécution
Fonctions de connexion à une base de données 79
Propriété Description
username
password
useHTTP
includePattern
variables
catalog
schema
filename
Remarque : Il s’agit des propriétés standard implémentées par Dreamweaver. Les développeurs peuvent définir leurs propres types de connexion et ajouter de nouvelles propriétés à cet ensemble standard, ou bien fournir un ensemble différent de propriétés.
Nom d’utilisateur d’exécution
Mot de passe d’exécution
Chaîne qui contient la valeur true ou false, indiquant si vous devez utiliser un pilote distant (connexion HTTP) au moment de la conception ou un pilote local (DLL)
Expression régulière utilisée pour trouver l’instruction d’inclusion de fichier sur la page pendant Live Data et Aperçu dans le navigateur
Tableau de noms de variables de pages et leurs valeurs correspondantes, utilisé pendant Live Data et Aperçu dans le navigateur
Utilisé pour restreindre les métadonnées qui apparaissent (pour plus d’informations, voir MMDB.getProcedures(), page 94)
Utilisé pour restreindre les métadonnées qui apparaissent (pour plus d’informations, voir MMDB.getProcedures(), page 94)
Nom de fichier de boîte de dialogue qui était utilisé pour créer la connexion
MMDB.getConnectionList()
Disponibilité
Dreamweaver UltraDev 1.
Description
Extrait une liste de toutes les chaînes de connexion définies dans le Gestionnaire de connexions.
Arguments
Aucun.
Valeurs renvoyées
Tableau de chaînes, chaque chaîne correspondant au nom d’une connexion tel qu’il apparaît dans le Gestionnaire de connexions.
Exemple
La fonction MMDB.getConnectionList() peut renvoyer les chaînes ["EmpDB", "Test",
"TestEmp"]
.
MMDB.getConnectionName()
Disponibilité
Dreamweaver UltraDev 1.
80 Chapitre 7 : API de base de données
Description
Extrait un nom de connexion correspondant à la chaîne de connexion spécifiée. Cette fonction est utile lorsque vous devez resélectionner un nom de connexion dans l’interface utilisateur (IU) à partir des données de la page.
Si vous avez une chaîne de connexion faisant référence à deux pilotes différents, vous pouvez spécifier à la fois la chaîne de connexion et le pilote correspondant au nom de connexion que vous souhaitez obtenir. Par exemple, vous pourriez avoir deux connexions :
Connexion 1 possède les propriétés suivantes :
ConnectionString="jdbc:inetdae:velcro-qa-5:1433?database=pubs"
DriverName="com.inet.tds.TdsDriver"
Connexion 2 possède les propriétés suivantes :
ConnectionString="jdbc:inetdae:velcro-qa-5:1433?database=pubs"
DriverName="com.inet.tds.TdsDriver2"
Les chaînes de connexion de Connexion 1 et Connexion 2 sont identiques. Connexion 2 établit une connexion avec une version plus récente de
TdsDriver. Vous devez transmettre le nom du
pilote à cette fonction pour définir complètement le nom de connexion que vous souhaitez obtenir.
Arguments
connString, {driverName}
connString est la chaîne de connexion qui extrait le nom de la connexion.
L’a rgum e nt fa cult ati f driverName définit l’argument connString de manière plus précise.
Valeurs renvoyées
Chaîne de nom de connexion correspondant à la chaîne de connexion.
Exemple
Le code suivant renvoie la chaîne "EmpDB" :
var connectionName = MMDB.getConnectionName ¬ ("dsn=EmpDB;uid=;pwd=");
MMDB.getConnectionString()
Disponibilité
Dreamweaver UltraDev 1.
Description
Extrait la chaîne de connexion associée à la connexion nommée.
Arguments
connName
connName est un nom de connexion spécifié dans le Gestionnaire de connexions. Il identifie la
chaîne de connexion que Dreamweaver doit utiliser pour connecter la base de données à une
source de données active.
Fonctions de connexion à une base de données 81
Valeurs renvoyées
Chaîne de connexion qui correspond à la connexion nommée.
Exemple
Le code var connectionString = MMDB.getConnectionString ("EmpDB") renvoie différentes chaînes pour une connexion ADO ou JDBC.
Pour une connexion ADO, la chaîne suivante peut renvoyer :
"dsn=EmpDB;uid=;pwd=";
Pour une connexion JDBC, la chaîne suivante peut renvoyer :
"jdbc:inetdae:192.168.64.49:1433?database=pubs&user=JoeUser&¬
password=joesSecret"
MMDB.getDriverName()
Disponibilité
Dreamweaver UltraDev 1.
Description
Extrait le nom du pilote associé à la connexion spécifiée. Seules les connexions JDBC ont des noms de pilote.
Arguments
connName
connName est un nom de connexion spécifié dans le Gestionnaire de connexions. Il identifie la
chaîne de connexion que Dreamweaver doit utiliser pour connecter la base de données à une
source de données active.
Valeurs renvoyées
Chaîne contenant le nom du pilote.
Exemple
L’instruction MMDB.getDriverName ("EmpDB"); peut renvoyer la chaîne suivante :
"jdbc/oracle/driver/JdbcOracle"
MMDB.getDriverUrlTemplateList() (déconseillée)
Disponibilité
Dreamweaver UltraDev 4, déconseillée dans Dreamweaver MX.
Remarque : Pour Dreamweaver UltraDev 4, la liste des pilotes JDBC est stockée dans le fichier connections.xml résidant dans le dossier Configuration/Connections. Tous les pilotes ont un modèle d’URL associé. Cette fonction renvoie la liste des pilotes JDBC.
82 Chapitre 7 : API de base de données
Pour Dreamweaver MX (ou version ultérieure), ces pilotes et les modèles d’URL sont codés dans les boîtes de dialogue JDBC. En outre, cette fonction est une définition de fonction vide utilisée pour éliminer les erreurs de fonctions non définies. L’exemple suivant indique la manière dont un lecteur JDBC et un modèle d’URL sont codés :
var DEFAULT_DRIVER = "COM.ibm.db2.jdbc.app.DB2Driver";
var DEFAULT_TEMPLATE = "jdbc:db2:[database]";
Dreamweaver dispose d’une boîte de dialogue pour chaque paire pilote/modèle d’URL. En résumé, les développeurs qui utilisent Dreamweaver UltraDev 4 doivent ajouter une nouvelle
entrée à XML et ceux qui utilisent Dreamweaver MX (ou version supérieure) doivent mettre en œuvre une nouvelle boîte de dialogue.
Description
Extrait les pilotes JDBC et les modèles d’URL respectifs.
Arguments
Aucun.
Valeurs renvoyées
Tableau contenant les pilotes JDBC détectés sur le système de l’utilisateur et leurs modèles d’URL respectifs, s’ils sont spécifiés. Le tableau dispose d’un nombre pair d’éléments contenant :
Driver1, UrlTemplate1, Driver2, UrlTemplate2, etc.
MMDB.getLocalDsnList()
Disponibilité
Dreamweaver UltraDev 4.
Description
Extrait les DSN ODBC définis dans le système de l’utilisateur.
Arguments
Aucun.
Valeurs renvoyées
Tableau contenant les DSN ODBC définis sur le système de l’utilisateur.
MMDB.getPassword()
Disponibilité
Dreamweaver UltraDev 1.
Description
Extrait le mot de passe utilisé pour la connexion spécifiée.
Arguments
connName
Fonctions de connexion à une base de données 83
connName est un nom de connexion spécifié dans le Gestionnaire de connexions. Il identifie la
chaîne de connexion que Dreamweaver doit utiliser pour connecter la base de données à une
source de données active.
Valeurs renvoyées
Une chaîne de mot de passe associée au nom de connexion.
Exemple
L’instruction MMDB.getPassword ("EmpDB"); peut renvoyer "joessecret".
MMDB.getRDSPassword()
Disponibilité
Dreamweaver UltraDev 4.
Description
Extrait le mot de passe Remote Development Services (RDS) (à utiliser avec les connexions ColdFusion).
Arguments
Aucun.
Valeurs renvoyées
Chaîne contenant le mot de passe RDS.
MMDB.getRDSUserName()
Disponibilité
Dreamweaver UltraDev 4.
Description
Extrait le nom d’utilisateur RDS (à utiliser avec les connexions ColdFusion).
Arguments
Aucun.
Valeurs renvoyées
Une chaîne contenant le nom d’utilisateur RDS.
MMDB.getRemoteDsnList()
Disponibilité
Dreamweaver UltraDev 4, améliorée dans la version Dreamweaver MX.
84 Chapitre 7 : API de base de données
Description
Extrait les DSN ODBC du serveur de site. Les fonctions getRDSUserName() et
getRDSPassword() sont utilisées lorsque le modèle de serveur du site en cours est ColdFusion.
Cette fonction offre aux développeurs la possibilité de spécifier une chaîne de paramètre URL à annexer à l’URL Remote Connectivity générée par
MMDB.getRemoteDsnList(). Si le
développeur fournit une chaîne de paramètre, cette fonction la transmet aux scripts de connectivité HTTP.
Arguments
{urlParams}
L’a rgum e nt fa cult ati f urlParams est une chaîne contenant une liste des expressions
name=value, séparées par des esperluettes (&). Les valeurs ne doivent pas être entourées de
guillemets. Certains caractères, tels que l’espace dans la valeur «
codés. Voici un exemple d’argument valide que vous pouvez transmettre dans
MMDB.getRemoteDsnList() :
a=1&b=Hello%20World
Valeurs renvoyées
Renvoie un tableau contenant les DSN ODBC définis sur le serveur pour le site en cours.
MMDB.getRuntimeConnectionType()
Disponibilité
Dreamweaver UltraDev 1.
Description
Renvoie le type de connexion d’exécution du nom de connexion spécifié.
Hello World », doivent être
Arguments
connName
connName est un nom de connexion spécifié dans le Gestionnaire de connexions. Il identifie la
chaîne de connexion que Dreamweaver doit utiliser pour connecter la base de données à une
source de données active.
Valeurs renvoyées
Chaîne correspondant au type de connexion. Cette fonction peut renvoyer une des valeurs suivantes :
Exemple
Le code suivant renvoie la chaîne "ADO" pour une connexion ADO :
var connectionType = MMDB.getRuntimeConnectionType ("EmpDB")
MMDB.getUserName()
Disponibilité
Dreamweaver UltraDev 1.
"ADO", "ADODSN", "JDBC" ou"CFDSN".
Fonctions de connexion à une base de données 85
Description
Renvoie un nom d’utilisateur pour la connexion spécifiée.
Arguments
connName
connName est un nom de connexion spécifié dans le Gestionnaire de connexions. Il identifie la
chaîne de connexion que Dreamweaver doit utiliser pour connecter la base de données à une
source de données active.
Valeurs renvoyées
Chaîne de nom d’utilisateur associée au nom de connexion.
Exemple
L’instruction MMDB.getUserName ("EmpDB"); peut renvoyer "amit".
MMDB.hasConnectionWithName()
Disponibilité
Dreamweaver UltraDev 4.
Description
Détermine l’existence de la connexion d’un nom donné.
Arguments
name
name est le nom de la connexion.
Valeurs renvoyées
Renvoie une valeur booléenne : true indique l’existence d’une connexion ayant le nom spécifié ;
false indique le contraire.
MMDB.needToPromptForRdsInfo()
Disponibilité
Dreamweaver MX.
Description
Détermine si Dreamweaver doit ouvrir la boîte de dialogue des informations de connexion RDS.
Arguments
bForce
bForce est une valeur booléenne ; true indique que l’utilisateur ayant précédemment annulé
la boîte de dialogue RDS doit toujours être invité à saisir les informations de connexion RDS.
Valeurs renvoyées
Valeur booléenne : true indique que l’utilisateur doit être invité à saisir les informations de connexion RDS ;
86 Chapitre 7 : API de base de données
false indique le contraire.
MMDB.needToRefreshColdFusionDsnList()
Disponibilité
Dreamweaver MX.
Description
Ordonne au Gestionnaire de connexions de vider la mémoire cache et d’extraire la liste des sources des données ColdFusion du serveur d’application la prochaine fois qu’un utilisateur demande la liste.
Arguments
Aucun.
Valeurs renvoyées
Aucune.
MMDB.popupConnection()
Disponibilité
Dreamweaver MX.
Description
Cette fonction appelle une boîte de dialogue de connexion. Cette fonction a les trois signatures suivantes :
Si la liste d’arguments ne comporte que dialogFileName (une chaîne), popupConnection()
provoque le lancement de la boîte de dialogue de connexion dans Dreamweaver, pour que vous
puissiez y définir une nouvelle connexion.
Si la liste d’arguments ne comporte que connRec (une référence de connexion),
popupConnection() provoque le lancement de la boîte de dialogue de connexion en mode
d’édition dans Dreamweaver, pour que vous puissiez y modifier la connexion nommée. Dans
ce mode, la zone de texte du nom s’affiche en grisé.
Si la liste d’arguments ne comporte que connRec et la valeur booléenne bDuplicate,
popupConnection() provoque le lancement de la boîte de dialogue en mode dupliqué dans
Dreamweaver. Dans ce mode, la zone de texte du nom s’affiche en grisé et les propriétés
restantes sont copiées pour définir une connexion dupliquée.
Arguments
dialogFileName
ou
connRec
ou
connrec, bDuplicate
Fonctions de connexion à une base de données 87
dialogFileName est une chaîne qui contient le nom d’un fichier HTML résidant dans le
dossier Configuration/Connections/server-model. Ce fichier HTML définit la boîte de dialogue
qui crée une connexion. Il doit implémenter trois fonctions API JavaScript :
findConnection(), inspectConnection() et applyConnection(). En général, vous créez
un fichier JavaScript qui implémente ces fonctions, puis vous intégrez ce fichier au fichier
HTML. Pour plus d’informations sur la création d’une connexion, voir API de connectivité à
une base de données, page 103.
connRec est une référence à un objet de connexion existant.
bDuplicate est une valeur booléenne.
Valeurs renvoyées
Aucune. La boîte de dialogue de connexion définie s’ouvre.
MMDB.setRDSPassword()
Disponibilité
Dreamweaver UltraDev 4.
Description
Définit le mot de passe RDS.
Arguments
password
password est une chaîne contenant le mot de passe RDS.
Valeurs renvoyées
Aucune.
MMDB.setRDSUserName()
Disponibilité
Dreamweaver UltraDev 4.
Description
Définit le nom d’utilisateur RDS.
Arguments
username
L’ a r g u m e n t username est le nom d’un utilisateur RDS valide.
Valeurs renvoyées
Aucune.
MMDB.showColdFusionAdmin()
Disponibilité
Dreamweaver MX.
88 Chapitre 7 : API de base de données
Description
Affiche la boîte de dialogue ColdFusion Administrator.
Arguments
Aucun.
Valeurs renvoyées
Aucune. La boîte de dialogue ColdFusion Administrator apparaît.
MMDB.showConnectionMgrDialog()
Disponibilité
Dreamweaver UltraDev 1.
Description
Affiche la boîte de dialogue Gestionnaire de connexions.
Arguments
Aucune.
Valeurs renvoyées
Aucune. La boîte de dialogue Gestionnaire de connexions s’affiche.
MMDB.showOdbcDialog()
Disponibilité
Dreamweaver UltraDev 4 (Windows uniquement).
Description
Affiche la boîte de dialogue d’administration ODBC système ou Administrateur de source de données ODBC.
Arguments
Aucun.
Valeurs renvoyées
Aucune. La boîte de dialogue d’administration ODBC système ou Administrateur de source de données ODBC apparaît.
MMDB.showRdsUserDialog()
Disponibilité
Dreamweaver UltraDev 4.
Description
Affiche la boîte de dialogue demandant le nom d’utilisateur et du mot de passe RDS.
Fonctions de connexion à une base de données 89
Arguments
username, password
L’ a r g u m e n t username est le nom d’utilisateur initial.
password est le mot de passe initial.
Valeurs renvoyées
Objet contenant les nouvelles valeurs dans les propriétés username et password. Si l’une des propriétés n’est pas définie, ceci indique que l’utilisateur a annulé la boîte de dialogue.
MMDB.showRestrictDialog()
Disponibilité
Dreamweaver UltraDev 4.
Description
Affiche la boîte de dialogue Restreindre.
Arguments
catalog, schema
catalog est la valeur de catalogue initiale.
L’ a r g u m e n t schema est la valeur de schéma initiale.
Valeurs renvoyées
Objet contenant les nouvelles valeurs dans les propriétés catalog et schema. Si l’une des propriétés n’est pas définie, ceci indique que l’utilisateur a annulé la boîte de dialogue.
MMDB.testConnection()
Disponibilité
Dreamweaver UltraDev 4.
Description
Teste les paramètres de connexion. Affiche une boîte de dialogue modale qui décrit les résultats.
Arguments
serverPropertiesArray
Cette fonction attend un seul argument, un objet de tableau contenant les valeurs de la liste suivante adaptées au modèle de serveur en cours. Pour les propriétés qui ne s’appliquent pas à la connexion testée, laissez-les vides (
"").
type indique, lorsque useHTTP est une valeur false, quelle DLL utiliser pour se connecter à
une base de données au moment de la conception, pour tester les paramètres de connexion.
string est la chaîne de connexion ADO ou l’URL JDBC.
dsn est le nom de la source de données.
driver est le pilote JDBC.
username est le nom d’utilisateur.
L’ a r g u m e n t password est le mot de passe.
90 Chapitre 7 : API de base de données
L’ a r g u m e n t useHTTP est une valeur booléenne. Une valeur true spécifie que Dreamweaver doit
utiliser une connexion HTTP au moment de la conception ; dans le cas contraire,
Dreamweaver utilise une DLL.
Valeurs renvoyées
Valeur booléenne : true si le test de connexion réussit ; false dans le cas contraire.

Fonctions d’accès à la base de données

Les fonctions d’accès à la base de données vous permettent de faire une recherche dans la base de données. Pour l’ensemble des fonctions qui gèrent une connexion à une base de données, voir
Fonctions de connexion à une base de données, page 78.
La liste suivante décrit certains des arguments communs à toutes les fonctions disponibles :
La plupart des fonctions d’accès à une base de données utilisent un nom de connexion comme
argument. Pour obtenir une liste des noms de connexion valides, utilisez le Gestionnaire de
connexions ou la fonction
MMDB.getConnectionList(). Cette dernière vous permet d’obtenir
par programmation une liste de tous les noms de connexion.
Les procédures stockées exigent souvent des paramètres. Il existe deux façons de spécifier des
valeurs de paramètre pour les fonctions d’accès aux bases de données. En premier lieu, vous
pouvez fournir un tableau de valeurs de paramètre (
que des valeurs de paramètre, celles-ci doivent être dans l’ordre dans lequel la procédure stockée
les demande. Spécifiez ensuite les valeurs de paramètre pour fournir un tableau des noms de
paramètre (
paramNameArray). Vous pouvez utiliser la fonction MMDB.getSPParamsAsString()
pour obtenir les paramètres de la procédure stockée. Si vous fournissez des noms de paramètres,
les valeurs spécifiées dans
été spécifiés dans
paramNameArray.
paramValuesArray doivent être dans l’ordre dans lequel les noms ont
paramValuesArray). Si vous ne spécifiez
MMDB.getColumnAndTypeList()
Disponibilité
Dreamweaver UltraDev 1.
Description
Extrait une liste de colonnes et leurs types respectifs d’une déclaration SQL SELECT.
Arguments
connName, déclaration
connName est un nom de connexion spécifié dans le Gestionnaire de connexions. Il identifie la
chaîne de connexion que Dreamweaver doit utiliser pour effectuer une connexion de base de
données à une source de données active.
statement est la déclaration SQL SELECT à exécuter.
Renvoie
Un tableau de chaînes qui représente une liste de colonnes (et leur type) qui correspondent à la déclaration pas pu s’établir.
SELECT, ou bien une erreur si la déclaration SQL n’est pas valide ou si la connexion n’a
Fonctions d’accès à la base de données 91
Exemple
Le code var columnArray = MMDB.getColumnAndTypeList("EmpDB","Select * from
Employees")
columnArray[0] = "EmpName" columnArray[1] = "varchar" columnArray[2] = "EmpFirstName" columnArray[3] = "varchar" columnArray[4] = "Age" columnArray[5] = "integer"
renvoie le tableau de chaînes suivant :
MMDB.getColumnList()
Disponibilité
Dreamweaver UltraDev 1.
Description
Extrait la liste de colonnes d’une déclaration SQL SELECT exécutée.
Arguments
connName, déclaration
connName est un nom de connexion spécifié dans le Gestionnaire de connexions. Il identifie la
chaîne de connexion que Dreamweaver doit utiliser pour connecter la base de données à une
source de données active.
statement est la déclaration SQL SELECT à exécuter.
Renvoie
Un tableau de chaînes qui représente une liste de colonnes correspondant à la déclaration SELECT, ou une erreur si la déclaration SQL n’est pas valide ou si la connexion n’a pas pu s’établir.
Exemple
Le code var columnArray = MMDB.getColumnList("EmpDB","Select * from Employees") renvoie le tableau de chaînes suivant :
columnArray[0] = "EmpName" columnArray[1] = "EmpFirstName" columnArray[2] = "Age"
MMDB.getColumns()
Disponibilité
Dreamweaver MX, arguments mis à jour dans MX 2004.
Description
Renvoie un tableau d’objets qui décrivent les colonnes du tableau spécifié.
Arguments
connName, tableName
L’ a r g u m e n t connName est le nom de la connexion. Cette valeur identifie la connexion qui
contient la chaîne que Dreamweaver doit utiliser pour établir une connexion de base de
données à une source de données active.
92 Chapitre 7 : API de base de données
tableName est le tableau à interroger.
Renvoie
Un tableau d ’objets, à raison d’un objet par colonne. Chaque objet définit les trois propriétés suivantes pour la colonne à laquelle il est associé.
Property Name Description
name
datatype
definedsize
nullable Indique si la colonne peut contenir des valeurs
Exemple
L’exemple suivant utilise MMDB.getColumns() pour définir la valeur du texte de l’info bulle :
var columnNameObjs = MMDB.getColumns(connName,tableName); var databaseType = MMDB.getDatabaseType(connName);
for (i = 0; i < columnNameObjs.length; i++)
{
var columnObj = columnNameObjs[i]; var columnName = columnObj.name; var typename = columnObj.datatype; if (dwscripts.isNumber(typename)) {
// it already is a num typename = dwscripts.getDBColumnTypeAsString(typename, databaseType);
}
Nom de la colonne (par exemple, price)
Type de données de la colonne (par exemple, small money)
Taille définie de la colonne (par exemple, 8)
null
var tooltiptext = typename;
}
MMDB.getColumnsOfTable()
Disponibilité
Dreamweaver UltraDev 1.
Description
Extrait une liste de toutes les colonnes du tableau spécifié.
Arguments
connName, tableName
connName est un nom de connexion spécifié dans le Gestionnaire de connexions. Il identifie la
chaîne de connexion que Dreamweaver doit utiliser pour connecter la base de données à une
source de données active.
L’ a r g u m e n t tableName est le nom d’une table de la base de données désignée par l’argument
connName.
Renvoie
Un tableau de chaînes dont chaque chaîne est le nom d’une colonne du tableau.
Fonctions d’accès à la base de données 93
Exemple
L’instruction MMDB.getColumnsOfTable ("EmpDB","Employees"); renvoie les chaînes suivantes :
["EmpID", "FirstName", "LastName"]
MMDB.getPrimaryKeys()
Disponibilité
Dreamweaver MX.
Description
Renvoie les noms de colonne qui s’associent pour former la clé primaire de la table nommée. Une clé primaire sert d’identificateur unique pour une ligne de base de données et se compose d’une colonne minimum.
Arguments
connName
, tableName
connName est un nom de connexion spécifié dans le Gestionnaire de connexions. Il identifie la
chaîne de connexion que Dreamweaver doit utiliser pour connecter la base de données à une
source de données active.
L’ a r g u m e n t tableName est le nom de la table pour laquelle vous souhaitez restituer l’ensemble
des colonnes comprenant la clé primaire de cette table.
Valeurs renvoyées
Tableau de chaînes. Le tableau contient une chaîne pour chaque colonne comprenant la clé primaire.
Exemple
L’exemple suivant renvoie la clé primaire de la table.
var connName = componentRec.parent.parent.parent.name; var tableName = componentRec.name; var primaryKeys = MMDB.getPrimaryKeys(connName,tableName);
MMDB.getProcedures()
Disponibilité
Dreamweaver MX.
Description
Renvoie un tableau d’objets de procédure associés à une connexion nommée.
Arguments
connName
connName est un nom de connexion spécifié dans le Gestionnaire de connexions. Il identifie la
chaîne de connexion que Dreamweaver doit utiliser pour connecter la base de données à une
source de données active.
94 Chapitre 7 : API de base de données
Valeurs renvoyées
Un tableau d’objets de procédure dans lequel chaque objet de procédure a les trois propriétés suivantes :
Nom de propriété Description
schéma*
catalogue
procedure
* Dreamweaver établit également une connexion et regroupe toutes les tables dans la base de données chaque
fois que vous modifiez un jeu d’enregistrements. Si la base de données comporte un nombre important de tables, Dreamweaver peut prendre du temps pour les récupérer sur certains systèmes. Si votre base de données contient un schéma ou un catalogue, vous pouvez les utiliser pour restreindre le nombre d’éléments de la base de données extraits par Dreamweaver au moment de la conception. Pour commencer, créez un schéma ou un catalogue dans votre application de base de données pour pouvoir ensuite l’appliquer dans Dreamweaver. Reportez-vous à la documentation sur votre base de données ou consultez votre administrateur système.
Nom du schéma associé à l’objet. Cette propriété identifie l’utilisateur associé à la procédure stockée dans la base de données SQL et à laquelle accède
getProcedures(). La base de données à laquelle accède cette
fonction dépend du type de connexion.
Pour les connexions ODBC, la source de données ODBC
définit la base de données. Le DSN est spécifié par la propriété
dsn dans l’objet de connexion (connName) que vous transmettez
à
getProcedures().
Pour les connexion à la BD OLE, la chaîne de connexion donne
un nom à la base de données.
Nom du catalogue associé à l’objet (qualificatif de propriétaire). La valeur de la propriété
catalog est définie par un attribut du
pilote de la BD OLE. Cet attribut du pilote définit une
user.database par défaut à utiliser lorsque la chaîne de
connexion à la BD OLE n’indique pas de base de données.
Nom de la procédure.
Exemple
Le code suivant extrait une liste de procédures :
var procObjects = MMDB.getProcedures(connectionName); for (i = 0; i < procObjects.length; i++) { var thisProcedure = procObjects[i] thisSchema = Trim(thisProcedure.schema) if (thisSchema.length == 0) {
thisSchema = Trim(thisProcedure.catalog) } if (thisSchema.length > 0) {
thisSchema += "." }
var procName = String(thisSchema + thisProcedure.procedure); }
Fonctions d’accès à la base de données 95
MMDB.getSPColumnList()
Disponibilité
Dreamweaver UltraDev 1.
Description
Cette fonction extrait une liste de colonnes de jeu de résultats générée par un appel à la procédure stockée spécifiée.
Arguments
connName, statement, paramValuesArray
connName est un nom de connexion spécifié dans le Gestionnaire de connexions. Il identifie la
chaîne de connexion que Dreamweaver doit utiliser pour connecter la base de données à une
source de données active.
L’ a r g u m e n t statement est le nom de la procédure stockée qui renvoie le jeu de résultats
lorsqu’elle est exécutée.
L’ a r g u m e n t paramValuesArray est un tableau contenant une liste de valeurs tests de paramètre
au moment de la conception. Spécifiez les valeurs de paramètre dans l’ordre attendu par la
procédure stockée. Vous pouvez utiliser la fonction
obtenir les paramètres de la procédure stockée.
Valeurs renvoyées
Tableau de chaînes représentant la liste des colonnes. Cette fonction renvoie une erreur lorsque l’instruction SQL ou la chaîne de connexion est incorrecte.
Exemple
Le code suivant peut renvoyer une liste de colonnes de jeux de résultats générées à partir de la procédure stockée exécutée,
var paramValueArray = new Array("2/1/2000", "50000") var columnArray = MMDB.getSPColumnList("EmpDB", ¬ "getNewEmployeesMakingAtLeast", paramValueArray)
getNewEmployeesMakingAtLeast :
Les valeurs suivantes renvoient :
columnArray[0] = "EmpID", columnArray[1] = "LastName", ¬ columnArray[2] ="startDate", columnArray[3] = "salary"
MMDB.getSPParamsAsString() pour
MMDB.getSPColumnListNamedParams()
Disponibilité
Dreamweaver UltraDev 1.
Description
Cette fonction extrait une liste de colonnes de jeu de résultats générée par un appel à la procédure stockée spécifiée.
96 Chapitre 7 : API de base de données
Arguments
connName, statement, paramNameArray, paramValuesArray
connName est un nom de connexion spécifié dans le Gestionnaire de connexions. Il identifie la
chaîne de connexion que Dreamweaver doit utiliser pour connecter la base de données à une
source de données active.
L’ a r g u m e n t statement est le nom de la procédure stockée qui renvoie le jeu de résultats
lorsqu’elle est exécutée.
L’ a r g u m e n t paramNameArray est un tableau contenant une liste de noms de paramètres. Vous
pouvez utiliser la fonction
procédure stockée.
MMDB.getSPParamsAsString() pour obtenir les paramètres de la
L’ a r g u m e n t paramValuesArray est un tableau contenant une liste de valeurs tests de paramètre
au moment de la conception. Vous pouvez spécifier si oui ou non la procédure requiert des
paramètres pendant l’exécution. Si vous avez fourni des noms de paramètre dans
paramNameArray, spécifiez les valeurs de paramètre dans l’ordre dans lequel leurs noms
apparaissent dans
valeurs dans l’ordre attendu par la procédure stockée.
Valeurs renvoyées
Tableau de chaînes représentant la liste des colonnes. Cette fonction renvoie une erreur lorsque l’instruction SQL ou la chaîne de connexion est incorrecte.
Exemple
Le code suivant peut renvoyer une liste de colonnes de jeux de résultats générées à partir de la procédure stockée exécutée,
var paramNameArray = new Array("startDate", "salary") var paramValueArray = new Array("2/1/2000", "50000") var columnArray = MMDB.getSPColumnListNamedParams("EmpDB", ¬ "getNewEmployeesMakingAtLeast", paramNameArray, paramValueArray)
Les valeurs suivantes renvoient :
columnArray[0] = "EmpID", columnArray[1] = "LastName",¬ columnArray[2] ="startDate", columnArray[3] = "salary"
paramNameArray. Si vous n’avez pas indiqué paramNameArray, spécifiez les
getNewEmployeesMakingAtLeast :
MMDB.getSPParameters()
Disponibilité
Dreamweaver MX.
Description
Renvoie un tableau d’objets de paramètre pour une procédure nommée.
Arguments
connName
, procName
connName est un nom de connexion spécifié dans le Gestionnaire de connexions. Il identifie la
chaîne de connexion que Dreamweaver doit utiliser pour connecter la base de données à une
source de données active.
L’ a r g u m e n t procName est le nom de la procédure.
Fonctions d’accès à la base de données 97
Valeurs renvoyées
Tableau d’objets de paramètre, chacun d’entre eux spécifiant l’ensemble de propriétés suivant :
Nom de la propriété Description
name
datatype
direction
Exemple
Nom du paramètre (par exemple, @@lolimit)
Type de données du paramètre (par exemple, smallmoney)
Direction du paramètre :
1– Le paramètre est utilisé uniquement pour l’entrée. 2– Le paramètre est utilisé uniquement pour la sortie. Dans ce
cas, vous transmettez le paramètre par référence et la méthode place une valeur dedans. Vous pouvez utiliser la valeur une fois la méthode renvoyée.
3– Le paramètre est utilisé pour l’entrée et la sortie. 4– Le paramètre contient une valeur de retour.
L’exemple suivant extrait les objets de paramètre pour la procédure spécifiée et crée une info bulle pour chaque objet qui utilise ses propriétés.
var paramNameObjs = MMDB.getSPParameters(connName,procName); for (i = 0; i < paramNameObjs.length; i++) {
var paramObj = paramNameObjs[i];
var tooltiptext = paramObj.datatype;
tooltiptext+=" ";
tooltiptext+=GetDirString(paramObj.directiontype); }
MMDB.getSPParamsAsString()
Disponibilité
Dreamweaver UltraDev 1.
Description
Extrait une chaîne délimitée par virgules contenant la liste des paramètres pris par la procédure stockée.
Arguments
connName, procName
connName est un nom de connexion spécifié dans le Gestionnaire de connexions. Il identifie la
chaîne de connexion que Dreamweaver doit utiliser pour connecter la base de données à une
source de données active.
L’ a r g u m e n t procName est le nom de la procédure stockée.
Valeurs renvoyées
Chaîne délimitée par virgules contenant la liste des paramètres requis par la procédure stockée. Les noms, la direction et le type de données des paramètres sont inclus, séparés par des points­virgules (;).
98 Chapitre 7 : API de base de données
Exemple
Le code MMDB.getSPParamsAsString ("EmpDB","getNewEmployeesMakingAtLeast") peut renvoyer une chaîne de nom de formulaire
salary;direction:in;datatype:integer
startDate;direction:in;datatype:date,
Dans cet exemple, la procédure stockée getNewEmployeesMakingAtLeast a deux paramètres :
startDate et Salary. Pour startDate, la direction est in et le type de données est date. Pour salary, la direction est in et le type de données est date.
MMDB.getTables()
Disponibilité
Dreamweaver UltraDev 1.
Description
Extrait une liste de toutes les tables définies pour la base de données spécifiée. Chaque objet a trois propriétés :
Arguments
connName
table, schema et catalog.
connName est un nom de connexion spécifié dans le Gestionnaire de connexions. Il identifie la
chaîne de connexion que Dreamweaver doit utiliser pour connecter la base de données à une
source de données active.
Valeurs renvoyées
Un tableau d’objets dans lequel chaque objet a trois propriétés : table, schema et catalog.
Table est le nom de la table. Schema est le nom du schéma qui contient la table. Catalog est le
catalogue qui contient la table.
Exemple
L’instruction MMDB.getTables ("EmpDB"); pourrait produire un tableau de deux objets. Les propriétés du premier objet peuvent ressembler à l’exemple suivant :
object1[table:"Employees", schema:"personnel", catalog:"syscat"]
Les propriétés du deuxième objet peuvent ressembler à l’exemple suivant :
object2[table:"Departments", schema:"demo", catalog:"syscat2"]
MMDB.getViews()
Disponibilité
Dreamweaver UltraDev 4.
Description
Extrait une liste de tous les modes d’affichage définis pour la base de données spécifiée. Chaque objet mode d’affichage a les propriétés
catalog, schema et view.
Fonctions d’accès à la base de données 99
Arguments
connName
connName est un nom de connexion spécifié dans le Gestionnaire de connexions. Il identifie la
chaîne de connexion que Dreamweaver doit utiliser pour connecter la base de données à une
source de données active.
Valeurs renvoyées
Un table d’objets d’affichage dans lequel chaque objet a trois propriétés : catalog, schema et
view. Catalog ou schema permet de restreindre/filtrer le nombre de modes d’affichage rattachés à
un nom de schéma individuel ou à un nom de catalogue défini comme faisant partie des informations de connexion.
Exemple
L’exemple suivant renvoie les modes pour une valeur de connexion donnée,
CONN_LIST.getValue() :
var viewObjects = MMDB.getViews(CONN_LIST.getValue()) for (i = 0; i < viewObjects.length; i++) {
thisView = viewObjects[i]
thisSchema = Trim(thisView.schema)
if (thisSchema.length == 0)
{
thisSchema = Trim(thisView.catalog) } if (thisSchema.length > 0) {
thisSchema += "." } views.push(String(thisSchema + thisView.view))
}
MMDB.showResultset()
Disponibilité
Dreamweaver UltraDev 1.
Description
Affiche une boîte de dialogue contenant les résultats de l’exécution de la déclaration SQL spécifiée. La boîte de dialogue contient une grille dont l’en-tête reflète les informations de colonnes qui décrivent le jeu de résultats. Si la chaîne de connexion ou l’instruction SQL n’est pas valide, une erreur apparaît. Cette fonction valide l’instruction SQL.
Arguments
connName, SQLstatement
connName est un nom de connexion spécifié dans le Gestionnaire de connexions. Il identifie la
chaîne de connexion que Dreamweaver doit utiliser pour connecter la base de données à une source de données active.
L’ a r g u m e n t SQLstatement désigne l’instruction SQL SELECT.
100 Chapitre 7 : API de base de données
Loading...