internal override void ArrangeCopyRange(int RowOfs, int ColOfs, TSheetInfo SheetInfo) { if ((Shapes[2] != null) && (Shapes[2].CopiedTo(SheetInfo.CopiedGen) != null)) { DwgCache.Solver.ContainedRecords.Add(TEscherConnectorRuleRecord.Clone(this, RowOfs, ColOfs, DwgCache, DwgGroupCache, SheetInfo)); } }
protected override TEscherRecord DoCopyTo(int RowOfs, int ColOfs, TEscherDwgCache NewDwgCache, TEscherDwgGroupCache NewDwgGroupCache, TSheetInfo SheetInfo) { TEscherConnectorRuleRecord Result = (TEscherConnectorRuleRecord)base.DoCopyTo(RowOfs, ColOfs, NewDwgCache, NewDwgGroupCache, SheetInfo); Result.Init(); for (int c = 0; c < 3; c++) { if (Shapes[c] != null) { Result.Shapes[c] = (TEscherSpRecord)Shapes[c].CopiedTo(SheetInfo.CopiedGen); if (Result.Shapes[c] != null) { Result.SetSpIds(c, Result.Shapes[c].ShapeId); } else { Result.SetSpIds(c, 0); } } } Result.RuleId = DwgCache.Solver.IncMaxRuleId(); return(Result); }