Beispiel #1
0
        public PasteSpecial(IEnumerable <MapObject> objectsToPaste, int numCopies,
                            PasteSpecialStartPoint startPoint, PasteSpecialGrouping grouping,
                            Coordinate offset, Coordinate rotation, bool makeEntitesUnique,
                            bool prefixEntityNames, string entityNamePrefix)
        {
            _objectsToPaste    = objectsToPaste;
            _numCopies         = numCopies;
            _startPoint        = startPoint;
            _grouping          = grouping;
            _offset            = offset;
            _rotation          = rotation;
            _makeEntitesUnique = makeEntitesUnique;
            _prefixEntityNames = prefixEntityNames;
            _entityNamePrefix  = entityNamePrefix;
            _firstRun          = true;

            if (_numCopies == 1 && grouping == PasteSpecialGrouping.All)
            {
                // Only one copy - individual will give the same result (this makes the below comparison easier)
                _grouping = PasteSpecialGrouping.Individual;
            }
            if (_objectsToPaste.Count() == 1 && _grouping == PasteSpecialGrouping.Individual)
            {
                // Only one object - no need to group.
                _grouping = PasteSpecialGrouping.None;
            }
        }
Beispiel #2
0
        public PasteSpecial(IEnumerable<MapObject> objectsToPaste, int numCopies,
            PasteSpecialStartPoint startPoint, PasteSpecialGrouping grouping,
            Coordinate offset, Coordinate rotation, bool makeEntitesUnique,
            bool prefixEntityNames, string entityNamePrefix)
        {
            _objectsToPaste = objectsToPaste;
            _numCopies = numCopies;
            _startPoint = startPoint;
            _grouping = grouping;
            _offset = offset;
            _rotation = rotation;
            _makeEntitesUnique = makeEntitesUnique;
            _prefixEntityNames = prefixEntityNames;
            _entityNamePrefix = entityNamePrefix;
            _firstRun = true;

            if (_numCopies == 1 && grouping == PasteSpecialGrouping.All)
            {
                // Only one copy - individual will give the same result (this makes the below comparison easier)
                _grouping = PasteSpecialGrouping.Individual;
            }
            if (_objectsToPaste.Count() == 1 && _grouping == PasteSpecialGrouping.Individual)
            {
                // Only one object - no need to group.
                _grouping = PasteSpecialGrouping.None;
            }
        }