a:18:{s:9:"#provides";s:22:"dojox.av.widget.Player";s:9:"#resource";s:19:"av/widget/Player.js";s:9:"#requires";a:2:{i:0;a:3:{i:0;s:6:"common";i:1;s:13:"dijit._Widget";i:2;s:5:"dijit";}i:1;a:3:{i:0;s:6:"common";i:1;s:16:"dijit._Templated";i:2;s:5:"dijit";}}s:22:"dojox.av.widget.Player";a:7:{s:4:"type";s:8:"Function";s:6:"chains";a:2:{s:9:"prototype";a:1:{i:0;s:13:"dijit._Widget";}s:4:"call";a:2:{i:0;s:13:"dijit._Widget";i:1;s:16:"dijit._Templated";}}s:6:"mixins";a:1:{s:9:"prototype";a:1:{i:0;s:26:"dijit._Templated.prototype";}}s:7:"summary";s:65:"A Media Player UI widget for all types of dojox.av and AIR media.";s:11:"description";s:349:"Currently for markup only. All controls should reside as child nodes within the Player node. 'controlType' is used to determine the placement of the control. If no type or an unrecoginized type is used, it will be left-aligned in the same row as the volume. Note: Be sure to use 'controlType' as a node attribute. It is not a property of the widget.";s:8:"examples";a:1:{i:0;s:526:"
";}s:9:"classlike";b:1;}s:34:"dojox.av.widget.Player.playerWidth";a:3:{s:9:"prototype";s:22:"dojox.av.widget.Player";s:4:"type";s:6:"Number";s:7:"summary";s:170:"or String */ Sets the width of the player (not the video size) Number will be converted to pixels String will be used literally. EX: "320px" or "100%"";}s:40:"dojox.av.widget.Player.widgetsInTemplate";a:2:{s:9:"prototype";s:22:"dojox.av.widget.Player";s:7:"summary";s:0:"";}s:35:"dojox.av.widget.Player.templatePath";a:2:{s:9:"prototype";s:22:"dojox.av.widget.Player";s:7:"summary";s:0:"";}s:35:"dojox.av.widget.Player._fillContent";a:5:{s:9:"prototype";s:22:"dojox.av.widget.Player";s:4:"type";s:8:"Function";s:6:"source";s:1954:"dojo.provide("dojox.av.widget.Player"); dojo.require("dijit._Widget"); dojo.require("dijit._Templated"); dojo.declare("dojox.av.widget.Player", [dijit._Widget, dijit._Templated], { // summary: // A Media Player UI widget for all types of dojox.av and AIR media. // // description: // Currently for markup only. All controls should reside as child // nodes within the Player node. 'controlType' is used to determine // the placement of the control. If no type or an unrecoginized type // is used, it will be left-aligned in the same row as the volume. // Note: // Be sure to use 'controlType' as a node attribute. It is not a // property of the widget. // // example: // |
// |
// |
// |
// |
// |
// |
// // playerWidth: /* Number or String */ // Sets the width of the player (not the video size) // Number will be converted to pixels // String will be used literally. EX: "320px" or "100%" playerWidth: "480px", // // TODO: //playerHeight //videoWidth: 320, //videoHeight: 240, widgetsInTemplate:true, templatePath: dojo.moduleUrl("dojox.av.widget","resources/Player.html"), _fillContent: function(){ // summary // Finding and collecting child nodes if(!this.items && this.srcNodeRef){ this.items = []; var nodes = dojo.query("*", this.srcNodeRef); dojo.forEach(nodes, function(n){ this.items.push(n); }, this); }";s:7:"private";b:1;s:7:"summary";s:0:"";}s:33:"dojox.av.widget.Player.postCreate";a:4:{s:9:"prototype";s:22:"dojox.av.widget.Player";s:4:"type";s:8:"Function";s:6:"source";s:840:" dojo.style(this.domNode, "width", this.playerWidth+(dojo.isString(this.playerWidth)?"":"px")); if(dojo.isString(this.playerWidth) && this.playerWidth.indexOf("%")){ dojo.connect(window, "resize", this, "onResize"); } this.children = []; var domNode; dojo.forEach(this.items, function(n, i){ n.id = dijit.getUniqueId("player_control"); switch(dojo.attr(n, "controlType")){ case "play": this.playContainer.appendChild(n); break; case "volume" : this.controlsBottom.appendChild(n); break; case "status" : this.statusContainer.appendChild(n); break; case "progress": case "slider": this.progressContainer.appendChild(n); break; case "video": this.mediaNode = n; this.playerScreen.appendChild(n); break; default: } this.items[i] = n.id; }, this);";s:7:"summary";s:66:"Do player styling, and place child widgets in the proper location.";}s:30:"dojox.av.widget.Player.startup";a:4:{s:9:"prototype";s:22:"dojox.av.widget.Player";s:4:"type";s:8:"Function";s:6:"source";s:799:" this.media = dijit.byId(this.mediaNode.id); if(!dojo.isAIR){ dojo.style(this.media.domNode, "width", "100%"); dojo.style(this.media.domNode, "height", "100%"); } //dojo.style(this.media.domNode, "width", this.videoWidth+(dojo.isString(this.playerWidth)?"":"px")); //dojo.style(this.media.domNode, "height", this.videoHeight+(dojo.isString(this.playerWidth)?"":"px")); //return //setTimeout(dojo.hitch(this, function(){ dojo.forEach(this.items, function(id){ //console.log(" ids:", id , this.mediaNode.id) if(id !== this.mediaNode.id){ var child = dijit.byId(id); this.children.push(child); if(child){ console.log("child:", child.declaredClass, "this.media:", this.media) child.setMedia(this.media, this); } } }, this); //}),1000)";s:7:"summary";s:80:"Fired when all children are ready. Set the media in all children with setMedia()";}s:31:"dojox.av.widget.Player.onResize";a:5:{s:9:"prototype";s:22:"dojox.av.widget.Player";s:4:"type";s:8:"Function";s:10:"parameters";a:1:{s:3:"evt";a:1:{s:4:"type";s:0:"";}}s:6:"source";s:243:" var dim = dojo.marginBox(this.domNode); if(this.media && this.media.onResize !== null){ this.media.onResize(dim); } dojo.forEach(this.children, function(child){ if(child.onResize){ child.onResize(dim); } });";s:7:"summary";s:116:"If a player size is a percentage, this will fire an onResize event for all children, passing the size of the player.";}s:28:"dojox.av.widget.Player.items";a:2:{s:8:"instance";s:22:"dojox.av.widget.Player";s:7:"summary";s:0:"";}s:31:"dojox.av.widget.Player.children";a:2:{s:8:"instance";s:22:"dojox.av.widget.Player";s:7:"summary";s:0:"";}s:32:"dojox.av.widget.Player.mediaNode";a:2:{s:8:"instance";s:22:"dojox.av.widget.Player";s:7:"summary";s:0:"";}s:28:"dojox.av.widget.Player.media";a:2:{s:8:"instance";s:22:"dojox.av.widget.Player";s:7:"summary";s:0:"";}s:15:"dojox.av.widget";a:2:{s:4:"type";s:6:"Object";s:7:"summary";s:0:"";}s:8:"dojox.av";a:2:{s:4:"type";s:6:"Object";s:7:"summary";s:0:"";}s:5:"dojox";a:2:{s:4:"type";s:6:"Object";s:7:"summary";s:0:"";}}