Guide de référence ActionScript® 3.0 pour la plate-forme Adobe® Flash®
Accueil  |  Masquer la liste des packages et des classes |  Packages  |  Classes  |  Nouveautés  |  Index  |  Annexes  |  Pourquoi existe-t-il du contenu en anglais ?
Filtres : AIR 30.0 et versions antérieures, Flash Player 30.0 et versions antérieures, Flash Lite 4
Flex 4.6 et versions antérieures, Flash Pro CS6 et versions antérieures
Masquer les filtres
flash.desktop 

NativeDragManager  - AS3

Packagesx

Niveau supérieur
adobe.utils
air.desktop
air.net
air.update
air.update.events
coldfusion.air
coldfusion.air.errors
coldfusion.air.events
coldfusion.service
coldfusion.service.events
coldfusion.service.mxml
com.adobe.acm.solutions.authoring.domain.extensions
com.adobe.acm.solutions.ccr.domain.extensions
com.adobe.consulting.pst.vo
com.adobe.dct.component
com.adobe.dct.component.datadictionary
com.adobe.dct.component.datadictionaryElement
com.adobe.dct.component.dataElementsPanel
com.adobe.dct.component.toolbars
com.adobe.dct.event
com.adobe.dct.exp
com.adobe.dct.model
com.adobe.dct.service
com.adobe.dct.service.provider
com.adobe.dct.transfer
com.adobe.dct.util
com.adobe.dct.view
com.adobe.ep.taskmanagement.domain
com.adobe.ep.taskmanagement.event
com.adobe.ep.taskmanagement.filter
com.adobe.ep.taskmanagement.services
com.adobe.ep.taskmanagement.util
com.adobe.ep.ux.attachmentlist.component
com.adobe.ep.ux.attachmentlist.domain
com.adobe.ep.ux.attachmentlist.domain.events
com.adobe.ep.ux.attachmentlist.domain.renderers
com.adobe.ep.ux.attachmentlist.skin
com.adobe.ep.ux.attachmentlist.skin.renderers
com.adobe.ep.ux.content.event
com.adobe.ep.ux.content.factory
com.adobe.ep.ux.content.handlers
com.adobe.ep.ux.content.managers
com.adobe.ep.ux.content.model.asset
com.adobe.ep.ux.content.model.preview
com.adobe.ep.ux.content.model.relation
com.adobe.ep.ux.content.model.search
com.adobe.ep.ux.content.model.toolbar
com.adobe.ep.ux.content.search
com.adobe.ep.ux.content.services
com.adobe.ep.ux.content.services.load
com.adobe.ep.ux.content.services.permissions
com.adobe.ep.ux.content.services.preview
com.adobe.ep.ux.content.services.providers
com.adobe.ep.ux.content.services.query
com.adobe.ep.ux.content.services.relationships
com.adobe.ep.ux.content.services.search.lccontent
com.adobe.ep.ux.content.services.version
com.adobe.ep.ux.content.view
com.adobe.ep.ux.content.view.components.activate
com.adobe.ep.ux.content.view.components.grid
com.adobe.ep.ux.content.view.components.grid.hover
com.adobe.ep.ux.content.view.components.grid.hover.component
com.adobe.ep.ux.content.view.components.grid.renderers
com.adobe.ep.ux.content.view.components.relationships
com.adobe.ep.ux.content.view.components.review
com.adobe.ep.ux.content.view.components.search.renderers
com.adobe.ep.ux.content.view.components.searchpod
com.adobe.ep.ux.content.view.components.toolbar
com.adobe.ep.ux.content.view.components.toolbar.controlRenderers
com.adobe.ep.ux.content.view.components.version
com.adobe.ep.ux.documentsubmit.component
com.adobe.ep.ux.documentsubmit.domain
com.adobe.ep.ux.documentsubmit.skin
com.adobe.ep.ux.taskaction.component
com.adobe.ep.ux.taskaction.domain
com.adobe.ep.ux.taskaction.domain.events
com.adobe.ep.ux.taskaction.skin
com.adobe.ep.ux.taskdetails.component
com.adobe.ep.ux.taskdetails.domain
com.adobe.ep.ux.taskdetails.skin
com.adobe.ep.ux.tasklist.component
com.adobe.ep.ux.tasklist.domain
com.adobe.ep.ux.tasklist.skin
com.adobe.ep.ux.webdocumentviewer.domain
com.adobe.exm.expression
com.adobe.exm.expression.error
com.adobe.exm.expression.event
com.adobe.exm.expression.impl
com.adobe.fiber.runtime.lib
com.adobe.fiber.services
com.adobe.fiber.services.wrapper
com.adobe.fiber.styles
com.adobe.fiber.util
com.adobe.fiber.valueobjects
com.adobe.gravity.binding
com.adobe.gravity.context
com.adobe.gravity.flex.bundleloader
com.adobe.gravity.flex.progress
com.adobe.gravity.flex.serviceloader
com.adobe.gravity.framework
com.adobe.gravity.init
com.adobe.gravity.service.bundleloader
com.adobe.gravity.service.logging
com.adobe.gravity.service.manifest
com.adobe.gravity.service.progress
com.adobe.gravity.tracker
com.adobe.gravity.ui
com.adobe.gravity.utility
com.adobe.gravity.utility.async
com.adobe.gravity.utility.error
com.adobe.gravity.utility.events
com.adobe.gravity.utility.factory
com.adobe.gravity.utility.flex.async
com.adobe.gravity.utility.logging
com.adobe.gravity.utility.message
com.adobe.gravity.utility.sequence
com.adobe.gravity.utility.url
com.adobe.guides.control
com.adobe.guides.domain
com.adobe.guides.i18n
com.adobe.guides.spark.components.skins
com.adobe.guides.spark.components.skins.mx
com.adobe.guides.spark.headers.components
com.adobe.guides.spark.headers.skins
com.adobe.guides.spark.layouts.components
com.adobe.guides.spark.layouts.skins
com.adobe.guides.spark.navigators.components
com.adobe.guides.spark.navigators.renderers
com.adobe.guides.spark.navigators.skins
com.adobe.guides.spark.util
com.adobe.guides.spark.wrappers.components
com.adobe.guides.spark.wrappers.skins
com.adobe.guides.submit
com.adobe.icc.dc.domain
com.adobe.icc.dc.domain.factory
com.adobe.icc.editors.events
com.adobe.icc.editors.handlers
com.adobe.icc.editors.managers
com.adobe.icc.editors.model
com.adobe.icc.editors.model.config
com.adobe.icc.editors.model.el
com.adobe.icc.editors.model.el.operands
com.adobe.icc.editors.model.el.operators
com.adobe.icc.enum
com.adobe.icc.external.dc
com.adobe.icc.obj
com.adobe.icc.services
com.adobe.icc.services.category
com.adobe.icc.services.config
com.adobe.icc.services.download
com.adobe.icc.services.export
com.adobe.icc.services.external
com.adobe.icc.services.formbridge
com.adobe.icc.services.fragmentlayout
com.adobe.icc.services.layout
com.adobe.icc.services.letter
com.adobe.icc.services.locator
com.adobe.icc.services.module
com.adobe.icc.services.render
com.adobe.icc.services.submit
com.adobe.icc.services.user
com.adobe.icc.token
com.adobe.icc.vo
com.adobe.icc.vo.render
com.adobe.icomm.assetplacement.controller
com.adobe.icomm.assetplacement.controller.utils
com.adobe.icomm.assetplacement.data
com.adobe.icomm.assetplacement.model
com.adobe.livecycle.assetmanager.client
com.adobe.livecycle.assetmanager.client.event
com.adobe.livecycle.assetmanager.client.handler
com.adobe.livecycle.assetmanager.client.managers
com.adobe.livecycle.assetmanager.client.model
com.adobe.livecycle.assetmanager.client.model.cms
com.adobe.livecycle.assetmanager.client.service
com.adobe.livecycle.assetmanager.client.service.search
com.adobe.livecycle.assetmanager.client.service.search.cms
com.adobe.livecycle.assetmanager.client.utils
com.adobe.livecycle.content
com.adobe.livecycle.rca.model
com.adobe.livecycle.rca.model.constant
com.adobe.livecycle.rca.model.document
com.adobe.livecycle.rca.model.participant
com.adobe.livecycle.rca.model.reminder
com.adobe.livecycle.rca.model.stage
com.adobe.livecycle.rca.service
com.adobe.livecycle.rca.service.core
com.adobe.livecycle.rca.service.core.delegate
com.adobe.livecycle.rca.service.process
com.adobe.livecycle.rca.service.process.delegate
com.adobe.livecycle.rca.token
com.adobe.livecycle.ria.security.api
com.adobe.livecycle.ria.security.service
com.adobe.mosaic.layouts
com.adobe.mosaic.layouts.dragAndDrop
com.adobe.mosaic.layouts.interfaces
com.adobe.mosaic.mxml
com.adobe.mosaic.om.constants
com.adobe.mosaic.om.events
com.adobe.mosaic.om.impl
com.adobe.mosaic.om.interfaces
com.adobe.mosaic.skinning
com.adobe.mosaic.sparklib.editors
com.adobe.mosaic.sparklib.optionMenu
com.adobe.mosaic.sparklib.scrollableMenu
com.adobe.mosaic.sparklib.scrollableMenu.skins
com.adobe.mosaic.sparklib.tabLayout
com.adobe.mosaic.sparklib.tabLayout.events
com.adobe.mosaic.sparklib.tabLayout.layouts
com.adobe.mosaic.sparklib.tabLayout.skins
com.adobe.mosaic.sparklib.text
com.adobe.mosaic.sparklib.util
com.adobe.solutions.acm.authoring.presentation
com.adobe.solutions.acm.authoring.presentation.actionbar
com.adobe.solutions.acm.authoring.presentation.common
com.adobe.solutions.acm.authoring.presentation.events
com.adobe.solutions.acm.authoring.presentation.fragment
com.adobe.solutions.acm.authoring.presentation.letter
com.adobe.solutions.acm.authoring.presentation.letter.data
com.adobe.solutions.acm.authoring.presentation.preview
com.adobe.solutions.acm.authoring.presentation.rte
com.adobe.solutions.acm.ccr.presentation
com.adobe.solutions.acm.ccr.presentation.contentcapture
com.adobe.solutions.acm.ccr.presentation.contentcapture.events
com.adobe.solutions.acm.ccr.presentation.contentcapture.preview
com.adobe.solutions.acm.ccr.presentation.datacapture
com.adobe.solutions.acm.ccr.presentation.datacapture.renderers
com.adobe.solutions.acm.ccr.presentation.pdf
com.adobe.solutions.exm
com.adobe.solutions.exm.authoring
com.adobe.solutions.exm.authoring.components.controls
com.adobe.solutions.exm.authoring.components.toolbars
com.adobe.solutions.exm.authoring.domain
com.adobe.solutions.exm.authoring.domain.expression
com.adobe.solutions.exm.authoring.domain.impl
com.adobe.solutions.exm.authoring.domain.method
com.adobe.solutions.exm.authoring.domain.variable
com.adobe.solutions.exm.authoring.enum
com.adobe.solutions.exm.authoring.events
com.adobe.solutions.exm.authoring.model
com.adobe.solutions.exm.authoring.renderer
com.adobe.solutions.exm.authoring.view
com.adobe.solutions.exm.expression
com.adobe.solutions.exm.impl
com.adobe.solutions.exm.impl.method
com.adobe.solutions.exm.method
com.adobe.solutions.exm.mock
com.adobe.solutions.exm.mock.method
com.adobe.solutions.exm.runtime
com.adobe.solutions.exm.runtime.impl
com.adobe.solutions.exm.variable
com.adobe.solutions.prm.constant
com.adobe.solutions.prm.domain
com.adobe.solutions.prm.domain.factory
com.adobe.solutions.prm.domain.impl
com.adobe.solutions.prm.domain.manager
com.adobe.solutions.prm.presentation.asset
com.adobe.solutions.prm.presentation.constant
com.adobe.solutions.prm.presentation.document
com.adobe.solutions.prm.presentation.event
com.adobe.solutions.prm.presentation.file
com.adobe.solutions.prm.presentation.project
com.adobe.solutions.prm.presentation.team
com.adobe.solutions.prm.presentation.util
com.adobe.solutions.prm.service
com.adobe.solutions.prm.services.impl
com.adobe.solutions.prm.vo
com.adobe.solutions.rca.constant
com.adobe.solutions.rca.domain
com.adobe.solutions.rca.domain.common
com.adobe.solutions.rca.domain.factory
com.adobe.solutions.rca.domain.impl
com.adobe.solutions.rca.domain.impl.manager
com.adobe.solutions.rca.domain.manager
com.adobe.solutions.rca.presentation
com.adobe.solutions.rca.presentation.comment
com.adobe.solutions.rca.presentation.constant
com.adobe.solutions.rca.presentation.event
com.adobe.solutions.rca.presentation.gantt
com.adobe.solutions.rca.presentation.gantt.ruler
com.adobe.solutions.rca.presentation.template
com.adobe.solutions.rca.presentation.template.audit
com.adobe.solutions.rca.presentation.template.definition
com.adobe.solutions.rca.presentation.template.documents
com.adobe.solutions.rca.presentation.template.stages
com.adobe.solutions.rca.presentation.util
com.adobe.solutions.rca.service
com.adobe.solutions.rca.services.impl
com.adobe.solutions.rca.vo
com.adobe.solutions.rca.vo.um
com.adobe.viewsource
fl.accessibility
fl.containers
fl.controls
fl.controls.dataGridClasses
fl.controls.listClasses
fl.controls.progressBarClasses
fl.core
fl.data
fl.display
fl.events
fl.ik
fl.lang
fl.livepreview
fl.managers
fl.motion
fl.motion.easing
fl.rsl
fl.text
fl.transitions
fl.transitions.easing
fl.video
flash.accessibility
flash.concurrent
flash.crypto
flash.data
flash.desktop
flash.display
flash.display3D
flash.display3D.textures
flash.errors
flash.events
flash.external
flash.filesystem
flash.filters
flash.geom
flash.globalization
flash.html
flash.media
flash.net
flash.net.dns
flash.net.drm
flash.notifications
flash.permissions
flash.printing
flash.profiler
flash.sampler
flash.security
flash.sensors
flash.system
flash.text
flash.text.engine
flash.text.ime
flash.ui
flash.utils
flash.xml
flashx.textLayout
flashx.textLayout.compose
flashx.textLayout.container
flashx.textLayout.conversion
flashx.textLayout.edit
flashx.textLayout.elements
flashx.textLayout.events
flashx.textLayout.factory
flashx.textLayout.formats
flashx.textLayout.operations
flashx.textLayout.utils
flashx.undo
ga.controls
ga.layouts
ga.model
ga.uiComponents
ga.util
ga.views
ga.wrappers
lc.foundation
lc.foundation.domain
lc.foundation.events
lc.foundation.ui
lc.foundation.util
lc.preloader
lc.procmgmt
lc.procmgmt.commands
lc.procmgmt.domain
lc.procmgmt.events
lc.procmgmt.formbridge
lc.procmgmt.impl
lc.procmgmt.ui.attachments
lc.procmgmt.ui.controls
lc.procmgmt.ui.controls.card
lc.procmgmt.ui.controls.renderer
lc.procmgmt.ui.help
lc.procmgmt.ui.layout
lc.procmgmt.ui.presentationmodel
lc.procmgmt.ui.process
lc.procmgmt.ui.search
lc.procmgmt.ui.startpoint
lc.procmgmt.ui.task
lc.procmgmt.ui.task.form
lc.procmgmt.ui.task.form.commands
lc.procmgmt.ui.tracking
mx.accessibility
mx.automation
mx.automation.air
mx.automation.delegates
mx.automation.delegates.advancedDataGrid
mx.automation.delegates.charts
mx.automation.delegates.containers
mx.automation.delegates.controls
mx.automation.delegates.controls.dataGridClasses
mx.automation.delegates.controls.fileSystemClasses
mx.automation.delegates.core
mx.automation.delegates.flashflexkit
mx.automation.events
mx.binding
mx.binding.utils
mx.charts
mx.charts.chartClasses
mx.charts.effects
mx.charts.effects.effectClasses
mx.charts.events
mx.charts.renderers
mx.charts.series
mx.charts.series.items
mx.charts.series.renderData
mx.charts.styles
mx.collections
mx.collections.errors
mx.containers
mx.containers.accordionClasses
mx.containers.dividedBoxClasses
mx.containers.errors
mx.containers.utilityClasses
mx.controls
mx.controls.advancedDataGridClasses
mx.controls.dataGridClasses
mx.controls.listClasses
mx.controls.menuClasses
mx.controls.olapDataGridClasses
mx.controls.scrollClasses
mx.controls.sliderClasses
mx.controls.textClasses
mx.controls.treeClasses
mx.controls.videoClasses
mx.core
mx.core.windowClasses
mx.data
mx.data.crypto
mx.data.errors
mx.data.events
mx.data.messages
mx.data.mxml
mx.data.offline.errors
mx.data.utils
mx.effects
mx.effects.easing
mx.effects.effectClasses
mx.events
mx.filters
mx.flash
mx.formatters
mx.geom
mx.graphics
mx.graphics.codec
mx.graphics.shaderClasses
mx.logging
mx.logging.errors
mx.logging.targets
mx.managers
mx.messaging
mx.messaging.channels
mx.messaging.config
mx.messaging.errors
mx.messaging.events
mx.messaging.management
mx.messaging.messages
mx.modules
mx.netmon
mx.olap
mx.olap.aggregators
mx.preloaders
mx.printing
mx.resources
mx.rpc
mx.rpc.events
mx.rpc.http
mx.rpc.http.mxml
mx.rpc.livecycle
mx.rpc.mxml
mx.rpc.remoting
mx.rpc.remoting.mxml
mx.rpc.soap
mx.rpc.soap.mxml
mx.rpc.wsdl
mx.rpc.xml
mx.skins
mx.skins.halo
mx.skins.spark
mx.skins.wireframe
mx.skins.wireframe.windowChrome
mx.states
mx.styles
mx.utils
mx.validators
org.osmf.containers
org.osmf.display
org.osmf.elements
org.osmf.events
org.osmf.layout
org.osmf.logging
org.osmf.media
org.osmf.metadata
org.osmf.net
org.osmf.net.dvr
org.osmf.net.httpstreaming
org.osmf.net.metrics
org.osmf.net.qos
org.osmf.net.rtmpstreaming
org.osmf.net.rules
org.osmf.traits
org.osmf.utils
spark.accessibility
spark.automation.delegates
spark.automation.delegates.components
spark.automation.delegates.components.gridClasses
spark.automation.delegates.components.mediaClasses
spark.automation.delegates.components.supportClasses
spark.automation.delegates.skins.spark
spark.automation.events
spark.collections
spark.components
spark.components.calendarClasses
spark.components.gridClasses
spark.components.mediaClasses
spark.components.supportClasses
spark.components.windowClasses
spark.core
spark.effects
spark.effects.animation
spark.effects.easing
spark.effects.interpolation
spark.effects.supportClasses
spark.events
spark.filters
spark.formatters
spark.formatters.supportClasses
spark.globalization
spark.globalization.supportClasses
spark.layouts
spark.layouts.supportClasses
spark.managers
spark.modules
spark.preloaders
spark.primitives
spark.primitives.supportClasses
spark.skins
spark.skins.mobile
spark.skins.mobile.supportClasses
spark.skins.spark
spark.skins.spark.mediaClasses.fullScreen
spark.skins.spark.mediaClasses.normal
spark.skins.spark.windowChrome
spark.skins.wireframe
spark.skins.wireframe.mediaClasses
spark.skins.wireframe.mediaClasses.fullScreen
spark.transitions
spark.utils
spark.validators
spark.validators.supportClasses
xd.core.axm.enterprise.view.components
xd.core.axm.enterprise.view.skins
xd.core.axm.view.components
xd.core.axm.view.components.support

Eléments du langage

Constantes globales
Fonctions globales
Opérateurs
Instructions, mots clés et directives
Types spéciaux

Annexes

Nouveautés
Erreurs de compilation
Avertissements du compilateur
Erreurs d’exécution
Migration vers ActionScript 3
Jeux de caractères pris en charge
Balises MXML uniquement
Eléments XML de mouvement
Balises Timed Text
Liste des éléments déconseillés
Constantes d’implémentation d’accessibilité
Utilisation des exemples de code ActionScript
Informations juridiques
Packageflash.desktop
Classepublic class NativeDragManager
HéritageNativeDragManager Inheritance Object

Versions du moteur d’exécution: AIR 1.0

La classe NativeDragManager coordonne les opérations de glisser-déposer. L’API glisser-déposer native permet à l’utilisateur de faire glisser des données d’une application vers le système d’exploitation natif, d’une application AIR à une autre ou entre des composants d’une même application.

Les types de données suivants peuvent être transférés :

  • Images bitmap
  • Fichiers
  • Texte
  • Chaînes URL
  • Objets sérialisés
  • Références d’objet (valides uniquement dans l’application d’origine)

Remarque : tous les membres NativeDragManager sont statiques. Il n’est pas nécessaire de créer une occurrence de cette classe.

Une opération de glisser-déposer est un geste de l’interface utilisateur qui commence lorsque l’utilisateur clique sur un élément visible et le fait glisser vers un autre emplacement. Pendant l’action de déplacement, les objets interactifs de la liste d’affichage distribuent des événements de déplacement natifs tout au long du déplacement à travers la fenêtre de l’application AIR. Des gestionnaires de ces événements peuvent appeler les méthodes de la classe NativeDragManager pour indiquer si l’élément déplacé peut être déposé sur un objet. En réponse, la classe NativeDragManager change le pointeur de la souris pour prévenir l’utilisateur.

Prise en charge du profil AIR : cette fonctionnalité n’est pas prise en charge sur les périphériques AIR pour TV. En outre, elle n’est pas prise en charge sur tous les périphériques mobiles. Vous pouvez tester la prise en charge lors de l’exécution à l’aide de la propriété NativeDragManager.isSupported. Voir Prise en charge du profil AIR pour plus d’informations sur la prise en charge de l’API dans plusieurs profils.

Actions de déplacement

Les gestes de glisser-déposer sont généralement utilisés pour trois types d’opérations appelées actions. Comme la signification de ces actions dépend du contexte de l’application, le moteur d’exécution n’impose pas un comportement particulier par rapport à ces actions. Toutefois, une implémentation appropriée des actions améliore la convivialité de votre application pour l’utilisateur.

Les actions possibles sont :

  • Copie : une copie des données est faite, sans que l’original n’en soit affecté (lors du déplacement d’objets au sein d’une application, faites attention à copier l’objet original lui-même plutôt que sa référence).
  • Déplacement : les données sont déplacées du contexte d’origine vers le contexte défini par la cible visée, par exemple lors du déplacement d’un élément d’une liste à une autre.
  • Lien : une référence ou un raccourci des données d’origine est créé, l’élément lui-même demeurant dans son contexte original.

Les actions autorisées pour un geste de déplacement peuvent être définies en fournissant un paramètre allowedActions dans l’appel NativeDragManager.doDrag() qui lance l’opération de déplacement. Si aucun paramètre allowedActions n’est fourni, toutes les actions sont autorisées. Les cibles de déplacement potentielles peuvent vérifier les actions autorisées à l’aide de la propriété allowedActions d’un objet NativeDragEvent, et ne doivent pas accepter de dépôt autorisant uniquement des actions incompatibles (cela n’est toutefois pas imposé par le moteur d’exécution).

Si la cible de dépôt n’implémente qu’une seule action, l’objet peut définir la propriété dropAction de NativeDragManager dans les gestionnaires des événements nativeDragEnter et nativeDragOver. La définition de la propriété avant le dépôt permet au gestionnaire de glissement d’actualiser le pointeur de la souris pour indiquer l’action prise en charge et empêcher l’utilisateur de choisir une action incompatible avec les touches de modification. Si l’action spécifiée ne correspond pas à l’une des actions autorisées, le dépôt n’est pas autorisé, même si la cible appelle la méthode acceptDrop().

Lorsqu’un dépôt est accepté, une cible de dépôt potentielle doit spécifier l’action choisie en définissant la propriété NativeDragManager.dropAction en réponse à l’événement nativeDragDrop. Cette action est signalée à l’objet d’affichage d’origine dans l’événement nativeDragComplete. Lorsque aucune action n’est définie par la cible de dépôt, une action par défaut est choisie parmi les actions autorisées dans cet ordre de priorité : copie, déplacement, lien. L’objet d’origine est responsable de la mise à jour de son état interne en réponse à l’action choisie.

Les constantes de chaîne des noms d’action sont définies dans la classe NativeDragActions.

Séquence des événements

Le geste de déplacement commence par un appel à la méthode NativeDragManager.doDrag() à l’intérieur d’un gestionnaire d’événement mouseDown ou mouseMove et suit la séquence d’événements suivante en réponse aux actions de l’utilisateur :

  • Evénement nativeDragStart : lorsque la méthode NativeDragManager.doDrag() est appelée, l’objet interactif transmis sous forme de paramètre à la méthode devient l’objet initiateur et distribue un événement nativeDragStart.
  • Evénement nativeDragUpdate : pendant que le déplacement se poursuit, l’objet initiateur distribue continuellement des événements nativeDragUpdate.
  • Evénements nativeDragEnter, nativeDragOver : lorsqu’un geste de déplacement survole un objet interactif, ce dernier déclenche un événement nativeDragEnter. Tant que le geste de déplacement survole l’objet interactif, celui-ci déclenche continuellement des événements nativeDragOver. En réponse à l’un de ces événements, l’objet qui sert de cible de dépôt potentielle doit vérifier les propriétés de l’objet d’événement pour savoir s’il peut accepter le dépôt. Si le format des données et les actions autorisées sont appropriés, le gestionnaire de ces événements doit appeler la méthode NativeDragManager.acceptDrop(), en transmettant une référence à l’objet d’affichage servant de cible de glissement (généralement l’objet qui a déclenché l’événement nativeDragEnter ou nativeDragOver). L’utilisateur peut alors déposer l’élément déplacé sur sa cible.
  • Evénement nativeDragExit : lorsque le geste de déplacement quitte un objet interactif, ce dernier déclenche un événement nativeDragExit. Si l’objet a été désigné comme la cible de dépôt par un appel précédent à la méthode NativeDragManager.acceptDrop(), cet appel n’est plus valide et la méthode acceptDrop() doit être appelée de nouveau si le geste revient survoler l’objet interactif.
  • Evénement nativeDragDrop : l’objet d’affichage cible déclenche un événement nativeDragDrop lorsque l’utilisateur relâche le bouton de sa souris sur l’objet. Le gestionnaire de cet événement peut accéder aux données de la propriété transferable de l’objet d’événement et doit définir la propriété NativeDragManager.dropAction pour signaler l’action que doit effectuer l’objet initiateur.
  • Evénement nativeDragComplete : lorsque l’utilisateur relâche le bouton de la souris à la fin du déplacement, l’objet initiateur déclenche un événement nativeDragComplete (que le dépôt lui-même ait été consommé ou non). Le gestionnaire de cet événement peut vérifier la propriété dropAction de l’objet d’événement pour savoir quelle modification, le cas échéant, doit être apportée à son état de données interne, telle que la suppression d’un élément sorti d’une liste. Si dropAction est NativeDragActions.NONE, l’élément déplacé n’a pas été déposé sur une cible qualifiée.

Gestes entre applications

Lorsqu’un geste de déplacement entre dans une fenêtre d’application AIR à partir d’une application non AIR, aucun objet initiateur ne déclenche l’événement nativeDragStart ou nativeDragComplete. Autrement, les événements déclenchés au cours du geste suivent le même schéma que dans un geste commençant et se terminant au sein de la même application AIR.

Lorsqu’un geste de déplacement quitte la fenêtre d’une application AIR, aucun objet cible ne déclenche les événements nativeDragEnter, nativeDragOver ou nativeDragDrop. L’objet initiateur déclenche toujours un événement nativeDragComplete, qui signale l’action de déplacement définie par le système d’exploitation natif (ou aucune si le dépôt n’a pas été accepté).

Lorsqu’un geste de déplacement passe d’une application AIR à une autre, les objets d’affichage initiateur et cible déclenchent des événements dans leurs applications respectives, comme d’habitude.

Transfert des informations

Les données transférées au cours d’un geste de glisser-déposer sont renfermées dans un objet Clipboard. Cet objet de données est ajouté à l’opération de déplacement avec la méthode NativeDragManager.doDrag() à l’origine du geste. Les cibles de dépôt potentielles peuvent accéder à l’objet Clipboard par l’intermédiaire de la propriété clipboard de l’objet d’événement de déplacement natif. Après le démarrage d’une opération de déplacement, l’objet Clipboard ne peut plus être accédé que dans le gestionnaire d’un événement NativeDragEvent. Tout autre tentative d’accès à l’objet génère une erreur à l’exécution.

Considérations de sécurité

Les sandbox de sécurité des objets initiateur et cible potentielle déterminent comment accéder aux données déplacées. Si les deux objets se trouvent dans le même sandbox, tout objet NativeDragEvent peut alors accéder aux données. Toutefois, si les objets initiateur et cible potentielle sont dans des sandbox différents, les données ne sont accessibles que dans le sandbox cible à l’intérieur du gestionnaire de l’événement nativeDragDrop. D’autres gestionnaires d’événement de déplacement natifs peuvent toujours accéder à l’objet Clipboard référencé dans la propriété clipboard de l’événement pour identifier les formats de données disponibles, mais un appel à la méthode clipboard.getData() génère une erreur de sécurité.

Plus d’exemples

Eléments de l’API associés



Propriétés publiques
 PropriétéDéfini par
 Inheritedconstructor : Object
Référence à l’objet de classe ou à la fonction constructeur d’une occurrence donnée d’un objet.
Object
      dragInitiator : InteractiveObject
[statique] [lecture seule] Objet interactif transmis à l’appel NativeDragManager.doDrag() à l’origine de l’opération de déplacement.
NativeDragManager
      dropAction : String
[statique] Action de déplacement définie par la cible de dépôt.
NativeDragManager
      isDragging : Boolean
[statique] [lecture seule] Indique si une opération de déplacement est actuellement en cours.
NativeDragManager
      isSupported : Boolean
[statique] [lecture seule] La propriété isSupported est définie sur true si la classe NativeDragManager est prise en charge sur la plate-forme actuelle ; dans le cas contraire, elle est définie sur false.
NativeDragManager
Méthodes publiques
 MéthodeDéfini par
  
[statique] Indique à l’objet NativeDragManager que l’objet interactif cible spécifié peut accepter un dépôt correspondant à l’événement de déplacement en cours.
NativeDragManager
  
    doDrag(dragInitiator:InteractiveObject, clipboard:Clipboard, dragImage:BitmapData = null, offset:Point = null, allowedActions:NativeDragOptions = null):void
[statique] Commence une opération de glisser-déposer.
NativeDragManager
 Inherited
Indique si la propriété spécifiée d’un objet est définie.
Object
 Inherited
Indique si une occurrence de la classe Object figure dans la chaîne de prototype de l’objet spécifié en tant que paramètre.
Object
 Inherited
Indique si la propriété spécifiée existe et est énumérable.
Object
 Inherited
Définit la disponibilité d’une propriété dynamique pour les opérations en boucle.
Object
 Inherited
Renvoie la représentation de chaîne de cet objet, formatée selon les paramètres régionaux en vigueur.
Object
 Inherited
Renvoie la représentation sous forme de chaîne de l’objet spécifié.
Object
 Inherited
Renvoie la valeur primitive de l’objet spécifié.
Object
Détails de la propriété
    

dragInitiator

propriété
dragInitiator:InteractiveObject  [lecture seule]

Versions du moteur d’exécution: AIR 1.0

Objet interactif transmis à l’appel NativeDragManager.doDrag() à l’origine de l’opération de déplacement.



Implémentation
    public static function get dragInitiator():InteractiveObject
    

dropAction

propriété 
dropAction:String

Versions du moteur d’exécution: AIR 1.0

Action de déplacement définie par la cible de dépôt.

La propriété dropAction doit être définie dans le gestionnaire pour l’événement nativeDragDrop. Si la propriété dropAction n’est pas définie avant nativeDragComplete, NativeDragManager définit automatiquement la valeur sur la première action autorisée de la liste : copie, déplacement, lien (dans cette ordre).



Implémentation
    public static function get dropAction():String
    public static function set dropAction(value:String):void

Eléments de l’API associés

    

isDragging

propriété 
isDragging:Boolean  [lecture seule]

Versions du moteur d’exécution: AIR 1.0

Indique si une opération de déplacement est actuellement en cours.



Implémentation
    public static function get isDragging():Boolean
    

isSupported

propriété 
isSupported:Boolean  [lecture seule]

Version du langage: ActionScript 3.0
Versions du moteur d’exécution: AIR 2

La propriété isSupported est définie sur true si la classe NativeDragManager est prise en charge sur la plate-forme actuelle ; dans le cas contraire, elle est définie sur false.



Implémentation
    public static function get isSupported():Boolean
Détails de la méthode

    acceptDragDrop

()méthode
public static function acceptDragDrop(target:InteractiveObject):void

Versions du moteur d’exécution: AIR 1.0

Indique à l’objet NativeDragManager que l’objet interactif cible spécifié peut accepter un dépôt correspondant à l’événement de déplacement en cours.

Cette méthode ne peut être appelée que lorsque l’objet cible spécifié contient un gestionnaire nativeDragDrop capable de gérer au moins l’un des formats de données dans l’élément déplacé et au moins l’une des actions autorisées.

Cette fonction ne peut être appelée qu’à l’intérieur d’un gestionnaire d’événement nativeDragEnter ou nativeDragOver.

Paramètres

target:InteractiveObject

    doDrag

()méthode 
public static function doDrag(dragInitiator:InteractiveObject, clipboard:Clipboard, dragImage:BitmapData = null, offset:Point = null, allowedActions:NativeDragOptions = null):void

Versions du moteur d’exécution: AIR 1.0

Commence une opération de glisser-déposer.

Pour commencer une opération de déplacement :

  1. Créez un nouvel objet Clipboard.
  2. Ajoutez les données à transférer en un ou plusieurs formats.
  3. Eventuellement, créez un objet BitmapData devant servir d’image proxy pendant le déplacement.
  4. Eventuellement, créez un objet NativeDragOptions pour limiter les actions autorisées dans cette opération (si le paramètre allowedActions reste null, toutes les actions sont autorisées).
  5. Appelez NativeDragManager.doDrag().

L’objet initiateur déclenche un événement nativeDragStart après l’appel à cette méthode, des événements nativeDragStart pendant que le déplacement est en cours et un événement nativeDragComplete lorsque l’utilisateur relâche la souris pour mettre fin au déplacement. Le gestionnaire de l’événement nativeDragComplete peut vérifier la propriété dropAction de l’événement pour déterminer si l’opération de glisser-déposer s’est terminée avec succès. Si dropAction est NativeDragActions.NONE, l’élément déplacé n’a pas été déposé sur une cible qualifiée.

Cette méthode ne peut être appelée qu’à l’intérieur d’un gestionnaire d’événement mouseDown ou mouseMove (si elle est appelée en réponse à un événement mouseMove, le bouton de la souris doit également être maintenu enfoncé).

Paramètres

dragInitiator:InteractiveObject — Généralement l’objet à partir duquel le geste de déplacement commence. Reçoit les événements nativeDragStart et nativeDragComplete.
 
clipboard:Clipboard — Objet conteneur des données déplacées.
 
dragImage:BitmapData (default = null) — Image proxy facultative affichée sous le pointeur de la souris pendant le déplacement. Si null, aucune image n’est affichée.
 
offset:Point (default = null) — Décalage entre la zone réactive de la souris et le coin supérieur gauche de l’image déplacée. Des coordonnées négatives déplacent l’image vers le haut et la gauche par rapport à la zone réactive. Si null, le coin supérieur gauche de l’image déplacée est placée sur la zone réactive de la souris.
 
allowedActions:NativeDragOptions (default = null) — Limite les actions de glisser-déposer autorisées pour cette opération. Si null, toutes les actions sont autorisées.

Eléments de l’API associés





[ X ]Pourquoi existe-t-il du contenu en anglais ?
Certaines parties du Guide de référence ActionScript 3.0 sont en anglais

Tout le contenu du Guide de référence ActionScript 3.0 n’a pas été traduit dans toutes les langues. Si un élément de langage n’est pas traduit, il s’affiche en anglais. Par exemple, la classe ga.controls.HelpBox n’est traduite dans aucune langue. Ainsi, dans la version française du guide de référence, la classe ga.controls.HelpBox apparaît en anglais.