diff --git a/js/app/models/PlotObjects/PlotAxisObject.js b/js/app/models/PlotObjects/PlotAxisObject.js index d5e8b26..1fe6a86 100644 --- a/js/app/models/PlotObjects/PlotAxisObject.js +++ b/js/app/models/PlotObjects/PlotAxisObject.js @@ -33,8 +33,8 @@ Ext.define('amdaPlotObj.PlotAxisObject', { {name: 'axis-color', type: 'string'}, {name: 'axis-thickness', type: 'int'}, {name: 'axis-tick-showmarks', type: 'boolean'}, - {name: 'axis-grid-spicify-ticks-number', type: 'boolean'}, - {name: 'axis-grid-spicify-ticks-spacing', type: 'boolean'}, + {name: 'axis-grid-specify-ticks-number', type: 'boolean'}, + {name: 'axis-grid-specify-ticks-spacing', type: 'boolean'}, {name: 'axis-tick-position', type: 'string'}, {name: 'axis-grid-minor', type: 'boolean'}, {name: 'axis-grid-major', type: 'boolean'}, @@ -100,8 +100,8 @@ Ext.define('amdaPlotObj.PlotAxisObject', { this.set('axis-grid-minor-space',0); this.set('axis-grid-major-space',0); this.set('axis-grid-minor', false); - this.set('axis-grid-spicify-ticks-number', false); - this.set('axis-grid-spicify-ticks-spacing', false); + this.set('axis-grid-specify-ticks-number', false); + this.set('axis-grid-specify-ticks-spacing', false); this.set('axis-grid-major', false); this.set('axis-legend-activated', true); this.set('axis-legend-text', ''); @@ -142,8 +142,10 @@ Ext.define('amdaPlotObj.PlotAxisObject', { axisValues['axis-grid-major'] = this.get('axis-grid-major'); axisValues['axis-grid-minor-number']=this.get('axis-grid-minor-number'); axisValues['axis-grid-major-number']=this.get('axis-grid-major-number'); + axisValues['axis-grid-specify-ticks-number']=this.get('axis-grid-specify-ticks-number'); axisValues['axis-grid-minor-space']=this.get('axis-grid-minor-space'); axisValues['axis-grid-major-space']=this.get('axis-grid-major-space'); + axisValues['axis-grid-specify-ticks-spacing']=this.get('axis-grid-specify-ticks-spacing'); axisValues['axis-legend-activated'] = this.get('axis-legend-activated'); axisValues['axis-legend-text'] = this.get('axis-legend-text'); axisValues['axis-legend-color'] = this.get('axis-legend-color'); diff --git a/js/app/views/PlotComponents/PlotBaseAxisForm.js b/js/app/views/PlotComponents/PlotBaseAxisForm.js index 24f473f..943c511 100644 --- a/js/app/views/PlotComponents/PlotBaseAxisForm.js +++ b/js/app/views/PlotComponents/PlotBaseAxisForm.js @@ -15,8 +15,11 @@ Ext.define('amdaPlotComp.PlotBaseAxisForm', { showColorOption : true, showRangeOptions : true, showTickGridOptions : true, + disableTicksSpacing : true, + disableTicksNumbers : true, getFormItems: function() { + var me = this; var rangeItems = [ this.addStandardFloat2('axis-range-min', 'Min', -Number.MAX_VALUE, Number.MAX_VALUE), this.addStandardFloat2('axis-range-max', 'Max', -Number.MAX_VALUE, Number.MAX_VALUE), @@ -28,18 +31,37 @@ Ext.define('amdaPlotComp.PlotBaseAxisForm', { this.addStandardColor('axis-legend-color', 'Color', amdaPlotObj.PlotObjectConfig.availableColors), this.addStandardFont('axis-legend-font') ]; - + var manageTicksNumber = function (name, newValue, oldValue){ + var disableTicksNumbers = me.getForm( ).findField('axis-grid-minor-number').disabled + me.getForm( ).findField('axis-grid-minor-number').setDisabled( !newValue); + me.getForm( ).findField('axis-grid-major-number').setDisabled( !newValue); + if( newValue){ + me.getForm( ).findField('axis-grid-minor-space').setDisabled(newValue); + me.getForm( ).findField('axis-grid-major-space').setDisabled(newValue); + me.getForm( ).findField('axis-grid-specify-ticks-spacing').setValue(!newValue); + } + }; + var manageTicksSpacing = function (name, newValue, oldValue){ + var disableTicksSacing = me.getForm( ).findField('axis-grid-minor-space').disabled + me.getForm( ).findField('axis-grid-minor-space').setDisabled( !newValue ); + me.getForm( ).findField('axis-grid-major-space').setDisabled( !newValue ); + if( newValue ){ + me.getForm( ).findField('axis-grid-minor-number').setDisabled(newValue); + me.getForm( ).findField('axis-grid-major-number').setDisabled(newValue); + me.getForm( ).findField('axis-grid-specify-ticks-number').setValue(!newValuee); + } + }; var tickGridItems = [ this.addStandardCombo('axis-tick-position', 'Ticks position', amdaPlotObj.PlotObjectConfig.availableTicksPositions), this.addStandardCheck('axis-tick-showmarks', 'Show tick marks'), this.addStandardCheck('axis-grid-major', 'Show major grid'), this.addStandardCheck('axis-grid-minor', 'Show minor grid'), - this.addStandardCheck('axis-grid-spicify-ticks-number', 'spicify ticks number'), - this.addStandardInteger('axis-grid-major-number', 'Nb of Major Ticks', 0, Number.MAX_VALUE,true), - this.addStandardInteger('axis-grid-minor-number', 'Nb of Minor Ticks', 0, Number.MAX_VALUE,true), - this.addStandardCheck('axis-grid-spicify-ticks-spacing', 'spicify ticks spacing'), - this.addStandardFloat2('axis-grid-major-space', ' Major Ticks Space', 0, Number.MAX_VALUE,true), - this.addStandardFloat2('axis-grid-minor-space', ' Minor Ticks Space', 0, Number.MAX_VALUE,true), + this.addStandardCheck('axis-grid-specify-ticks-number', 'Specify ticks number', manageTicksNumber), + this.addStandardInteger('axis-grid-major-number', 'Nb of Major Ticks', 0, Number.MAX_VALUE,true,true), + this.addStandardInteger('axis-grid-minor-number', 'Nb of Minor Ticks', 0, Number.MAX_VALUE,true,true), + this.addStandardCheck('axis-grid-specify-ticks-spacing', 'Specify ticks spacing',manageTicksSpacing), + this.addStandardFloat2('axis-grid-major-space', ' Major Ticks Space', 0, Number.MAX_VALUE,true,true), + this.addStandardFloat2('axis-grid-minor-space', ' Minor Ticks Space', 0, Number.MAX_VALUE,true,true), ]; diff --git a/js/app/views/PlotComponents/PlotStandardForm.js b/js/app/views/PlotComponents/PlotStandardForm.js index 8787022..c10b552 100644 --- a/js/app/views/PlotComponents/PlotStandardForm.js +++ b/js/app/views/PlotComponents/PlotStandardForm.js @@ -83,7 +83,7 @@ Ext.define('amdaPlotComp.PlotStandardForm', { } }; }, - addStandardInteger: function(name, label, min, max, allowBlank, onChange) { + addStandardInteger: function(name, label, min, max, allowBlank, disabled,onChange) { allowBlank = (typeof allowBlank !== 'undefined') ? allowBlank : false; return { @@ -91,6 +91,7 @@ Ext.define('amdaPlotComp.PlotStandardForm', { xtype: 'numberfield', name: name, fieldLabel: label, + disabled:(disabled)? true:false, regex:/^\d+$/, decimalPrecision : 20, minValue : min, @@ -107,7 +108,7 @@ Ext.define('amdaPlotComp.PlotStandardForm', { }; }, - addStandardFloat2: function(name, label, min, max, allowBlank, onChange,disable) { + addStandardFloat2: function(name, label, min, max, allowBlank, disabled, onChange) { allowBlank = (typeof allowBlank !== 'undefined') ? allowBlank : false; return { @@ -116,7 +117,7 @@ Ext.define('amdaPlotComp.PlotStandardForm', { name: name, fieldLabel: label, regex : /[-+]?(?:\d*\.?\d+|\d+\.?\d*)(?:[eE][-+]?\d+)?/, - disable:disable, + disabled:(disabled)? true:false, validator: function (val) { var errMsg = null; if (!allowBlank && Ext.isEmpty(val)) { @@ -179,13 +180,6 @@ Ext.define('amdaPlotComp.PlotStandardForm', { this.object.set(name, newValue); if (onChange != null) onChange(name, newValue, oldValue); - if(name=='axis-grid-spicify-ticks-number'){ - console.log(tyopeof(this)); - }else if(name=='axis-grid-spicify-ticks-spacing'){ - this.desableTickSpacing=! this.desableTickSpacing; - console.log( this.getDockedComponent('axis-grid-spicify-ticks-spacing')); - console.log( this.getDockedComponent(1)); - } }, scope: this } -- libgit2 0.21.2