⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 axisserializer.as

📁 拓扑图基于SNMP数据采集模块的设计和实现
💻 AS
字号:
package com.yahoo.yui.charts{	import com.yahoo.astra.fl.charts.axes.CategoryAxis;	import com.yahoo.astra.fl.charts.axes.IAxis;	import com.yahoo.astra.fl.charts.axes.NumericAxis;	import com.yahoo.astra.fl.charts.axes.TimeAxis;	import com.yahoo.astra.utils.JavaScriptUtil;		import flash.utils.Dictionary;	import flash.utils.getDefinitionByName;	import flash.utils.getQualifiedClassName;		public class AxisSerializer	{			//--------------------------------------	//  Class Properties	//--------------------------------------			private static var shortNameToType:Object = {};		shortNameToType.numeric = NumericAxis;		shortNameToType.category = CategoryAxis;		shortNameToType.time = TimeAxis;				private static var typeToShortName:Dictionary = new Dictionary(true);		typeToShortName[NumericAxis] = "numeric";		typeToShortName[CategoryAxis] = "category";		typeToShortName[TimeAxis] = "time";			//--------------------------------------	//  Static Methods	//--------------------------------------				public static function getShortName(input:Object):String		{			if(!input) return null;						if(input is String)			{				input = getDefinitionByName(input as String);			}			var shortName:String = shortNameToType[input];			return shortName;		}				public static function getType(shortName:String):Class		{			return shortNameToType[shortName];		}				public static function writeAxis(input:IAxis):Object		{			var axis:Object = {type: getShortName(getQualifiedClassName(input))};			return axis;		}				public static function readAxis(input:Object):IAxis		{			var AxisType:Class = AxisSerializer.getType(input.type);			var axis:IAxis = new AxisType();			axis.title = input.title;			axis.reverse = input.reverse;			if(input.labelFunction)			{				axis.labelFunction = JavaScriptUtil.createCallbackFunction(input.labelFunction).callback;			}						if(axis is NumericAxis)			{				var numericAxis:NumericAxis = NumericAxis(axis);				if(input.minimum != null && !isNaN(input.minimum))				{					numericAxis.minimum = input.minimum;				}				if(input.maximum != null && !isNaN(input.maximum))				{					numericAxis.maximum = input.maximum;				}				if(input.majorUnit != null && !isNaN(input.majorUnit))				{					numericAxis.majorUnit = input.majorUnit;				}				if(input.minorUnit != null && !isNaN(input.minorUnit))				{					numericAxis.minorUnit = input.minorUnit;				}				numericAxis.snapToUnits = input.snapToUnits;				numericAxis.alwaysShowZero = input.alwaysShowZero;				numericAxis.scale = input.scale;				numericAxis.stackingEnabled = input.stackingEnabled;			}			else if(axis is TimeAxis)			{				var timeAxis:TimeAxis = TimeAxis(axis);				if(input.minimum != null && !isNaN(input.minimum))				{					timeAxis.minimum = input.minimum;				}				if(input.maximum != null && !isNaN(input.maximum))				{					timeAxis.maximum = input.maximum;				}				if(input.majorUnit != null && !isNaN(input.majorUnit))				{					timeAxis.majorUnit = input.majorUnit;				}				if(input.majorTimeUnit != null)				{					timeAxis.majorTimeUnit = input.majorTimeUnit;				}				if(input.minorUnit != null && !isNaN(input.minorUnit))				{					timeAxis.minorUnit = input.minorUnit;				}				if(input.minorTimeUnit != null)				{					timeAxis.minorTimeUnit = input.minorTimeUnit;				}				timeAxis.snapToUnits = input.snapToUnits;				timeAxis.stackingEnabled = input.stackingEnabled;			}			else if(axis is CategoryAxis)			{				var categoryAxis:CategoryAxis = CategoryAxis(axis);				if(input.categoryNames != null)				{					categoryAxis.categoryNames = input.categoryNames;				}			}			return axis;		}	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -