Пример #1
0
        //=============================================================================
        public Wall(SerializationInfo info, StreamingContext context)
            : base(info, context)
        {
            //
            int iMajor = (int)info.GetValue(_sWall_strMajor, typeof(int));
            int iMinor = (int)info.GetValue(_sWall_strMinor, typeof(int));

            if (iMajor > _sWall_MAJOR)
            {
                ++DrawingDocument._sNewVersion_StreamRead;
            }
            else if (iMajor == _sWall_MAJOR && iMinor > _sWall_MINOR)
            {
                ++DrawingDocument._sNewVersion_StreamRead;
            }

            if (iMajor <= _sWall_MAJOR)
            {
                try
                {
                    if (iMajor >= 1 && iMinor >= 0)
                    {
                        m_WallPosition = (eWallPosition)info.GetValue("WallPosition", typeof(eWallPosition));
                    }
                }
                catch
                {
                    ++DrawingDocument._sStreamReadException;
                }
            }
            else
            {
                ++DrawingDocument._sBiggerMajorNumber;
            }
        }
Пример #2
0
        //=============================================================================
        protected override void _SetState(GeometryState state)
        {
            base._SetState(state);

            Wall_State wallState = state as Wall_State;

            if (wallState == null)
            {
                return;
            }

            this.m_WallPosition = wallState.WallPosition;
        }