Пример #1
0
            int IComparer.Compare(Object x, Object y)
            {
                SvgAttribute ax = (SvgAttribute)x;
                SvgAttribute ay = (SvgAttribute)y;

                if (ax.AttributeGroup == ay.AttributeGroup)
                {
                    if (ax.AttributeType < ay.AttributeType)
                    {
                        return(-1);
                    }
                    else
                    {
                        return(1);
                    }
                }
                else if (ax.AttributeGroup < ay.AttributeGroup)
                {
                    return(-1);
                }
                else
                {
                    return(1);
                }
            }
Пример #2
0
        protected string OpenXMLTag()
        {
            string sXML;

            sXML = "<" + m_sElementName;

            for (int i = 0; i < m_attributes.Count; i++)
            {
                SvgAttribute attr = (SvgAttribute)m_attributes[i];
                sXML += attr.GetXML();
            }

            if (m_sElementValue == "")
            {
                if (m_Child == null)
                {
                    sXML += " />\r\n";
                }
                else
                {
                    sXML += ">\r\n";
                }
            }
            else
            {
                sXML += ">";
                sXML += m_sElementValue;
            }

            return(sXML);
        }
Пример #3
0
        protected void AddAttr(SvgAttribute._SvgAttribute type, object objValue)
        {
            SvgAttribute attrToAdd = new SvgAttribute(type);

            attrToAdd.Value = objValue;

            m_attributes.Add(attrToAdd);
        }
Пример #4
0
        internal bool SetAttributeValue(string sName, string sValue)
        {
            bool bReturn = false;

            for (int i = 0; i < m_attributes.Count; i++)
            {
                SvgAttribute attr = (SvgAttribute)m_attributes[i];
                if (attr.Name == sName)
                {
                    switch (attr.AttributeDataType)
                    {
                    case SvgAttribute._SvgAttributeDataType.datatypeString:
                    case SvgAttribute._SvgAttributeDataType.datatypeHRef:
                        attr.Value = sValue;
                        if (attr.AttributeType == SvgAttribute._SvgAttribute.attrStyle_Style)
                        {
                            ParseStyle(sValue);
                        }
                        break;

                    case SvgAttribute._SvgAttributeDataType.datatypeEnum:
                        int nValue = 0;
                        try
                        {
                            nValue = Convert.ToInt32(sValue);
                        }
                        catch
                        {
                        }

                        attr.Value = nValue;
                        break;

                    case SvgAttribute._SvgAttributeDataType.datatypeColor:

                        if (sValue == "")
                        {
                            attr.Value = Color.Transparent;
                        }
                        else
                        {
                            Color c = attr.String2Color(sValue);
                            attr.Value = c;
                        }
                        break;
                    }

                    bReturn = true;

                    break;
                }
            }

            return(bReturn);
        }
Пример #5
0
        internal SvgAttribute GetAttribute(SvgAttribute._SvgAttribute type)
        {
            for (int i = 0; i < m_attributes.Count; i++)
            {
                SvgAttribute attr = (SvgAttribute)m_attributes[i];
                if (attr.AttributeType == type)
                {
                    return(attr);
                }
            }

            return(null);
        }
Пример #6
0
        internal SvgAttribute GetAttribute(string sName)
        {
            for (int i = 0; i < m_attributes.Count; i++)
            {
                SvgAttribute attr = (SvgAttribute)m_attributes[i];
                if (attr.Name == sName)
                {
                    return(attr);
                }
            }

            return(null);
        }
Пример #7
0
        /// <summary>
        /// It gets all element attributes.
        /// </summary>
        /// <param name="aType">Attribute type array.</param>
        /// <param name="aName">Attribute name array.</param>
        /// <param name="aValue">Attribute value array.</param>
        public void FillAttributeList(ArrayList aType, ArrayList aName, ArrayList aValue)
        {
            IComparer myComparer = new CEleComparer();

            m_attributes.Sort(myComparer);


            for (int i = 0; i < m_attributes.Count; i++)
            {
                SvgAttribute attr = (SvgAttribute)m_attributes[i];

                aType.Add(attr.AttributeType);
                aName.Add(attr.Name);
                aValue.Add(attr.Value);
            }
        }
Пример #8
0
        internal bool SetAttributeValue(SvgAttribute._SvgAttribute type, object objValue)
        {
            bool bReturn = false;

            for (int i = 0; i < m_attributes.Count; i++)
            {
                SvgAttribute attr = (SvgAttribute)m_attributes[i];
                if (attr.AttributeType == type)
                {
                    bReturn    = true;
                    attr.Value = objValue;

                    break;
                }
            }

            return(bReturn);
        }