Commit 5f7932b85283b7b17f7a79a13844bb0cb3146902
1 parent
b350c87a
Exists in
master
and in
19 other branches
Done
Showing
7 changed files
with
90 additions
and
60 deletions
Show diff stats
generic_data/defaultValues.json
generic_data/defaultValuesConfig.json
... | ... | @@ -69,6 +69,13 @@ |
69 | 69 | { "key": "outwards", "value": "Outwards" } |
70 | 70 | ], |
71 | 71 | |
72 | + "availableTicksTimeUnits": [ | |
73 | + { "key": "default", "value": "Second(s)" }, | |
74 | + { "key": "min", "value": "Minute(s)" }, | |
75 | + { "key": "hour", "value": "Hour(s)" }, | |
76 | + { "key": "day", "value": "Days(s)" } | |
77 | + ], | |
78 | + | |
72 | 79 | "availableTimeAxisFormats": [ |
73 | 80 | { "key": "dd/mm/yy", "value": "dd/mm/yy" }, |
74 | 81 | { "key": "ddd/yy", "value": "ddd/yy" }, |
... | ... |
generic_data/defaultValuesLinks.json
js/app/models/PlotObjects/PlotAxisObject.js
... | ... | @@ -18,42 +18,43 @@ Ext.define('amdaPlotObj.PlotAxisObject', { |
18 | 18 | idProperty: 'id', |
19 | 19 | |
20 | 20 | fields : [ |
21 | - {name: 'id', type: 'string'}, | |
22 | - //axis-type can be : time, y-left, y-right, x, color, epoch | |
23 | - {name: 'axis-type', type: 'string'}, | |
24 | - {name: 'axis-reverse', type: 'boolean'}, | |
25 | - {name: 'axis-scale', type: 'string'}, | |
26 | - {name: 'axis-range-min', type: 'float'}, | |
27 | - {name: 'axis-range-max', type: 'float'}, | |
28 | - {name: 'axis-range-extend', type: 'boolean'}, | |
29 | - {name: 'axis-color', type: 'string'}, | |
30 | - {name: 'axis-thickness', type: 'int'}, | |
31 | - {name: 'axis-tick-showmarks', type: 'boolean'}, | |
32 | - {name: 'axis-grid-specify-ticks-number', type: 'boolean'}, | |
33 | - {name: 'axis-grid-specify-ticks-spacing', type: 'boolean'}, | |
34 | - {name: 'axis-tick-position', type: 'string'}, | |
35 | - {name: 'axis-grid-minor', type: 'boolean'}, | |
36 | - {name: 'axis-grid-major', type: 'boolean'}, | |
37 | - {name:'axis-grid-minor-number',type:'int'}, | |
38 | - {name:'axis-grid-major-number',type:'int'}, | |
39 | - {name:'axis-grid-major-space',type:'float'}, | |
40 | - {name:'axis-grid-minor-space',type:'float'}, | |
41 | - {name: 'axis-legend-activated', type: 'boolean'}, | |
42 | - {name: 'axis-legend-text', type: 'string'}, | |
43 | - {name: 'axis-legend-color', type: 'string'}, | |
44 | - {name: 'axis-legend-font-activated', type: 'boolean'}, | |
45 | - {name: 'axis-legend-font-name', type: 'string'}, | |
46 | - {name: 'axis-legend-font-size', type: 'int'}, | |
47 | - {name: 'axis-legend-font-bold', type: 'boolean'}, | |
48 | - {name: 'axis-legend-font-italic', type: 'boolean'}, | |
49 | - //only used for time axis | |
50 | - {name: 'axis-time-format', type: 'string'}, | |
51 | - //only used for epoch axis | |
52 | - {name: 'axis-epoch-normalized', type: 'boolean'}, | |
53 | - //only used for color axis | |
54 | - {name: 'axis-color-map', type: 'string'}, | |
55 | - {name: 'axis-color-minval', type: 'string'}, | |
56 | - {name: 'axis-color-maxval', type: 'string'} | |
21 | + {name: 'id', type: 'string'}, | |
22 | + //axis-type can be : time, y-left, y-right, x, color, epoch | |
23 | + {name: 'axis-type', type: 'string'}, | |
24 | + {name: 'axis-reverse', type: 'boolean'}, | |
25 | + {name: 'axis-scale', type: 'string'}, | |
26 | + {name: 'axis-range-min', type: 'float'}, | |
27 | + {name: 'axis-range-max', type: 'float'}, | |
28 | + {name: 'axis-range-extend', type: 'boolean'}, | |
29 | + {name: 'axis-color', type: 'string'}, | |
30 | + {name: 'axis-thickness', type: 'int'}, | |
31 | + {name: 'axis-tick-showmarks', type: 'boolean'}, | |
32 | + {name: 'axis-grid-specify-ticks-number', type: 'boolean'}, | |
33 | + {name: 'axis-grid-specify-ticks-spacing', type: 'boolean'}, | |
34 | + {name: 'axis-tick-time-unit', type: 'string'}, | |
35 | + {name: 'axis-tick-position', type: 'string'}, | |
36 | + {name: 'axis-grid-minor', type: 'boolean'}, | |
37 | + {name: 'axis-grid-major', type: 'boolean'}, | |
38 | + {name:'axis-grid-minor-number',type:'int'}, | |
39 | + {name:'axis-grid-major-number',type:'int'}, | |
40 | + {name:'axis-grid-major-space',type:'float'}, | |
41 | + {name:'axis-grid-minor-space',type:'float'}, | |
42 | + {name: 'axis-legend-activated', type: 'boolean'}, | |
43 | + {name: 'axis-legend-text', type: 'string'}, | |
44 | + {name: 'axis-legend-color', type: 'string'}, | |
45 | + {name: 'axis-legend-font-activated', type: 'boolean'}, | |
46 | + {name: 'axis-legend-font-name', type: 'string'}, | |
47 | + {name: 'axis-legend-font-size', type: 'int'}, | |
48 | + {name: 'axis-legend-font-bold', type: 'boolean'}, | |
49 | + {name: 'axis-legend-font-italic', type: 'boolean'}, | |
50 | + //only used for time axis | |
51 | + {name: 'axis-time-format', type: 'string'}, | |
52 | + //only used for epoch axis | |
53 | + {name: 'axis-epoch-normalized', type: 'boolean'}, | |
54 | + //only used for color axis | |
55 | + {name: 'axis-color-map', type: 'string'}, | |
56 | + {name: 'axis-color-minval', type: 'string'}, | |
57 | + {name: 'axis-color-maxval', type: 'string'} | |
57 | 58 | ], |
58 | 59 | |
59 | 60 | associations : [ |
... | ... | @@ -98,6 +99,7 @@ Ext.define('amdaPlotObj.PlotAxisObject', { |
98 | 99 | this.set('axis-grid-minor', false); |
99 | 100 | this.set('axis-grid-specify-ticks-number', false); |
100 | 101 | this.set('axis-grid-specify-ticks-spacing', false); |
102 | + this.set('axis-tick-time-unit',amdaDefaultValues.plot.axis.tickTimeUnit); | |
101 | 103 | this.set('axis-grid-major', false); |
102 | 104 | this.set('axis-legend-activated', true); |
103 | 105 | this.set('axis-legend-text', ''); |
... | ... | @@ -142,6 +144,7 @@ Ext.define('amdaPlotObj.PlotAxisObject', { |
142 | 144 | axisValues['axis-grid-minor-space']=this.get('axis-grid-minor-space'); |
143 | 145 | axisValues['axis-grid-major-space']=this.get('axis-grid-major-space'); |
144 | 146 | axisValues['axis-grid-specify-ticks-spacing']=this.get('axis-grid-specify-ticks-spacing'); |
147 | + axisValues['axis-tick-time-unit']= this.get('axis-tick-time-unit'); | |
145 | 148 | axisValues['axis-legend-activated'] = this.get('axis-legend-activated'); |
146 | 149 | axisValues['axis-legend-text'] = this.get('axis-legend-text'); |
147 | 150 | axisValues['axis-legend-color'] = this.get('axis-legend-color'); |
... | ... |
js/app/views/PlotComponents/PlotBaseAxisForm.js
... | ... | @@ -15,9 +15,28 @@ Ext.define('amdaPlotComp.PlotBaseAxisForm', { |
15 | 15 | showColorOption : true, |
16 | 16 | showRangeOptions : true, |
17 | 17 | showTickGridOptions : true, |
18 | - showTicksNumber: false, | |
19 | - showTicksSpacing:false, | |
18 | + showTicksNumber: false, | |
19 | + showTicksSpacing:false, | |
20 | + showTicksTimeSpacingCombo:false, | |
20 | 21 | |
22 | + setObject: function (object) { | |
23 | + this.callParent(arguments); | |
24 | + this.updateOptions(); | |
25 | + }, | |
26 | + | |
27 | + updateOptions : function(){ | |
28 | + var isShowTicksSpacingVisible = this.object.get('axis-grid-specify-ticks-spacing'); | |
29 | + var isShowTicksNumberVisible = this.object.get('axis-grid-specify-ticks-number'); | |
30 | + | |
31 | + var isTImeUnitVisible = this.showTicksTimeSpacingCombo && isShowTicksSpacingVisible ; | |
32 | + | |
33 | + this.getForm( ).findField('axis-grid-minor-space').setVisible( isShowTicksSpacingVisible ); | |
34 | + this.getForm( ).findField('axis-grid-major-space').setVisible( isShowTicksSpacingVisible ); | |
35 | + this.getForm( ).findField('axis-grid-minor-number').setVisible( isShowTicksNumberVisible); | |
36 | + this.getForm( ).findField('axis-grid-major-number').setVisible(isShowTicksNumberVisible); | |
37 | + this.getForm( ).findField('axis-tick-time-unit').setVisible( isTImeUnitVisible ); | |
38 | + }, | |
39 | + | |
21 | 40 | getFormItems: function() { |
22 | 41 | var me = this; |
23 | 42 | var rangeItems = [ |
... | ... | @@ -31,36 +50,28 @@ Ext.define('amdaPlotComp.PlotBaseAxisForm', { |
31 | 50 | this.addColorsPicker('axis-legend-color', 'Color', amdaDefaultConfigs.availableColorsNew, 'auto'), |
32 | 51 | this.addStandardFont('axis-legend-font') |
33 | 52 | ]; |
34 | - var manageTicksNumber = function (name, newValue, oldValue){ | |
35 | - | |
36 | - me.getForm( ).findField('axis-grid-minor-number').setVisible( newValue); | |
37 | - me.getForm( ).findField('axis-grid-major-number').setVisible( newValue); | |
38 | - if(newValue){ | |
39 | - me.getForm( ).findField('axis-grid-specify-ticks-spacing').setValue(!newValue); | |
40 | - } | |
41 | - | |
42 | - }; | |
43 | - var manageTicksSpacing = function (name, newValue, oldValue){ | |
44 | - me.getForm( ).findField('axis-grid-minor-space').setVisible( newValue ); | |
45 | - me.getForm( ).findField('axis-grid-major-space').setVisible( newValue ); | |
46 | - if(newValue){ | |
47 | - me.getForm( ).findField('axis-grid-specify-ticks-number').setValue(!newValue); | |
48 | - } | |
49 | - }; | |
53 | + var manageTicksFields= function (name, newValue, oldValue){ | |
54 | + if(newValue){ | |
55 | + if(name === 'axis-grid-specify-ticks-spacing') | |
56 | + me.getForm( ).findField('axis-grid-specify-ticks-number').setValue(!newValue); | |
57 | + else | |
58 | + me.getForm( ).findField('axis-grid-specify-ticks-spacing').setValue(!newValue); | |
59 | + } | |
60 | + me.updateOptions(); | |
61 | + }; | |
50 | 62 | |
51 | 63 | var tickGridItems = [ |
52 | 64 | this.addStandardCombo('axis-tick-position', 'Ticks position', amdaDefaultConfigs.availableTicksPositions), |
53 | 65 | this.addStandardCheck('axis-tick-showmarks', 'Show tick marks'), |
54 | 66 | this.addStandardCheck('axis-grid-major', 'Show major grid'), |
55 | 67 | this.addStandardCheck('axis-grid-minor', 'Show minor grid')]; |
56 | - tickGridItems.push(this.addStandardCheck('axis-grid-specify-ticks-number', 'Specify ticks number', manageTicksNumber)); | |
68 | + tickGridItems.push(this.addStandardCheck('axis-grid-specify-ticks-number', 'Specify ticks number', manageTicksFields)); | |
57 | 69 | tickGridItems.push(this.addStandardInteger('axis-grid-major-number', 'Nb of Major Ticks', 1, Number.MAX_VALUE,true,true)); |
58 | 70 | tickGridItems.push(this.addStandardInteger('axis-grid-minor-number', 'Nb of Minor Ticks', 1, Number.MAX_VALUE,true,true)); |
59 | - tickGridItems.push(this.addStandardCheck('axis-grid-specify-ticks-spacing', 'Specify ticks spacing',manageTicksSpacing)); | |
71 | + tickGridItems.push(this.addStandardCheck('axis-grid-specify-ticks-spacing', 'Specify ticks spacing',manageTicksFields)); | |
72 | + tickGridItems.push(this.addStandardCombo('axis-tick-time-unit', 'Time unit', amdaDefaultConfigs.availableTicksTimeUnits)); | |
60 | 73 | tickGridItems.push(this.addStandardFloat2('axis-grid-major-space', ' Major Ticks Space', 0, Number.MAX_VALUE,true,true)); |
61 | 74 | tickGridItems.push(this.addStandardFloat2('axis-grid-minor-space', ' Minor Ticks Space', 0, Number.MAX_VALUE,true,true)); |
62 | - | |
63 | - | |
64 | 75 | var axisItems = []; |
65 | 76 | if (this.showScaleOption) |
66 | 77 | axisItems.push(this.addStandardCombo('axis-scale', 'Scale', amdaDefaultConfigs.availableAxisScales)); |
... | ... |
js/app/views/PlotComponents/PlotEpochAxisForm.js
... | ... | @@ -13,7 +13,8 @@ Ext.define('amdaPlotComp.PlotEpochAxisForm', { |
13 | 13 | |
14 | 14 | showScaleOption : false, |
15 | 15 | showRangeOptions : false, |
16 | - showTicksNumberSpacing : false, | |
16 | + showTicksNumberSpacing : false, | |
17 | + showTicksTimeSpacingCombo :true, | |
17 | 18 | |
18 | 19 | getFormItems: function() { |
19 | 20 | var epochItems = [ |
... | ... |
js/app/views/PlotComponents/PlotTimeAxisForm.js
... | ... | @@ -13,9 +13,11 @@ Ext.define('amdaPlotComp.PlotTimeAxisForm', { |
13 | 13 | |
14 | 14 | showScaleOption : false, |
15 | 15 | showRangeOptions : false, |
16 | - showTicksNumberSpacing : false, | |
16 | + showTicksNumberSpacing : false, | |
17 | + showTicksTimeSpacingCombo :true, | |
17 | 18 | |
18 | 19 | getFormItems: function() { |
20 | + | |
19 | 21 | var timeItems = [ |
20 | 22 | this.addStandardCombo('axis-time-format', 'Time Format', amdaDefaultConfigs.availableTimeAxisFormats) |
21 | 23 | ]; |
... | ... |