// ---------- PUBLIC METHODS END // ---------- PRIVATE METHODS protected SVGUnit(SVGWord doc) { SVGErr.Log("SvgElement", "SvgElement", "Element created", SVGErr._LogPriority.Info); m_doc = doc; m_attributes = new ArrayList(); AddAttr(SVGAttribute._SvgAttribute.attrCore_Id, null); m_Parent = null; m_Child = null; m_Next = null; m_Previous = null; m_sElementName = "unsupported"; m_sElementValue = ""; m_bHasValue = false; m_ElementType = SVGUnitType.typeUnsupported; }
/// <summary> /// 它将元素eletoClone的所有属性复制到 /// current element. /// </summary> public void CloneAttributeList(SVGUnit eleToClone) { ArrayList aType = new ArrayList(); ArrayList aName = new ArrayList(); ArrayList aValue = new ArrayList(); eleToClone.FillAttributeList(aType, aName, aValue); m_attributes.Clear(); for (int i = 0; i < aType.Count; i++) { AddAttr((SVGAttribute._SvgAttribute)aType[i], aValue[i]); } if (m_bHasValue) { m_sElementValue = eleToClone.m_sElementValue; } }
/// <summary> /// 它返回从元素开始的SVG树的XML字符串。 /// </summary> public string GetXML() { string sXML; sXML = OpenXMLTag(); if (m_Child != null) { sXML += m_Child.GetXML(); } sXML += CloseXMLTag(); SVGUnit ele = m_Next; if (ele != null) { sXML += ele.GetXML(); } SVGErr.Log("SvgElement", "GetXML", ElementInfo(), SVGErr._LogPriority.Info); return(sXML); }
/// <summary> /// 它设置前一个元素。 /// </summary> /// <param name="ele">New previous element.</param> public void setPrevious(SVGUnit ele) { m_Previous = ele; }
/// <summary> /// 它设置下一个同级元素。 /// </summary> public void setNext(SVGUnit ele) { m_Next = ele; }
/// <summary> /// 它设置第一个子元素。 /// </summary> public void setChild(SVGUnit ele) { m_Child = ele; }
/// <summary> /// 它设置父元素。 /// </summary> public void setParent(SVGUnit ele) { m_Parent = ele; }