Commit 9162d1699546b1338c89c5c4194f95eaf2fddc2a
1 parent
21baafbc
Exists in
master
and in
24 other branches
Add symbolic link to color map definition into spectro form
Showing
3 changed files
with
80 additions
and
61 deletions
Show diff stats
js/app/views/PlotComponents/PlotColorAxisForm.js
... | ... | @@ -15,68 +15,11 @@ Ext.define('amdaPlotComp.PlotColorAxisForm', { |
15 | 15 | showTickGridOptions : false, |
16 | 16 | |
17 | 17 | getFormItems: function() { |
18 | - var data = []; | |
19 | - amdaPlotObj.PlotObjectConfig.availableColorMaps.forEach(function(color){ | |
20 | - data.push({key:color.key,name:color.value, iconUrl:'generic_data/colormaps/'+ color.svgFile}) | |
21 | - }); | |
22 | - | |
23 | - var combo = new Ext.form.ComboBox({ | |
24 | - name: 'axis-color-map', | |
25 | - fieldLabel: 'Colour Map <img amda_clicktip="colourMaps" style="vertical-align:bottom" src="js/resources/images/16x16/info_mini.png"', | |
26 | - store: new Ext.data.Store({ | |
27 | - fields: ['key','name', 'iconUrl'], | |
28 | - data: data | |
29 | - }), | |
30 | - displayField: 'name', | |
31 | - valueField: 'key', | |
32 | - tpl: '<tpl for="."><div class="x-boundlist-item"><span data-qtip="{name}"> \ | |
33 | - <img src="{iconUrl}" class="svg-icon" style="height: 26px;"> \ | |
34 | - </span>\ | |
35 | - </div></tpl>', | |
36 | - editable: false, | |
37 | - queryMode: 'local', | |
38 | - listeners: { | |
39 | - change: function (combo, newValue, oldValue, eOpts) { | |
40 | - var iconUrl=""; | |
41 | - var colorName = ""; | |
42 | - data.forEach(function(colorData){ | |
43 | - if(colorData.key == newValue ){ | |
44 | - iconUrl= colorData.iconUrl; | |
45 | - colorName = colorData.name; | |
46 | - } | |
47 | - }); | |
48 | - combo.inputEl.setStyle('background-image', 'url(' + iconUrl + ')'); | |
49 | - combo.inputEl.setStyle('background-size', '100%'); | |
50 | - combo.inputEl.setStyle('background-repeat', 'no-repeat'); | |
51 | - combo.inputEl.setStyle('background-position', 'center'); | |
52 | - combo.inputEl.setStyle('font-size', '0'); | |
53 | - | |
54 | - combo.inputEl.set({ "data-qtip": Ext.String.htmlDecode(colorName) }); | |
55 | - | |
56 | - this.object.set('axis-color-map', newValue); | |
57 | - }, | |
58 | - click: { | |
59 | - element: 'el', | |
60 | - fn: function(e,t) { | |
61 | - var me = t, | |
62 | - text = me.getAttribute('amda_clicktip'); | |
63 | - if (text) { | |
64 | - e.preventDefault(); | |
65 | - AmdaAction.getInfo({name : text}, function(res,e) { | |
66 | - if (res.success) myDesktopApp.infoMsg(res.result); | |
67 | - }); | |
68 | - } | |
69 | - } | |
70 | - }, | |
71 | - scope:this | |
72 | - }, | |
73 | - }); | |
74 | - | |
75 | - | |
76 | 18 | |
77 | - var timeItems = [combo, | |
78 | - this.addColorsPicker('axis-color-minval', 'Min. Val. Color', amdaPlotObj.PlotObjectConfig.availableColorsNew, 'none'), | |
79 | - this.addColorsPicker('axis-color-maxval', 'Max. Val. Color', amdaPlotObj.PlotObjectConfig.availableColorsNew, 'none') | |
19 | + var timeItems = [ | |
20 | + this.addColorMapCombo('axis-color-map'), | |
21 | + this.addColorsPicker('axis-color-minval', 'Min. Val. Color', amdaPlotObj.PlotObjectConfig.availableColorsNew, 'none'), | |
22 | + this.addColorsPicker('axis-color-maxval', 'Max. Val. Color', amdaPlotObj.PlotObjectConfig.availableColorsNew, 'none') | |
80 | 23 | ]; |
81 | 24 | |
82 | 25 | return Ext.Array.merge(timeItems, this.callParent()); |
... | ... |
js/app/views/PlotComponents/PlotSpectroForm.js
... | ... | @@ -21,6 +21,16 @@ Ext.define('amdaPlotComp.PlotSpectroForm', { |
21 | 21 | this.loadRecord(this.object); |
22 | 22 | }, |
23 | 23 | |
24 | + setParentObject: function (parentObject) { | |
25 | + this.callParent(arguments); | |
26 | + this.updateColorMap(); | |
27 | + }, | |
28 | + | |
29 | + updateColorMap: function() { | |
30 | + var colorAxisObj = this.parentObject.axes().getById('color'); | |
31 | + this.getForm().findField('spectro-color-map').setValue(colorAxisObj.get('axis-color-map')); | |
32 | + }, | |
33 | + | |
24 | 34 | getValuesRangeItems: function () { |
25 | 35 | return [ |
26 | 36 | this.addStandardFloat2('spectro-value-min', 'Min value', -Number.MAX_VALUE, Number.MAX_VALUE, true), |
... | ... | @@ -267,6 +277,9 @@ Ext.define('amdaPlotComp.PlotSpectroForm', { |
267 | 277 | }); |
268 | 278 | |
269 | 279 | return [ |
280 | + this.addColorMapCombo('spectro-color-map', function(name, newValue, oldValue){ | |
281 | + ref.parentObject.axes().getById('color').set('axis-color-map', newValue); | |
282 | + }), | |
270 | 283 | this.addStandardCombo('spectro-resolution', 'Points per plot', amdaPlotObj.PlotObjectConfig.availableResolutions, function (name, value, oldValue) { |
271 | 284 | ref.object.set('spectro-resolution', value); |
272 | 285 | }), |
... | ... |
js/app/views/PlotComponents/PlotStandardForm.js
... | ... | @@ -435,6 +435,69 @@ Ext.define('amdaPlotComp.PlotStandardForm', { |
435 | 435 | }}); |
436 | 436 | }, |
437 | 437 | |
438 | + addColorMapCombo: function (name, onChange) { | |
439 | + var data = []; | |
440 | + amdaPlotObj.PlotObjectConfig.availableColorMaps.forEach(function(color){ | |
441 | + data.push({key:color.key,name:color.value, iconUrl:'generic_data/colormaps/'+ color.svgFile}) | |
442 | + }); | |
443 | + | |
444 | + var combo = new Ext.form.ComboBox({ | |
445 | + name: name, | |
446 | + fieldLabel: 'Colour Map <img amda_clicktip="colourMaps" style="vertical-align:bottom" src="js/resources/images/16x16/info_mini.png"', | |
447 | + store: new Ext.data.Store({ | |
448 | + fields: ['key','name', 'iconUrl'], | |
449 | + data: data | |
450 | + }), | |
451 | + displayField: 'name', | |
452 | + valueField: 'key', | |
453 | + tpl: '<tpl for="."><div class="x-boundlist-item"><span data-qtip="{name}"> \ | |
454 | + <img src="{iconUrl}" class="svg-icon" style="height: 26px;"> \ | |
455 | + </span>\ | |
456 | + </div></tpl>', | |
457 | + editable: false, | |
458 | + queryMode: 'local', | |
459 | + listeners: { | |
460 | + change: function (combo, newValue, oldValue, eOpts) { | |
461 | + var iconUrl=""; | |
462 | + var colorName = ""; | |
463 | + data.forEach(function(colorData){ | |
464 | + if(colorData.key == newValue ){ | |
465 | + iconUrl= colorData.iconUrl; | |
466 | + colorName = colorData.name; | |
467 | + } | |
468 | + }); | |
469 | + combo.inputEl.setStyle('background-image', 'url(' + iconUrl + ')'); | |
470 | + combo.inputEl.setStyle('background-size', '100%'); | |
471 | + combo.inputEl.setStyle('background-repeat', 'no-repeat'); | |
472 | + combo.inputEl.setStyle('background-position', 'center'); | |
473 | + combo.inputEl.setStyle('font-size', '0'); | |
474 | + | |
475 | + combo.inputEl.set({ "data-qtip": Ext.String.htmlDecode(colorName) }); | |
476 | + | |
477 | + this.object.set(name, newValue); | |
478 | + if (onChange != null) | |
479 | + onChange(name, newValue, oldValue); | |
480 | + }, | |
481 | + click: { | |
482 | + element: 'el', | |
483 | + fn: function(e,t) { | |
484 | + var me = t, | |
485 | + text = me.getAttribute('amda_clicktip'); | |
486 | + if (text) { | |
487 | + e.preventDefault(); | |
488 | + AmdaAction.getInfo({name : text}, function(res,e) { | |
489 | + if (res.success) myDesktopApp.infoMsg(res.result); | |
490 | + }); | |
491 | + } | |
492 | + } | |
493 | + }, | |
494 | + scope:this | |
495 | + }, | |
496 | + }); | |
497 | + | |
498 | + return combo; | |
499 | + }, | |
500 | + | |
438 | 501 | init: function (config) { |
439 | 502 | var me = this; |
440 | 503 | |
... | ... |