1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
|
/*
Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved.
Available via Academic Free License >= 2.1 OR the modified BSD license.
see: http://dojotoolkit.org/license for details
*/
dojo._xdResourceLoaded(function(dojo, dijit, dojox){
return {depends: [["provide", "dojox.av.widget.PlayButton"],
["require", "dijit._Widget"],
["require", "dijit._Templated"],
["require", "dijit.form.Button"]],
defineResource: function(dojo, dijit, dojox){if(!dojo._hasResource["dojox.av.widget.PlayButton"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code.
dojo._hasResource["dojox.av.widget.PlayButton"] = true;
dojo.provide("dojox.av.widget.PlayButton");
dojo.require("dijit._Widget");
dojo.require("dijit._Templated");
dojo.require("dijit.form.Button");
dojo.declare("dojox.av.widget.PlayButton", [dijit._Widget, dijit._Templated], {
// summary:
// A Play/Pause button widget to use with dojox.av.widget.Player
//
templateString: dojo.cache("dojox.av.widget", "resources/PlayButton.html", "<div class=\"PlayPauseToggle Pause\" dojoAttachEvent=\"click:onClick\">\r\n <div class=\"icon\"></div>\r\n</div>\r\n"),
//
postCreate: function(){
// summary:
// Intialize button.
this.showPlay();
},
setMedia: function(/* Object */med){
// summary:
// A common method to set the media in all Player widgets.
// May do connections and initializations.
//
this.media = med;
dojo.connect(this.media, "onEnd", this, "showPlay");
dojo.connect(this.media, "onStart", this, "showPause");
},
onClick: function(){
// summary:
// Fired on play or pause click.
//
if(this._mode=="play"){
this.onPlay();
}else{
this.onPause();
}
},
onPlay: function(){
// summary:
// Fired on play click.
//
if(this.media){
this.media.play();
}
this.showPause();
},
onPause: function(){
// summary:
// Fired on pause click.
//
if(this.media){
this.media.pause();
}
this.showPlay();
},
showPlay: function(){
// summary:
// Toggles the pause button invisible and the play
// button visible..
//
this._mode = "play";
dojo.removeClass(this.domNode, "Pause");
dojo.addClass(this.domNode, "Play");
},
showPause: function(){
// summary:
// Toggles the play button invisible and the pause
// button visible.
//
this._mode = "pause";
dojo.addClass(this.domNode, "Pause");
dojo.removeClass(this.domNode, "Play");
}
});
}
}};});
|