public void Deserialize(IntermediateFormatReader reader)
        {
            reader.RegisterDeclaration(OpenXmlBorderPropertiesModel.GetDeclaration());
            while (reader.NextMember())
            {
                switch (reader.CurrentMember.MemberName)
                {
                case MemberName.Color:
                    this.Color = reader.ReadString();
                    break;

                case MemberName.Width:
                    this._widthInEighthPoints = reader.ReadInt32();
                    break;

                case MemberName.Style:
                    this.Style = (BorderStyle)reader.ReadByte();
                    break;

                default:
                    WordOpenXmlUtils.FailSerializable();
                    break;
                }
            }
        }
        public void Serialize(IntermediateFormatWriter writer)
        {
            writer.RegisterDeclaration(OpenXmlBorderPropertiesModel.GetDeclaration());
            while (writer.NextMember())
            {
                switch (writer.CurrentMember.MemberName)
                {
                case MemberName.Color:
                    writer.Write(this.Color);
                    break;

                case MemberName.Width:
                    writer.Write(this._widthInEighthPoints);
                    break;

                case MemberName.Style:
                    writer.Write((byte)this.Style);
                    break;

                default:
                    WordOpenXmlUtils.FailSerializable();
                    break;
                }
            }
        }
        public bool TryCreateObject(ObjectType objectType, out IPersistable persistObj)
        {
            switch (objectType)
            {
            case ObjectType.WordOpenXmlTableGrid:
                persistObj = new OpenXmlTableGridModel();
                break;

            case ObjectType.WordOpenXmlTableRowProperties:
                persistObj = new OpenXmlTableRowPropertiesModel();
                break;

            case ObjectType.WordOpenXmlBorderProperties:
                persistObj = new OpenXmlBorderPropertiesModel();
                break;

            case ObjectType.WordOpenXmlHeaderFooterReferences:
                persistObj = new HeaderFooterReferences();
                break;

            default:
                persistObj = null;
                return(false);
            }
            return(true);
        }
        public override void Deserialize(IntermediateFormatReader reader)
        {
            base.Deserialize(reader);
            reader.RegisterDeclaration(OpenXmlTableRowPropertiesModel.GetDeclaration());
            while (reader.NextMember())
            {
                switch (reader.CurrentMember.MemberName)
                {
                case MemberName.RowHeight:
                    this._height = reader.ReadSingle();
                    break;

                case MemberName.LeftIndent:
                    this._rowIndent = reader.ReadSingle();
                    break;

                case MemberName.ExactRowHeight:
                    this._exactRowHeight = reader.ReadBoolean();
                    break;

                case MemberName.IgnoreRowHeight:
                    this._ignoreRowHeight = reader.ReadBoolean();
                    break;

                case MemberName.TopPadding:
                    this._maxPaddingTop = reader.ReadSingle();
                    break;

                case MemberName.BottomPadding:
                    this._maxPaddingBottom = reader.ReadSingle();
                    break;

                case MemberName.TopBorder:
                    this._borderTop = (OpenXmlBorderPropertiesModel)reader.ReadRIFObject();
                    break;

                case MemberName.BottomBorder:
                    this._borderBottom = (OpenXmlBorderPropertiesModel)reader.ReadRIFObject();
                    break;

                case MemberName.LeftBorder:
                    this._borderLeft = (OpenXmlBorderPropertiesModel)reader.ReadRIFObject();
                    break;

                case MemberName.RightBorder:
                    this._borderRight = (OpenXmlBorderPropertiesModel)reader.ReadRIFObject();
                    break;

                case MemberName.Color:
                    this._bgColor = reader.ReadString();
                    break;

                default:
                    WordOpenXmlUtils.FailSerializable();
                    break;
                }
            }
        }
        private static List <Declaration> BuildDeclarations()
        {
            List <Declaration> list = new List <Declaration>(6);

            list.Add(BaseInterleaver.GetDeclaration());
            list.Add(OpenXmlTableGridModel.GetDeclaration());
            list.Add(OpenXmlTableRowPropertiesModel.GetDeclaration());
            list.Add(OpenXmlBorderPropertiesModel.GetDeclaration());
            list.Add(HeaderFooterReferences.GetDeclaration());
            return(list);
        }
 private void UpdateBorder(OpenXmlBorderPropertiesModel cellBorder, OpenXmlBorderPropertiesModel tableBorder)
 {
     cellBorder.Color = tableBorder.Color;
     cellBorder.Style = tableBorder.Style;
     cellBorder.WidthInEighthPoints = tableBorder.WidthInEighthPoints;
 }