コード例 #1
0
        protected override bool AcceptTagElement(DefineButton2Tag tag, XElement element)
        {
            switch (element.Name.LocalName)
            {
            case BUTTONS_ELEM:
                foreach (var xButton in element.Elements())
                {
                    tag.Characters.Add(XButtonRecordEx.FromXml(xButton));
                }
                break;

            case CONDITIONS_ELEM:
                foreach (var xCondition in element.Elements())
                {
                    tag.Conditions.Add(XButtonCondition.FromXml(xCondition));
                }
                break;

            default:
                return(false);
            }
            return(true);
        }
コード例 #2
0
        protected override void FormatTagElement(DefineButton2Tag tag, XElement xTag)
        {
            xTag.Add(new XAttribute(MENU_ATTRIB, CommonFormatter.Format(tag.TrackAsMenu)));
            if (tag.ReservedFlags != 0)
            {
                xTag.Add(new XAttribute("reserved", tag.ReservedFlags));
            }

            var xButtons = new XElement("buttons");

            foreach (var button in tag.Characters)
            {
                xButtons.Add(XButtonRecordEx.ToXml(button));
            }
            xTag.Add(xButtons);

            var xConditions = new XElement("conditions");

            foreach (var condition in tag.Conditions)
            {
                xConditions.Add(XButtonCondition.ToXml(condition));
            }
            xTag.Add(xConditions);
        }