Example #1
0
        private void ApplyTileBrush()
        {
            if (m_selectedLayer == null)
                return;

            if (m_selectedTileBrush == null)
                return;

            if (m_selectedTileBrush.TileSize != m_selectedLayer.TileSize)
            {
                m_tileSizeMessageBox.Show();
                return;
            }

            xTile.Dimensions.Location brushLocation = m_tileLayerLocation;
            xTile.Dimensions.Size brushSize = m_selectedTileBrush.BrushSize;
            brushLocation.X -= brushSize.Width / 2;
            brushLocation.Y -= brushSize.Height / 2;

            Command command = new EditPasteCommand(
                m_selectedLayer, m_selectedTileBrush,
                brushLocation, new TileSelection(), false);
            m_commandHistory.Do(command);

            if (MapChanged != null)
                MapChanged(this, EventArgs.Empty);
        }
Example #2
0
        private void OnEditPaste(object sender, EventArgs eventArgs)
        {
            Layer layer = m_mapPanel.SelectedLayer;
            if (layer == null)
                return;

            TileSelection tileSelection = m_mapPanel.TileSelection;
            if (tileSelection.IsEmpty())
                return;

            if (!ClipBoardManager.Instance.HasTileBrush())
                return;

            TileBrush tileBrush = ClipBoardManager.Instance.RetrieveTileBrush();
            Command command = new EditPasteCommand(layer, tileBrush,
                tileSelection.Bounds.Location, tileSelection, true);
            m_commandHistory.Do(command);

            m_needsSaving = true;
            UpdateFileControls();
            UpdateEditControls();
        }