Blame view

js/app/views/PlotComponents/PlotTabContent.js 2.21 KB
437c4dbc   Benjamin Renard   First implementat...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/**
 * Project   : AMDA-NG
 * Name      : PlotTab.js
 * @class   amdaPlotComp.PlotTab
 * @extends Ext.form.Panel
 * @brief   Tab content to define a plot
 * @author  Benjamin Renard
 * @version $Id: PlotTab.js benjamin $
 */

Ext.define('amdaPlotComp.PlotTabContent', {
	extend: 'Ext.form.Panel',
	
	requires: [
	           'amdaUI.TimeSelectorUI',
	           'amdaPlotComp.PlotTree'
    ],
	
    treePlot: null,
    
    //Link to the Plot Element Panel
    plotElementPanel: null,
    
27b2a53e   Benjamin Renard   Link tab plot to ...
24
25
26
27
28
29
    //linkk to the Plot Tab Panel
    plotTabPanel : null,
    
    //Link to the time selctor
    timeSelector : null,
    
437c4dbc   Benjamin Renard   First implementat...
30
31
32
33
34
35
36
37
38
39
40
    //Tab Object
    object: null,
    
    constructor: function(config) {
		this.init(config);	    
		this.callParent(arguments);
	},
	
	setTabObject : function(object) {
		this.object = object;
		this.treePlot.buildTree(this.object);
27b2a53e   Benjamin Renard   Link tab plot to ...
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
		this.timeSelector.intervalSel.setInterval(this.object.get('startDate'), this.object.get('stopDate'));
	},
	
	updateLinkedToMultiPlotMode : function (isLinkedToMultiPlotMode) {
		this.timeSelector.setVisible(!isLinkedToMultiPlotMode);
		this.plotTabPanel.updateLinkedToMultiPlotMode(isLinkedToMultiPlotMode);
	},
	
	updateTimeObject : function() {
		var timeSource = this.timeSelector.getActiveTimeSource();
    	var tabForm = this.getForm();
    	tabForm.updateRecord(this.object);
    	this.object.set('timesrc', timeSource);
    	if (timeSource === amdaModel.AmdaTimeObject.inputTimeSrc[0])
        	this.object.set('timeTables',this.timeSelector.TTGrid.getStore().data.items);
437c4dbc   Benjamin Renard   First implementat...
56
57
58
59
60
61
	},
	
	init : function(config) {
		var me = this;
		
		this.plotElementPanel = config.plotElementPanel;
27b2a53e   Benjamin Renard   Link tab plot to ...
62
		this.plotTabPanel = config.plotTabPanel;
437c4dbc   Benjamin Renard   First implementat...
63
		
27b2a53e   Benjamin Renard   Link tab plot to ...
64
65
		this.timeSelector = new amdaUI.TimeSelectorUI( { id: 'plotTimeSelectorTab' + config.tabId, flex: 2, hidden: true} );
		this.treePlot = new amdaPlotComp.PlotTree({flex: 3, plotElementPanel: this.plotElementPanel, plotTabContent: this});
437c4dbc   Benjamin Renard   First implementat...
66
67
68
69
70
71
72
73
74
75
76
77
		
		var myConf = {
				bodyStyle: { background : '#dfe8f6' },  
				defaults: {
					border: false
				},
				layout: {
				    type: 'vbox',
				    pack: 'start',
				    align: 'stretch'
				},
				items: [
27b2a53e   Benjamin Renard   Link tab plot to ...
78
79
				        this.treePlot,
				        this.timeSelector
437c4dbc   Benjamin Renard   First implementat...
80
81
82
83
84
85
86
87
				]
		};
		
		Ext.apply (this , Ext.apply (arguments, myConf));
		
		
	}
});