PlotLegendTextObject.js 3.18 KB
/**
 * Project      : AMDA-NG
 * Name         : PlotLegendTextObject.js
 * @class   amdaPlotObj.PlotLegendTextObject
 * @extends Ext.data.Model
 * @brief   Plot Text Legend Business Object Definition 
 * @author  Benjamin Renard
 * @version $Id: PlotLegendTextObject.js benjamin $
 ******************************************************************************
 *    FT Id     :   Date   : Name - Description
 ******************************************************************************
 *	:           :01/09/2015: BRE  - file creation
 */
 
 		
Ext.define('amdaPlotObj.PlotLegendTextObject', {
	extend: 'Ext.data.Model',
	idProperty: 'id',
	
	requires: [
	           'amdaPlotObj.PlotObjectConfig'
	],
	
	fields : [
	          {name: 'id', type: 'int'},
	          {name: 'legend-text-value', type: 'string'},
	          {name: 'legend-text-position', type: 'string'},
	          {name: 'legend-text-color', type: 'string'},
	          {name: 'legend-text-font-activated', type: 'boolean'},
              {name: 'legend-text-font-name', type: 'string'},
              {name: 'legend-text-font-size', type: 'int'},
              {name: 'legend-text-font-bold', type: 'boolean'},
              {name: 'legend-text-font-italic', type: 'boolean'}
    ],
    
    constructor: function(){
        var me = this;
        me.callParent(arguments);
        if ((arguments.length > 0) && arguments[0])
        {
        }
        else
        {
        	//new object, set default fields values
        	me.setDefaultValues();
        }
        this.dirty = false;
    },
    
    setDefaultValues: function()
    {
    	this.set('legend-text-value', '');
    	this.set('legend-text-position', amdaPlotObj.PlotObjectConfig.defaultValues.legends.text.position);
    	this.set('legend-text-color', amdaPlotObj.PlotObjectConfig.defaultValues.legends.text.color);
    	this.set('legend-text-font-activated', false);
    	this.set('legend-text-font-name', amdaPlotObj.PlotObjectConfig.defaultValues.legends.text.font.name);
    	this.set('legend-text-font-size', amdaPlotObj.PlotObjectConfig.defaultValues.legends.text.font.size);
    	this.set('legend-text-font-bold', false);
    	this.set('legend-text-font-italic', false);
    },
    
    getShortInfo : function()
    {
    	var position = amdaPlotObj.PlotObjectConfig.getValueByKey(amdaPlotObj.PlotObjectConfig.availableLegendTextPositions, this.get('legend-text-position'));
		return position;
    },
    
    getJsonValues : function() 
    {
    	var legendValues  = new Object();
    	
    	legendValues['id'] = this.get('id');    	
    	legendValues['legend-text-value'] = this.get('legend-text-value');
    	legendValues['legend-text-position'] = this.get('legend-text-position');
    	legendValues['legend-text-color'] = this.get('legend-text-color');
    	legendValues['legend-text-font-activated'] = this.get('legend-text-font-activated');
    	legendValues['legend-text-font-name'] = this.get('legend-text-font-name');
    	legendValues['legend-text-font-size'] = this.get('legend-text-font-size');
    	legendValues['legend-text-font-bold'] = this.get('legend-text-font-bold');
    	legendValues['legend-text-font-italic'] = this.get('legend-text-font-italic');
    	
    	return legendValues;
    }
});