예제 #1
0
        public override IGraphCloneable Clone(CloneContext cloneContext)
        {
            DxfBlockLookupAction blockLookupAction = (DxfBlockLookupAction)cloneContext.GetExistingClone((IGraphCloneable)this);

            if (blockLookupAction == null)
            {
                blockLookupAction = new DxfBlockLookupAction();
                cloneContext.RegisterClone((IGraphCloneable)this, (IGraphCloneable)blockLookupAction);
                blockLookupAction.CopyFrom((DxfHandledObject)this, cloneContext);
            }
            return((IGraphCloneable)blockLookupAction);
        }
예제 #2
0
        public override void CopyFrom(DxfHandledObject from, CloneContext cloneContext)
        {
            base.CopyFrom(from, cloneContext);
            DxfBlockLookupAction blockLookupAction = (DxfBlockLookupAction)from;

            this.NumberOfRows    = blockLookupAction.NumberOfRows;
            this.NumberOfColumns = blockLookupAction.NumberOfColumns;
            this.UnknownFlag     = blockLookupAction.UnknownFlag;
            this.Text            = new string[blockLookupAction.Text.Length];
            blockLookupAction.Text.CopyTo((Array)this.Text, 0);
            this.Information = new DxfLookupActionInformation[blockLookupAction.Information.Length];
            for (int index = 0; index < blockLookupAction.Information.Length; ++index)
            {
                this.Information[index] = (DxfLookupActionInformation)blockLookupAction.Information[index].Clone(cloneContext);
            }
        }