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
|
define.class('$ui/scrollbar', function () {
this.position = 'absolute'
this.vertical = false
this.visible = true
this.attributes = {
zoom: wire('this.parent.zoom'),
scroll: wire('this.parent.scroll')
}
this.value = function(event){
if (event.mark) return
this.parent.scroll = vec2(this._value, 0)
}
this.layout = function(){
this._layout.left = 0
this._layout.height = 10
this._layout.width = this.parent._layout.width
this._layout.top = this.parent._layout.height - 10
}
this.scroll = function () {
this.value = this.scroll[0]
this.updateScrollbar()
}
this.pointermultimove = function () {}
this.updateScrollbar = function(){
this._total = this.parent.getDuration() / this.zoom / this.parent.TIME_SCALE
this._page = 1
if (this._total > this._page - 0.2){
var offset = clamp(this._value, 0, this._total - this._page)
if (offset !== this._value) {
this._value = offset
}
this.visible = true
} else {
}
}
})
|