rsence-pre 3.0.0.8 → 3.0.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/VERSION +1 -1
- data/client/conf/client_pkg.yaml +6 -2
- data/client/js/comm/queue/queue.js +32 -44
- data/client/js/comm/transporter/transporter.js +24 -16
- data/client/js/comm/values/values.js +27 -15
- data/client/js/controls/button/button.coffee +14 -5
- data/client/js/controls/button/themes/default/button.css +4 -2
- data/client/js/controls/checkbox/checkbox.js +4 -4
- data/client/js/controls/dialogs/sheet/sheet.js +11 -11
- data/client/js/controls/dialogs/sheet/themes/default/sheet.html +1 -1
- data/client/js/controls/imageview/imageview.js +15 -15
- data/client/js/controls/numerictextcontrol/numerictextcontrol.coffee +32 -10
- data/client/js/controls/onoffbutton/onoffbutton.coffee +5 -5
- data/client/js/controls/progress/progressbar/progressbar.js +6 -7
- data/client/js/controls/progress/progressbar/themes/default/progressbar.css +4 -4
- data/client/js/controls/progress/progressbar/themes/default/progressbar.html +1 -2
- data/client/js/controls/sliders/slider/slider.js +74 -79
- data/client/js/controls/stepper/stepper.js +31 -31
- data/client/js/controls/stringview/stringview.js +20 -8
- data/client/js/controls/tab/tab.js +57 -63
- data/client/js/controls/tab/themes/default/tab.html +4 -1
- data/client/js/controls/textcontrol/textcontrol.coffee +13 -3
- data/client/js/controls/validatorview/validatorview.js +4 -4
- data/client/js/controls/window/window.js +43 -56
- data/client/js/core/class/class.js +25 -23
- data/client/js/core/elem/elem.coffee +8 -1
- data/client/js/core/rsence_ns/rsence_ns.coffee +6 -2
- data/client/js/core/util/util_methods/util_methods.coffee +57 -15
- data/client/js/datetime/calendar/calendar.coffee +196 -199
- data/client/js/datetime/calendar/themes/default/calendar.css +81 -159
- data/client/js/datetime/calendar/themes/default/calendar.html +9 -18
- data/client/js/datetime/datepicker/datepicker.coffee +18 -3
- data/client/js/datetime/datetimepicker/datetimepicker.coffee +6 -1
- data/client/js/datetime/datetimevalue/datetimevalue.coffee +194 -0
- data/client/js/datetime/momentjs/momentjs.js +310 -76
- data/client/js/datetime/timepicker/timepicker.coffee +6 -1
- data/client/js/datetime/timesheet/timesheet.js +59 -61
- data/client/js/foundation/control/control.js +45 -44
- data/client/js/foundation/control/controldefaults/controldefaults.js +13 -9
- data/client/js/foundation/control/dyncontrol/dyncontrol.js +45 -57
- data/client/js/foundation/control/eventresponder/eventresponder.js +97 -97
- data/client/js/foundation/control/valuematrix/valuematrix.js +13 -13
- data/client/js/foundation/eventmanager/eventmanager.coffee +50 -32
- data/client/js/foundation/geom/rect/rect.js +43 -32
- data/client/js/foundation/locale_settings/locale_settings.js +36 -25
- data/client/js/foundation/system/system.js +79 -67
- data/client/js/foundation/thememanager/thememanager.coffee +11 -1
- data/client/js/foundation/value/pullvalue/pullvalue.coffee +7 -0
- data/client/js/foundation/value/pushvalue/pushvalue.coffee +25 -0
- data/client/js/foundation/value/value.js +22 -15
- data/client/js/foundation/view/view.js +94 -55
- data/client/js/foundation/view/viewdefaults/viewdefaults.js +5 -1
- data/client/js/lists/listitems/listitems.js +26 -4
- data/client/js/menus/combobox/combobox.coffee +55 -0
- data/client/js/menus/minimenu/minimenu.js +61 -30
- data/client/js/menus/minimenu/themes/default/minimenu.css +1 -6
- data/client/js/menus/minimenu/themes/default/minimenu.html +5 -4
- data/client/js/menus/minimenuitem/minimenuitem.js +6 -6
- data/client/js/menus/popupmenu/themes/default/popupmenu.css +1 -6
- data/client/js/menus/popupmenu/themes/default/popupmenu.html +5 -4
- data/client/js/tables/table/table.coffee +109 -64
- data/client/js/tables/table/themes/default/table.css +4 -0
- data/lib/rsence/msg.rb +64 -64
- data/lib/rsence/plugins/plugin.rb +68 -52
- data/lib/rsence/session/sequel_sessionstorage.rb +5 -5
- data/lib/rsence/value.rb +79 -59
- data/plugins/client_pkg/lib/client_pkg_build.rb +5 -1
- data/plugins/client_pkg/lib/client_pkg_serve.rb +40 -32
- data/plugins/main/js/main.js +46 -28
- metadata +6 -8
- data/client/js/datetime/calendar/themes/default/calendar_arrows.png +0 -0
- data/client/js/datetime/calendar/themes/default/calendar_bg.png +0 -0
- data/client/js/datetime/calendar/themes/default/calendar_parts1.png +0 -0
- data/client/js/datetime/calendar/themes/default/calendar_parts2.png +0 -0
- data/client/js/datetime/datetimepicker/datetimepicker.js +0 -210
- data/client/js/datetime/datetimevalue/datetimevalue.js +0 -265
@@ -1,16 +1,16 @@
|
|
1
1
|
|
2
2
|
/*** = Description
|
3
3
|
** HImageView is a control unit intended to display images on the screen
|
4
|
-
** through the HTML <IMG> tag. The HImageView class is a container
|
4
|
+
** through the HTML <IMG> tag. The HImageView class is a container
|
5
5
|
** to visualize
|
6
|
-
** images loaded via URL. It supports scaling via two class methods,
|
7
|
-
** scaleToFit and scaleToOriginal. If the image is unable to be loaded,
|
6
|
+
** images loaded via URL. It supports scaling via two class methods,
|
7
|
+
** scaleToFit and scaleToOriginal. If the image is unable to be loaded,
|
8
8
|
** a default blank image will be rendered.
|
9
9
|
**
|
10
10
|
***/
|
11
11
|
var//RSence.Controls
|
12
12
|
HImageView = HControl.extend({
|
13
|
-
|
13
|
+
|
14
14
|
getImgSrc: function(){
|
15
15
|
var _value = (this.value!==null)?this.value:(this.options.valueObj?this.options.valueObj.value:this.options.value);
|
16
16
|
if (!_value){
|
@@ -18,12 +18,12 @@ HImageView = HControl.extend({
|
|
18
18
|
}
|
19
19
|
return _value;
|
20
20
|
},
|
21
|
-
|
22
|
-
controlDefaults:
|
21
|
+
|
22
|
+
controlDefaults: HControlDefaults.extend({
|
23
23
|
scaleToFit: true,
|
24
24
|
value: null
|
25
|
-
})
|
26
|
-
|
25
|
+
}),
|
26
|
+
|
27
27
|
_makeScaleToFit: function(_parentId){
|
28
28
|
this.elemId = ELEM.make( _parentId, 'img', {
|
29
29
|
attrs: [
|
@@ -48,10 +48,10 @@ HImageView = HControl.extend({
|
|
48
48
|
this._makeScaleToOriginal(_parentId);
|
49
49
|
}
|
50
50
|
},
|
51
|
-
|
51
|
+
|
52
52
|
/** = Description
|
53
53
|
* Used to refresh HImageView if the this.value is changed.
|
54
|
-
*
|
54
|
+
*
|
55
55
|
**/
|
56
56
|
refreshValue: function(){
|
57
57
|
var _src = this.getImgSrc();
|
@@ -67,7 +67,7 @@ HImageView = HControl.extend({
|
|
67
67
|
}
|
68
68
|
}
|
69
69
|
},
|
70
|
-
|
70
|
+
|
71
71
|
/** = Description
|
72
72
|
* Refreshesh the label of HImageView.
|
73
73
|
*
|
@@ -78,7 +78,7 @@ HImageView = HControl.extend({
|
|
78
78
|
}
|
79
79
|
ELEM.setAttr(this.elemId,'title',this.label);
|
80
80
|
},
|
81
|
-
|
81
|
+
|
82
82
|
/** = Description
|
83
83
|
* Changes the size of the image element so that it fits in the rectangle of
|
84
84
|
* the view.
|
@@ -91,8 +91,8 @@ HImageView = HControl.extend({
|
|
91
91
|
this.options.scaleToFit=true;
|
92
92
|
}
|
93
93
|
},
|
94
|
-
|
95
|
-
|
94
|
+
|
95
|
+
|
96
96
|
/** = Description
|
97
97
|
* Resizes the image element to its original dimesions. If the image is larger
|
98
98
|
* than the rectangle of this view, clipping will occur.
|
@@ -107,5 +107,5 @@ HImageView = HControl.extend({
|
|
107
107
|
}
|
108
108
|
|
109
109
|
|
110
|
-
|
110
|
+
|
111
111
|
});
|
@@ -2,27 +2,34 @@
|
|
2
2
|
## HNumericTextControl is an extension of HTextControl that
|
3
3
|
## validates the input as a number. It supports value ranges.
|
4
4
|
##
|
5
|
-
## If you need decimal numbers (floating-point), pass the
|
5
|
+
## If you need decimal numbers (floating-point), pass the
|
6
6
|
## decimalNumber: true option to the constructor.
|
7
7
|
####
|
8
8
|
HNumericTextControl = HTextControl.extend
|
9
|
-
|
9
|
+
|
10
10
|
defaultEvents:
|
11
11
|
mouseWheel: true
|
12
|
-
textEnter: true
|
13
12
|
contextMenu: true
|
14
13
|
keyDown: true
|
14
|
+
textEnter: false
|
15
|
+
click: true
|
16
|
+
contextMenu: true
|
15
17
|
|
16
18
|
controlDefaults: HTextControl.prototype.controlDefaults.extend
|
17
19
|
numberIncrement: 1
|
18
20
|
decimalNumber: false
|
19
|
-
decimalPlaces:
|
20
|
-
decimalSeparator:
|
21
|
+
decimalPlaces: null
|
22
|
+
decimalSeparator: null
|
21
23
|
withStepper: false
|
22
|
-
|
24
|
+
unit: false
|
25
|
+
|
26
|
+
customOptions: (_options)->
|
27
|
+
_options.decimalSeparator = HLocale.general.decimalSeparator unless _options.decimalSeparatator?
|
28
|
+
|
23
29
|
## Uses the mouseWheel event to step up/down the value.
|
24
30
|
mouseWheel: (_delta)->
|
25
31
|
_value = @value
|
32
|
+
_value = parseInt(_value,10) if @typeChr(_value) == 's'
|
26
33
|
if _delta < 0
|
27
34
|
_value = _value-@options.numberIncrement
|
28
35
|
else
|
@@ -43,7 +50,7 @@ HNumericTextControl = HTextControl.extend
|
|
43
50
|
validateNumber: (_value)->
|
44
51
|
if @options.decimalNumber
|
45
52
|
_value = parseFloat(_value)
|
46
|
-
if @options.decimalPlaces !=
|
53
|
+
if @options.decimalPlaces != null
|
47
54
|
_decPlaces = Math.pow(10,@options.decimalPlaces)
|
48
55
|
_value = Math.round(_value*_decPlaces)/_decPlaces
|
49
56
|
else
|
@@ -69,7 +76,7 @@ HNumericTextControl = HTextControl.extend
|
|
69
76
|
@validateNumber( _value )
|
70
77
|
valueToField: (_value)->
|
71
78
|
_value = @validateNumber(_value)
|
72
|
-
if @options.decimalNumber and @options.decimalPlaces !=
|
79
|
+
if @options.decimalNumber and @options.decimalPlaces != null
|
73
80
|
if _value - Math.round(_value) == 0
|
74
81
|
_value = _value+@options.decimalSeparator
|
75
82
|
for n in [0...@options.decimalPlaces]
|
@@ -86,13 +93,15 @@ HNumericTextControl = HTextControl.extend
|
|
86
93
|
## Extends the validateText method to ensure the
|
87
94
|
## input is a number.
|
88
95
|
###
|
89
|
-
validateText: (_value)-> _value
|
96
|
+
# validateText: (_value)-> _value
|
90
97
|
|
98
|
+
_extraLabelRight: 0
|
91
99
|
drawSubviews: ->
|
92
100
|
@base()
|
93
101
|
@setStyleOfPart('value','textAlign','right')
|
94
102
|
if @options.withStepper
|
95
|
-
|
103
|
+
this._extraLabelRight += 14
|
104
|
+
@setStyleOfPart('label','right',this._extraLabelRight+'px')
|
96
105
|
_top = Math.round((@rect.height-22)/2)
|
97
106
|
@stepper = HStepper.extend(
|
98
107
|
refreshValue: ->
|
@@ -107,3 +116,16 @@ HNumericTextControl = HTextControl.extend
|
|
107
116
|
enabled: @enabled
|
108
117
|
)
|
109
118
|
@stepper.bringToFront()
|
119
|
+
if @options.unit
|
120
|
+
_unitRect = [null,null,4,@rect.height,4,0]
|
121
|
+
@unitSuffix = HLabel.new(_unitRect,@,
|
122
|
+
pack: true
|
123
|
+
label: @options.unit
|
124
|
+
style:
|
125
|
+
lineHeight: @rect.height+'px'
|
126
|
+
verticalAlign: 'middle'
|
127
|
+
)
|
128
|
+
@_extraLabelRight += @unitSuffix.rect.width
|
129
|
+
@setStyleOfPart('label','right',this._extraLabelRight+'px')
|
130
|
+
|
131
|
+
HNumberField = HNumericTextControl
|
@@ -5,11 +5,11 @@ HOnOffButton = HCheckbox.extend
|
|
5
5
|
controlDefaults: HControlDefaults.extend
|
6
6
|
label: 'ON'
|
7
7
|
labelOff: 'OFF'
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
8
|
+
customOptions: (_options)->
|
9
|
+
if _options.label instanceof Array
|
10
|
+
_options.labelOff = _options.label[1]
|
11
|
+
_options.label = _options.label[0]
|
12
|
+
@labelOff = _options.labelOff
|
13
13
|
markupElemNames: [ 'label', 'offlabel', 'control', 'onvalue', 'offvalue' ]
|
14
14
|
refreshLabel: ->
|
15
15
|
@base()
|
@@ -1,7 +1,7 @@
|
|
1
1
|
|
2
2
|
/*** = Description
|
3
|
-
** HProgressBar is a control unit used to convey the progress of a task,
|
4
|
-
** such as a download or file transfer. In other words, it is a component
|
3
|
+
** HProgressBar is a control unit used to convey the progress of a task,
|
4
|
+
** such as a download or file transfer. In other words, it is a component
|
5
5
|
** indicating a percentage of a total task has completed.
|
6
6
|
**
|
7
7
|
** Use the maxValue to define the point of progress at the end and use value
|
@@ -11,19 +11,18 @@
|
|
11
11
|
var//RSence.Controls
|
12
12
|
HProgressBar = HControl.extend({
|
13
13
|
componentName: "progressbar",
|
14
|
-
|
14
|
+
|
15
15
|
/** The amount of pixels the theme insets the width of the progress bar **/
|
16
16
|
themeWidthInset: 2,
|
17
|
-
|
17
|
+
|
18
18
|
/** Sets the width of the progress bar when the value changes. **/
|
19
19
|
refreshValue: function(){
|
20
20
|
if( this.drawn && this.markupElemIds.value ){
|
21
|
-
var
|
22
|
-
_progressWidth = Math.round(_visibleWidth * this.value);
|
21
|
+
var _progressWidth = Math.round(100 * this.value);
|
23
22
|
if(_progressWidth<0){
|
24
23
|
_progressWidth = 0;
|
25
24
|
}
|
26
|
-
this.setStyleOfPart('value','width',_progressWidth+'
|
25
|
+
this.setStyleOfPart('value','width',_progressWidth+'%');
|
27
26
|
}
|
28
27
|
},
|
29
28
|
onIdle: function(){
|
@@ -1,16 +1,16 @@
|
|
1
|
-
.progressbar {
|
1
|
+
.default.progressbar {
|
2
2
|
cursor: wait;
|
3
3
|
position: absolute;
|
4
4
|
left: 0px; top: 0px; right: 0px; bottom: 1px;
|
5
5
|
border: 1px solid #999;
|
6
6
|
background-color: #ccc;
|
7
|
-
}
|
8
|
-
.progressbar .progress {
|
7
|
+
}
|
8
|
+
.default.progressbar > .progress {
|
9
9
|
position: absolute;
|
10
10
|
left: 0px; top: 0px;
|
11
11
|
width: 50px; bottom: 0px;
|
12
12
|
background-color: #333;
|
13
13
|
}
|
14
|
-
.
|
14
|
+
.default.progressbar.disabled {
|
15
15
|
opacity: 0.75;
|
16
16
|
}
|
@@ -1,2 +1 @@
|
|
1
|
-
<div class="
|
2
|
-
><div class="progress" id="value#{ _ID }"></div></div>
|
1
|
+
<div class="progress" id="value#{ _ID }"></div>
|
@@ -1,12 +1,12 @@
|
|
1
1
|
|
2
2
|
/*** = Description
|
3
|
-
** HSlider is a control unit that enables the user to choose a value in a range of values.
|
4
|
-
** Sliders support both dragging the handle and clicking the mouse anywhere on the slider
|
5
|
-
** to move the handle towards the mouse, as well as keyboard support
|
6
|
-
** after the handle is in active mode. There are two types of sliders: vertical and horizontal.
|
7
|
-
** Naturally, sliders are commonly used as colour mixers, volume controls,
|
8
|
-
** graphical equalizers and seekers in media applications.
|
9
|
-
** A typical slider is a drag-able thumb along vertical or horizontal line.
|
3
|
+
** HSlider is a control unit that enables the user to choose a value in a range of values.
|
4
|
+
** Sliders support both dragging the handle and clicking the mouse anywhere on the slider
|
5
|
+
** to move the handle towards the mouse, as well as keyboard support
|
6
|
+
** after the handle is in active mode. There are two types of sliders: vertical and horizontal.
|
7
|
+
** Naturally, sliders are commonly used as colour mixers, volume controls,
|
8
|
+
** graphical equalizers and seekers in media applications.
|
9
|
+
** A typical slider is a drag-able thumb along vertical or horizontal line.
|
10
10
|
**
|
11
11
|
** = Instance variables
|
12
12
|
** +minValue+:: The smallest allowed value.
|
@@ -24,31 +24,31 @@
|
|
24
24
|
***/
|
25
25
|
var//RSence.Controls
|
26
26
|
HSlider = HControl.extend({
|
27
|
-
|
27
|
+
|
28
28
|
componentName: "slider",
|
29
|
-
|
29
|
+
|
30
30
|
defaultEvents: {
|
31
31
|
draggable: true,
|
32
32
|
keyDown: 'repeat',
|
33
33
|
keyUp: true,
|
34
34
|
mouseWheel: true
|
35
35
|
},
|
36
|
-
|
37
|
-
controlDefaults:
|
36
|
+
|
37
|
+
controlDefaults: HControlDefaults.extend({
|
38
38
|
minValue: 0,
|
39
39
|
maxValue: 1,
|
40
40
|
roundValue: false,
|
41
41
|
inverseAxis: false
|
42
|
-
})
|
43
|
-
|
42
|
+
}),
|
43
|
+
|
44
44
|
refreshOnValueChange: false,
|
45
|
-
|
45
|
+
|
46
46
|
_isVertical: false,
|
47
|
-
|
48
|
-
|
47
|
+
|
48
|
+
|
49
49
|
/** = Description
|
50
50
|
* Sets the current value of the object and moves the slider thumb to the correct position.
|
51
|
-
*
|
51
|
+
*
|
52
52
|
* = Parameters
|
53
53
|
* +_value+:: A numeric value to be set to the object.
|
54
54
|
*
|
@@ -71,7 +71,7 @@ HSlider = HControl.extend({
|
|
71
71
|
}
|
72
72
|
return this;
|
73
73
|
},
|
74
|
-
|
74
|
+
|
75
75
|
/** = Description
|
76
76
|
* Draws the rectangle and the markup of this object on the screen.
|
77
77
|
*
|
@@ -84,65 +84,65 @@ HSlider = HControl.extend({
|
|
84
84
|
}
|
85
85
|
this.refresh();
|
86
86
|
},
|
87
|
-
|
88
|
-
|
87
|
+
|
88
|
+
|
89
89
|
/** = Description
|
90
90
|
* This gets called automatically when the user starts to drag the slider thumb.
|
91
91
|
* Extend this method if you want something special to happen when the dragging starts.
|
92
|
-
*
|
92
|
+
*
|
93
93
|
* = Parameters
|
94
|
-
* +
|
95
|
-
* +
|
96
|
-
*
|
94
|
+
* +x+:: The X coordinate of the point where the drag started.
|
95
|
+
* +y+:: The Y coordinate of the point where the drag started.
|
96
|
+
*
|
97
97
|
**/
|
98
|
-
startDrag: function(
|
98
|
+
startDrag: function(x,y){
|
99
99
|
var _originalPosition = ELEM.getVisiblePosition(this.elemId, true);
|
100
100
|
this._originX = _originalPosition[0];
|
101
101
|
this._originY = _originalPosition[1];
|
102
|
-
|
103
|
-
this.drag(
|
102
|
+
|
103
|
+
this.drag(x,y);
|
104
104
|
},
|
105
|
-
|
106
|
-
|
105
|
+
|
106
|
+
|
107
107
|
/** = Description
|
108
108
|
* This gets called automatically when the user stops dragging the slider thumb.
|
109
109
|
* Extend this method if you want something special to happen when the dragging ends.
|
110
|
-
*
|
110
|
+
*
|
111
111
|
* = Parameters
|
112
|
-
* +
|
113
|
-
* +
|
112
|
+
* +x+:: The X coordinate of the point where the drag ended.
|
113
|
+
* +y+:: The Y coordinate of the point where the drag ended.
|
114
114
|
*
|
115
115
|
**/
|
116
|
-
endDrag: function(
|
117
|
-
this.drag(
|
116
|
+
endDrag: function(x,y){
|
117
|
+
this.drag(x,y);
|
118
118
|
},
|
119
|
-
|
120
|
-
|
119
|
+
|
120
|
+
|
121
121
|
/** = Description
|
122
122
|
* This gets called periodically while the user drags the slider thumb.
|
123
123
|
* Extend this method if you want something special to happen while dragging.
|
124
|
-
*
|
124
|
+
*
|
125
125
|
* = Parameters
|
126
|
-
* +
|
127
|
-
* +
|
126
|
+
* +x+:: The X coordinate of the point where the user is currently dragging.
|
127
|
+
* +y+:: The Y coordinate of the point where the user is currently dragging.
|
128
128
|
*
|
129
129
|
**/
|
130
|
-
drag: function(
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
var _rawVal = this._isVertical?
|
130
|
+
drag: function(x,y){
|
131
|
+
x -= this._originX;
|
132
|
+
y -= this._originY;
|
133
|
+
|
134
|
+
var _rawVal = this._isVertical?y:x,
|
135
135
|
_value = this._pos2value(_rawVal);
|
136
|
-
|
136
|
+
|
137
137
|
this.setValue(_value);
|
138
138
|
},
|
139
|
-
|
140
|
-
|
139
|
+
|
140
|
+
|
141
141
|
/** = Description
|
142
|
-
* This gets called when the user presses a key down while this control is
|
142
|
+
* This gets called when the user presses a key down while this control is
|
143
143
|
* active. The default behaviour is to move the thumb with arrow keys, page up,
|
144
144
|
* page down, home and end.
|
145
|
-
*
|
145
|
+
*
|
146
146
|
* = Parameters
|
147
147
|
* +_keycode+:: The keycode of the key that was pressed down.
|
148
148
|
*
|
@@ -173,11 +173,11 @@ HSlider = HControl.extend({
|
|
173
173
|
}
|
174
174
|
return true;
|
175
175
|
},
|
176
|
-
|
177
|
-
|
176
|
+
|
177
|
+
|
178
178
|
/** = Description
|
179
179
|
* This gets called when the user releases a key while this control is active.
|
180
|
-
*
|
180
|
+
*
|
181
181
|
* = Parameters
|
182
182
|
* +_keycode+:: The keycode of the key that was released.
|
183
183
|
*
|
@@ -185,10 +185,10 @@ HSlider = HControl.extend({
|
|
185
185
|
keyUp: function(_keycode) {
|
186
186
|
return true;
|
187
187
|
},
|
188
|
-
|
189
|
-
|
188
|
+
|
189
|
+
|
190
190
|
/** = Description
|
191
|
-
* This gets called when the mouse wheel is used and the component
|
191
|
+
* This gets called when the mouse wheel is used and the component
|
192
192
|
* instance has focus.
|
193
193
|
*
|
194
194
|
* = Parameters
|
@@ -207,12 +207,12 @@ HSlider = HControl.extend({
|
|
207
207
|
if ( this.options.inverseAxis ) {
|
208
208
|
_valueChange = 0 - _valueChange;
|
209
209
|
}
|
210
|
-
|
210
|
+
|
211
211
|
var _value = (this.maxValue - this.minValue) * _valueChange;
|
212
212
|
this.setValue( this.value + _value);
|
213
213
|
},
|
214
|
-
|
215
|
-
|
214
|
+
|
215
|
+
|
216
216
|
// --private method++
|
217
217
|
_moveThumb: function(_valueChange, _rate) {
|
218
218
|
if (this.active) {
|
@@ -221,15 +221,15 @@ HSlider = HControl.extend({
|
|
221
221
|
}
|
222
222
|
|
223
223
|
},
|
224
|
-
|
224
|
+
|
225
225
|
thumbSize: 21,
|
226
226
|
// -- private method ++
|
227
227
|
_initThumb: function() {
|
228
228
|
this._thumbElemId = this.markupElemIds.control;
|
229
229
|
this.drawThumbPos();
|
230
230
|
},
|
231
|
-
|
232
|
-
|
231
|
+
|
232
|
+
|
233
233
|
// -- private method ++
|
234
234
|
_value2px: function() {
|
235
235
|
var _pxrange;
|
@@ -247,8 +247,8 @@ HSlider = HControl.extend({
|
|
247
247
|
_pxvalue = parseInt(_intvalue, 10)+'px';
|
248
248
|
return _pxvalue;
|
249
249
|
},
|
250
|
-
|
251
|
-
|
250
|
+
|
251
|
+
|
252
252
|
// -- private method ++
|
253
253
|
_pos2value: function(_mousePos) {
|
254
254
|
var _pxrange;
|
@@ -270,20 +270,20 @@ HSlider = HControl.extend({
|
|
270
270
|
return this.minValue + ((_mousePos / _pxrange) * (this.maxValue - this.minValue));
|
271
271
|
}
|
272
272
|
},
|
273
|
-
|
274
|
-
|
273
|
+
|
274
|
+
|
275
275
|
// -- private method ++
|
276
276
|
drawThumbPos: function() {
|
277
277
|
var _whichprop = this._isVertical?'top':'left',
|
278
278
|
_propval = this._value2px();
|
279
279
|
ELEM.setStyle(this._thumbElemId,_whichprop,_propval);
|
280
|
-
this.setOrientation(this.options
|
280
|
+
this.setOrientation(this.options.orientation||this.prevOrientation);
|
281
281
|
},
|
282
|
-
|
282
|
+
|
283
283
|
prevOrientation: 'c',
|
284
|
-
|
284
|
+
|
285
285
|
orientations: ['n','s','c'],
|
286
|
-
|
286
|
+
|
287
287
|
/** = Description
|
288
288
|
* Changes the thumb graphic. Possible orientations by default are
|
289
289
|
* north ('n'), south ('s'), west ('w'), east('e') and center ('c').
|
@@ -301,14 +301,9 @@ HSlider = HControl.extend({
|
|
301
301
|
if(_orientation === this.prevOrientation){
|
302
302
|
return;
|
303
303
|
}
|
304
|
-
if(this
|
305
|
-
|
306
|
-
|
307
|
-
if(this.markupElemIds['control']===undefined){
|
308
|
-
return;
|
309
|
-
}
|
310
|
-
var _toggleCSS = this.toggleCSSClass,
|
311
|
-
_ctrlId = this.markupElemIds.control,
|
304
|
+
if(this.markupElemIds===undefined){ return; }
|
305
|
+
if(this.markupElemIds['control']===undefined){ return; }
|
306
|
+
var _ctrlId = this.markupElemIds.control,
|
312
307
|
_orientations = this.orientations,
|
313
308
|
_iOrientation = '',
|
314
309
|
_cssClassName = '',
|
@@ -319,9 +314,9 @@ HSlider = HControl.extend({
|
|
319
314
|
_iOrientation = _orientations[i];
|
320
315
|
_activeOrientation = (_orientation===_iOrientation);
|
321
316
|
_cssClassName = (_orientation==='c')?_componentName+'_'+'thumb':_componentName+'_'+'thumb'+'_'+_iOrientation;
|
322
|
-
|
317
|
+
this.toggleCSSClass( _ctrlId, _cssClassName, _activeOrientation );
|
323
318
|
}
|
324
|
-
|
319
|
+
|
325
320
|
this.prevOrientation = _orientation;
|
326
321
|
}
|
327
322
|
});
|