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
@@ -4,9 +4,9 @@
|
|
4
4
|
***/
|
5
5
|
var//RSence.Menus
|
6
6
|
HMiniMenuItem = HRadioButton.extend({
|
7
|
-
|
7
|
+
|
8
8
|
componentName: 'minimenuitem',
|
9
|
-
|
9
|
+
|
10
10
|
defaultEvents: {
|
11
11
|
click: true,
|
12
12
|
mouseUp: true,
|
@@ -24,7 +24,7 @@ HMiniMenuItem = HRadioButton.extend({
|
|
24
24
|
|
25
25
|
_parentLastActivation: 0,
|
26
26
|
click: function(){
|
27
|
-
var _now =
|
27
|
+
var _now = this.msNow();
|
28
28
|
if( _now - this._parentLastActivation > 200 ){
|
29
29
|
this.base();
|
30
30
|
this._parentLastActivation = _now;
|
@@ -32,17 +32,17 @@ HMiniMenuItem = HRadioButton.extend({
|
|
32
32
|
}
|
33
33
|
return true;
|
34
34
|
},
|
35
|
-
|
35
|
+
|
36
36
|
mouseDown: function(){
|
37
37
|
this.base();
|
38
38
|
this.click();
|
39
39
|
return true;
|
40
40
|
},
|
41
|
-
|
41
|
+
|
42
42
|
mouseUp: function(){
|
43
43
|
this.base();
|
44
44
|
this.click();
|
45
45
|
return true;
|
46
46
|
}
|
47
|
-
|
47
|
+
|
48
48
|
});
|
@@ -3,8 +3,7 @@
|
|
3
3
|
.popupmenu_edge_left,
|
4
4
|
.popupmenu_center,
|
5
5
|
.popupmenu_edge_right,
|
6
|
-
.popupmenu_label
|
7
|
-
.popupmenu_antiselect {
|
6
|
+
.popupmenu_label {
|
8
7
|
position: absolute;
|
9
8
|
top: 0px; height: 23px;
|
10
9
|
}
|
@@ -60,7 +59,3 @@
|
|
60
59
|
.disabled .popupmenu_control {
|
61
60
|
opacity: 0.6;
|
62
61
|
}
|
63
|
-
|
64
|
-
.popupmenu_antiselect {
|
65
|
-
left: 0px; right: 0px;
|
66
|
-
}
|
@@ -1,7 +1,8 @@
|
|
1
1
|
<div class="popupmenu_control" id="control]I[">
|
2
|
-
<
|
3
|
-
|
4
|
-
|
2
|
+
<span id="bg]I[">
|
3
|
+
<div class="popupmenu_edge_left"></div>
|
4
|
+
<div class="popupmenu_center"></div>
|
5
|
+
<div class="popupmenu_edge_right"></div>
|
6
|
+
</span>
|
5
7
|
<div class="popupmenu_label" id="label]I[">#{this.label}</div>
|
6
|
-
<div class="popupmenu_antiselect"></div>
|
7
8
|
</div>
|
@@ -5,20 +5,20 @@ HTable = HControl.extend
|
|
5
5
|
resize: true
|
6
6
|
controlDefaults: HControlDefaults.extend
|
7
7
|
tableType: 'rows' # 'cols' not supported yet
|
8
|
-
constructor: (_view)->
|
9
|
-
@headerCols = false unless @headerCols? # array of strings
|
10
|
-
@sortDescending = [] unless @sortDescending? # column sorting by index; true for descending; false for ascending
|
11
|
-
@colWidths = [] unless @colWidths? # widths by column index; default 'auto'
|
12
|
-
@colClasses = {} unless @colClasses? # class by column index
|
13
|
-
@defaultColOptions = {} unless @defaultColOptions? # fallback default column options
|
14
|
-
@colOptions = {} unless @colOptions? # column class constructor options by column index
|
15
|
-
@defaultColClass = HStringView unless @defaultColClass? # fallback default column class
|
16
8
|
sortCol: 0 # the default sort column
|
17
9
|
useCellGrid: false # whether to use colored cells or not
|
18
10
|
cellBgColor: '#eee' # the average bg color
|
19
11
|
cellBgColorDiff: '#080808' # color to add/subtract for even/odd col/row
|
20
12
|
cellBorderWidth: 1 # cell border width in pixels
|
21
13
|
cellBorderColor: '#fff' # cell border color
|
14
|
+
customOptions: (_options)->
|
15
|
+
_options.headerCols = false unless _options.headerCols? # array of strings
|
16
|
+
_options.sortDescending = [] unless _options.sortDescending? # column sorting by index; true for descending; false for ascending
|
17
|
+
_options.colWidths = [] unless _options.colWidths? # widths by column index; default 'auto'
|
18
|
+
_options.colClasses = {} unless _options.colClasses? # class by column index
|
19
|
+
_options.defaultColOptions = {} unless _options.defaultColOptions? # fallback default column options
|
20
|
+
_options.colOptions = {} unless _options.colOptions? # column class constructor options by column index
|
21
|
+
_options.defaultColClass = HStringView unless _options.defaultColClass? # fallback default column class
|
22
22
|
_destroyHeader: ->
|
23
23
|
if @headerCols?
|
24
24
|
_table = @
|
@@ -36,6 +36,10 @@ HTable = HControl.extend
|
|
36
36
|
@options.sortDescending[_col] = false
|
37
37
|
else
|
38
38
|
@options.sortCol = _col
|
39
|
+
if @_sortColElem?
|
40
|
+
ELEM.del(@_sortColElem)
|
41
|
+
@_sortColElem = null
|
42
|
+
delete @_sortColElem
|
39
43
|
@drawHeader()
|
40
44
|
@refreshTable()
|
41
45
|
# if @colViews?
|
@@ -77,7 +81,7 @@ HTable = HControl.extend
|
|
77
81
|
_height = 24-_heightOffset
|
78
82
|
_topAdd = 24
|
79
83
|
_halfBorderWidth = Math.floor(_borderSize*0.5)
|
80
|
-
_widthOffset =
|
84
|
+
_widthOffset = _borderSize-_halfBorderWidth - 2
|
81
85
|
_borderLeftOffset = 0-_halfBorderWidth
|
82
86
|
for _colView, _colNum in @colViews
|
83
87
|
[ _left, _width ] = @headerSizes[_colNum]
|
@@ -87,12 +91,12 @@ HTable = HControl.extend
|
|
87
91
|
_width -= _halfBorderWidth if _borderSize % 2 == 1
|
88
92
|
else
|
89
93
|
_left += _borderLeftOffset-_widthOffset
|
90
|
-
_left -= _borderSize if _borderSize > 1
|
94
|
+
#_left -= _borderSize if _borderSize > 1
|
91
95
|
_width += _widthOffset
|
92
96
|
_width += _halfBorderWidth
|
93
97
|
_top = _borderLeftOffset
|
94
98
|
for _row, _rowNum in @_rows
|
95
|
-
@_bgCells
|
99
|
+
@_bgCells.push ELEM.make(
|
96
100
|
_parent, 'div',
|
97
101
|
styles:
|
98
102
|
backgroundColor: @_cellBgColorOf(_rowNum,_colNum)
|
@@ -108,25 +112,21 @@ HTable = HControl.extend
|
|
108
112
|
_sizes = []
|
109
113
|
_autoWidths = []
|
110
114
|
_sortFns = []
|
111
|
-
_left =
|
115
|
+
_left = 0
|
112
116
|
_table = @
|
117
|
+
_sortColElem = null
|
118
|
+
_sortColClassName = (_styles)->
|
119
|
+
if _styles.textAlign? and _styles.textAlign == 'right'
|
120
|
+
ELEM.delClassName(_sortColElem,'sort')
|
121
|
+
ELEM.addClassName(_sortColElem,'sort_left')
|
122
|
+
else
|
123
|
+
ELEM.delClassName(_sortColElem,'sort_left')
|
124
|
+
ELEM.addClassName(_sortColElem,'sort')
|
113
125
|
for _headerCol, i in @options.headerCols
|
114
|
-
_left += 6
|
115
126
|
_elemId = ELEM.make( @markupElemIds.header, 'div' )
|
116
127
|
@options.sortDescending[i] = false unless @options.sortDescending[i]?
|
117
128
|
ELEM.addClassName(_elemId,'table_header_column')
|
118
|
-
|
119
|
-
if @options.sortCol == i
|
120
|
-
_headerCol += '<div class="sort">'
|
121
|
-
if @options.sortDescending[i]
|
122
|
-
_headerCol += '▼'
|
123
|
-
else
|
124
|
-
_headerCol += '▲'
|
125
|
-
_headerCol += '</div>'
|
126
|
-
_width = -6 #26
|
127
|
-
else
|
128
|
-
_width = -6 #26
|
129
|
-
# ELEM.setStyle(_elemId,'font-weight','normal',true)
|
129
|
+
_width = 0
|
130
130
|
if @options.colWidths[i]?
|
131
131
|
if @options.colWidths[i] == 'auto'
|
132
132
|
_autoWidths.push(i)
|
@@ -137,6 +137,18 @@ HTable = HControl.extend
|
|
137
137
|
_sizes.push([_left,_width])
|
138
138
|
ELEM.setAttr(_elemId,'sortcol',i)
|
139
139
|
ELEM.setHTML(_elemId,_headerCol)
|
140
|
+
if @options.sortCol == i
|
141
|
+
_sortColElem = ELEM.make( _elemId, 'div' )
|
142
|
+
if @options.headerStyles? and @options.headerStyles[i]?
|
143
|
+
_sortColClassName( @options.headerStyles[i] )
|
144
|
+
else if @options.defaultHeaderStyle
|
145
|
+
_sortColClassName( @options.defaultHeaderStyle )
|
146
|
+
else
|
147
|
+
ELEM.addClassName( _sortColElem, 'sort' )
|
148
|
+
if @options.sortDescending[i]
|
149
|
+
ELEM.setHTML( _sortColElem, '▼' )
|
150
|
+
else
|
151
|
+
ELEM.setHTML( _sortColElem, '▲' )
|
140
152
|
_sortFns.push((e)->
|
141
153
|
_table.sortByCol(@sortcol)
|
142
154
|
e.preventDefault()
|
@@ -153,20 +165,24 @@ HTable = HControl.extend
|
|
153
165
|
ELEM.setStyle(_elemId,'left',_left+_plusLeft+'px')
|
154
166
|
_sizes[i][0] = _left+_plusLeft
|
155
167
|
if _autoWidths.indexOf(i) != -1
|
156
|
-
_width = _autoWidth
|
168
|
+
_width = _autoWidth
|
157
169
|
# _width += 20 if i == @options.sortCol
|
158
170
|
_sizes[i][1] = _width
|
159
171
|
_plusLeft += _autoWidth
|
160
172
|
ELEM.setStyle(_elemId,'width',_width+'px')
|
173
|
+
if @options.headerStyles? and @options.headerStyles[i]?
|
174
|
+
ELEM.setStyles( _elemId, @options.headerStyles[i] )
|
175
|
+
else if @options.defaultHeaderStyle
|
176
|
+
ELEM.setStyles( _elemId, @options.defaultHeaderStyle )
|
161
177
|
@_destroyHeader()
|
162
|
-
ELEM.flush()
|
163
178
|
@headerCols = _elemIds
|
164
179
|
@headerSizes = _sizes
|
180
|
+
@_sortColElem = _sortColElem
|
165
181
|
@sortFns = _sortFns
|
166
182
|
resize: ->
|
167
183
|
@drawHeader()
|
168
184
|
for _colNum in [0..@headerCols.length-1]
|
169
|
-
_left = @headerSizes[_colNum][0]
|
185
|
+
_left = @headerSizes[_colNum][0] + 1
|
170
186
|
_width = @headerSizes[_colNum][1]
|
171
187
|
@colViews[_colNum].rect.offsetTo( _left, 0 )
|
172
188
|
@colViews[_colNum].rect.setWidth( _width )
|
@@ -176,7 +192,7 @@ HTable = HControl.extend
|
|
176
192
|
if @options.headerCols
|
177
193
|
@drawHeader()
|
178
194
|
else
|
179
|
-
@setStyleOfPart('
|
195
|
+
@setStyleOfPart('subview','top',0)
|
180
196
|
_findClassInNameSpace: (_className)->
|
181
197
|
if typeof _className == 'function' and _className.hasAncestor? and _className.hasAncestor( HControl )
|
182
198
|
return _className
|
@@ -186,7 +202,7 @@ HTable = HControl.extend
|
|
186
202
|
return @options.defaultColClass
|
187
203
|
_getClassNameAndValueOfCol: (_col, _colNum)->
|
188
204
|
if @options.colOptions[_colNum]?
|
189
|
-
_colOption = @options.colOptions[_colNum]
|
205
|
+
_colOption = @cloneObject( @options.colOptions[_colNum] )
|
190
206
|
else
|
191
207
|
_colOption = @cloneObject( @options.defaultColOptions )
|
192
208
|
if @options.colClasses[_colNum]?
|
@@ -206,8 +222,10 @@ HTable = HControl.extend
|
|
206
222
|
_row[_colNum]
|
207
223
|
@_rows = []
|
208
224
|
@_rowsDrawn = false
|
209
|
-
filterRow: (_value)->
|
210
|
-
|
225
|
+
filterRow: (_value)-> false
|
226
|
+
sortEq: (a, b, _col)-> a == b
|
227
|
+
sortLt: (a, b, _col)-> a < b
|
228
|
+
sortGt: (a, b, _col)-> a > b
|
211
229
|
sortTableRows: ->
|
212
230
|
_rowsVisible = 0
|
213
231
|
_col = @options.sortCol
|
@@ -224,19 +242,22 @@ HTable = HControl.extend
|
|
224
242
|
_nextCols = [ @options.sortOrder[_col] ]
|
225
243
|
else
|
226
244
|
_nextCols = []
|
245
|
+
_sortEq = @sortEq
|
246
|
+
_sortLt = @sortLt
|
247
|
+
_sortGt = @sortGt
|
227
248
|
_rowSorter = (_row1, _row2, _col, _nextCols, _desc)->
|
228
249
|
_r1 = _row1[0][_col]
|
229
250
|
_r2 = _row2[0][_col]
|
230
|
-
while _r1
|
251
|
+
while _sortEq( _r1, _r2, _col ) and _nextCols.length > 0
|
231
252
|
_nextCol = _nextCols.shift()
|
232
253
|
_desc = _sortDescending[_nextCol]
|
233
254
|
_r1 = _row1[0][_nextCol]
|
234
255
|
_r2 = _row2[0][_nextCol]
|
235
|
-
return 0 if _r1
|
256
|
+
return 0 if _sortEq( _r1, _r2, _col )
|
236
257
|
if _desc
|
237
|
-
return 1 if _r1
|
258
|
+
return 1 if _sortLt( _r1, _r2, _col )
|
238
259
|
else
|
239
|
-
return 1 if _r1
|
260
|
+
return 1 if _sortGt( _r1, _r2, _col )
|
240
261
|
return -1
|
241
262
|
_rowSort.sort( (_row1,_row2)->
|
242
263
|
_rowSorter(_row1, _row2, _col, HVM.clone(_nextCols), _desc)
|
@@ -257,14 +278,11 @@ HTable = HControl.extend
|
|
257
278
|
@_rowsVisible = _rowsVisible
|
258
279
|
refreshTableRows: (_newData)->
|
259
280
|
return unless @headerCols?
|
260
|
-
|
261
|
-
|
262
|
-
if @colViews?
|
263
|
-
_colViews = @colViews
|
264
|
-
else
|
281
|
+
_colViews = @colViews
|
282
|
+
unless _colViews
|
265
283
|
_colViews = []
|
266
284
|
for _colNum in [0..@headerCols.length-1]
|
267
|
-
_left = @headerSizes[_colNum][0]
|
285
|
+
_left = @headerSizes[_colNum][0] + 1
|
268
286
|
_width = @headerSizes[_colNum][1]
|
269
287
|
_colViews[_colNum] = HView.nu( [ _left, 0, _width, 1 ], @ )
|
270
288
|
@colViews = _colViews
|
@@ -277,38 +295,65 @@ HTable = HControl.extend
|
|
277
295
|
_ctrl.setValue( _col )
|
278
296
|
@sortTableRows()
|
279
297
|
else
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
|
298
|
+
@createTableRows()
|
299
|
+
createTableRows: ->
|
300
|
+
@_destroyRows() if @_rowsDrawn
|
301
|
+
_start = new Date().getTime()
|
302
|
+
_top = 0
|
303
|
+
_rowHeight = 24
|
304
|
+
_rows = []
|
305
|
+
_viewDefs = []
|
306
|
+
_colViews = @colViews
|
307
|
+
for _row, _rowNum in @value
|
308
|
+
_rows[_rowNum] = []
|
309
|
+
for _col, _colNum in _row
|
310
|
+
[ _colClass, _colOpts ] = @_getClassNameAndValueOfCol(_col, _colNum)
|
311
|
+
_colOpts.value = _col
|
312
|
+
_colOpts.tableRow = _rowNum
|
313
|
+
_colOpts.tableCol = _colNum
|
314
|
+
_colOpts.autoDraw = false unless _colOpts.autoDraw?
|
315
|
+
_viewDefs.push( [_colClass,_rowNum,_colNum,_top,_rowHeight,_colViews[_colNum],_colOpts] )
|
316
|
+
_top += _rowHeight
|
317
|
+
for _colView in _colViews
|
318
|
+
_colView.rect.setHeight(_top)
|
319
|
+
_colView.drawRect()
|
320
|
+
_finishDraw = =>
|
300
321
|
@_rows = _rows
|
301
322
|
@_rowsDrawn = true
|
302
323
|
@sortTableRows()
|
324
|
+
if @options.useCellGrid
|
325
|
+
@pushTask => @_drawCellStyles()
|
326
|
+
if _viewDefs.length > 0
|
327
|
+
@pushTask =>
|
328
|
+
_viewsToDraw = []
|
329
|
+
_count = _viewDefs.length
|
330
|
+
_progress = HProgressBar.new([0,0,@rect.width,24],@,visible:false)
|
331
|
+
setTimeout( ->
|
332
|
+
_progress.show()
|
333
|
+
, 100 )
|
334
|
+
_itemNum = 0
|
335
|
+
for i in [0.._count-1]
|
336
|
+
@pushTask =>
|
337
|
+
_itemNum+=1
|
338
|
+
[_colClass,_rowNum,_colNum,y,h,_parent,_colOpts] = _viewDefs.shift()
|
339
|
+
_view = _colClass.new( [ 0,y,null,h,0,null ], _parent, _colOpts )
|
340
|
+
_rows[_rowNum][_colNum] = _view
|
341
|
+
_progress.setValue(_itemNum/_count)
|
342
|
+
_viewsToDraw.push(_view)
|
343
|
+
@pushTask =>
|
344
|
+
_colView.draw() for _colView in _viewsToDraw
|
345
|
+
@pushTask( _finishDraw )
|
346
|
+
_progress.die()
|
347
|
+
# console.log('table render took:',@msNow()-_start,'ms') if !@isProduction
|
348
|
+
else _finishDraw()
|
303
349
|
refreshTableCols: (_newData)->
|
304
350
|
console.warn('HTable#refreshTableCols is not implemented yet!')
|
305
351
|
refreshTable: (_newData)->
|
306
352
|
if @options.tableType == 'rows'
|
307
353
|
@refreshTableRows(_newData)
|
308
354
|
else if @options.tableType == 'cols'
|
309
|
-
console.
|
355
|
+
console.warn('ERROR; refreshTable: tableType \'cols\' not supported!')
|
310
356
|
@refreshTableCols(_newData)
|
311
|
-
@_drawCellStyles() if @options.useCellGrid and _newData
|
312
357
|
refreshValue: ->
|
313
358
|
if @value instanceof Array
|
314
359
|
@refreshTable( true )
|
@@ -15,10 +15,14 @@
|
|
15
15
|
top: 1px; height: 20px; position: absolute;
|
16
16
|
cursor: pointer; border-right: 1px solid #ccc;
|
17
17
|
font-weight: bold;
|
18
|
+
text-indent: 6px;
|
18
19
|
}
|
19
20
|
.default > .table_header > .table_header_column > .sort {
|
20
21
|
position: absolute; top: 1px; right: 2px;
|
21
22
|
}
|
23
|
+
.default > .table_header > .table_header_column > .sort_left {
|
24
|
+
position: absolute; top: 1px; left: 2px;
|
25
|
+
}
|
22
26
|
.default > .table_body {
|
23
27
|
position: absolute; top: 24px; left: 0; right: 0; bottom: 0;
|
24
28
|
overflow: auto; overflow-x: hidden;
|