public Preferences(string sData) { XmlDocument cXmlDocument = new XmlDocument(); cXmlDocument.LoadXml(sData); XmlNode cXmlNode = cXmlDocument.NodeGet("data"); sRequest = cXmlNode.AttributeValueGet("request"); nTemplate = cXmlNode.AttributeGet <byte>("template"); sValue = cXmlNode.AttributeValueGet("value", false); _nCheckInterval = cXmlNode.AttributeGet <int>("interval"); _nLoops = null == cXmlNode.AttributeValueGet("loop", false) ? (ushort)0 : cXmlNode.AttributeGet <ushort>("loop"); XmlNode cNodeChild = cXmlNode.NodeGet("roll"); _eDirection = cNodeChild.AttributeGet <btl.Roll.Direction>("direction"); _nSpeed = cNodeChild.AttributeGet <float>("speed"); _stRollMerging = new MergingMethod(cNodeChild); _nLayer = cNodeChild.AttributeGet <ushort>("layer"); _nQueueLength = cNodeChild.AttributeGet <byte>("queue"); _nPause = cNodeChild.AttributeOrDefaultGet <int>("pause", 0); _nDelay = cNodeChild.AttributeOrDefaultGet <int>("delay", 0); cNodeChild = cNodeChild.NodeGet("area"); _stArea = new Area( cNodeChild.AttributeGet <short>("left"), cNodeChild.AttributeGet <short>("top"), cNodeChild.AttributeGet <ushort>("width"), cNodeChild.AttributeGet <ushort>("height") ); _aItems = cXmlNode.NodesGet("item").Select(o => Item.Parse(o)).ToList(); if (null != (cNodeChild = cXmlNode.NodeGet("background", false))) { _cBackground = new Background(cNodeChild); } }
public Preferences(string sData) { XmlDocument cXmlDocument = new XmlDocument(); cXmlDocument.LoadXml(sData); XmlNode cXmlNode = cXmlDocument.NodeGet("data"); sRequest = cXmlNode.AttributeValueGet("request"); nTemplate = cXmlNode.AttributeGet<byte>("template"); sValue = cXmlNode.AttributeValueGet("value", false); _nCheckInterval = cXmlNode.AttributeGet<int>("interval"); XmlNode cNodeChild = cXmlNode.NodeGet("roll"); _eDirection = cNodeChild.AttributeGet<btl.Roll.Direction>("direction"); _nSpeed = cNodeChild.AttributeGet<float>("speed"); _bRollCuda = cNodeChild.AttributeGet<bool>("cuda"); _nLayer = cNodeChild.AttributeGet<ushort>("layer"); _nQueueLength = cNodeChild.AttributeGet<byte>("queue"); if (int.MaxValue == (_nPause = cNodeChild.AttributeGet<int>("pause", false))) _nPause = 0; cNodeChild = cNodeChild.NodeGet("area"); _stArea = new Area( cNodeChild.AttributeGet<short>("left"), cNodeChild.AttributeGet<short>("top"), cNodeChild.AttributeGet<ushort>("width"), cNodeChild.AttributeGet<ushort>("height") ); _aItems = cXmlNode.NodesGet("item").Select(o => Item.Parse(o)).ToList(); }