Use ActionScript 3.0 in widgets

Note:

Only ActionScript 3.0 is supported.

Changes in ActionScript from version 2 to version 3 warrant changes in how constructs access Adobe Captivate Classic demos. Some of the changes are documented here.

  • To declare onEnterFrame specify this.addEventListener("enterFrame",onEnterFrame);

  • Use void instead of Void

  • External interface takes only two parameters now. For example, ExternalInterface.addCallback("isStatic",isStatic);

  • Use parent instead of _parent

  • Use the following code in the ActionScript file:function cpSetValue(variable:String, val):void { if (variable == 'widgetMode') { widgetMode = val; } } ExternalInterface.addCallback("cpSetValue", cpSetValue);

  • The way to get widgetParam has changed in ActionScript 3.0 because of changes in the structure of Captivate Classic demos:var slide:Object = parent.parent.parent; var slideXMl:XMLList = XMLList(slide.slideXMl); var parname:String = parent.parent.name; var ItemXML:XMLList = XMLList(slideXMl.ItemList.Item.(@name == parname)); widgetParam:String = ItemXML.widgetParams;

  • Understand the new way of parsing XML.

Note:

Ensure that the version of ActionScript for the widget matches the ActionScript version used for the Captivate Classic demo. ActionScript 2.0 widgets do not work in movies published using ActionScript 3.0, and the other way around.

Get help faster and easier

New user?