public override void Do() { ClipBoardManager clipBoardManager = ClipBoardManager.Instance; m_previousClipboardContent = clipBoardManager.RetrieveTileBrush(); TileBrush tileBrush = new TileBrush(m_layer, m_tileSelection); clipBoardManager.StoreTileBrush(tileBrush); }
internal TileBrush(TileBrush tileBrush) { m_id = tileBrush.m_id; m_brushSize = tileBrush.m_brushSize; m_tileSize = tileBrush.m_tileSize; m_displaySize = tileBrush.m_displaySize; m_tileBrushElements = new List <TileBrushElement>(tileBrush.m_tileBrushElements); m_imageRepresentation = tileBrush.m_imageRepresentation; }
internal TileBrush(TileBrush tileBrush) { m_id = tileBrush.m_id; m_brushSize = tileBrush.m_brushSize; m_tileSize = tileBrush.m_tileSize; m_displaySize = tileBrush.m_displaySize; m_tileBrushElements = new List<TileBrushElement>(tileBrush.m_tileBrushElements); m_imageRepresentation = tileBrush.m_imageRepresentation; }
public EditCutCommand(Layer layer, TileSelection tileSelection) { m_layer = layer; m_selectionLocation = tileSelection.Bounds.Location; m_tileSelection = tileSelection; m_oldTiles = null; m_description = "Cut selection from layer \"" + m_layer.Id + "\""; }
public EditDeleteCommand(Layer layer, TileSelection tileSelection) { m_layer = layer; m_selectionLocation = tileSelection.Bounds.Location; m_tileSelection = tileSelection; m_tileBrush = null; m_description = "Erase selection from layer \"" + m_layer.Id + "\""; }
public TileBrushDialog(Map map, TileBrushCollection tileBrushCollection) { InitializeComponent(); m_map = map; m_tileBrushCollection = tileBrushCollection; m_newTileBrush = null; m_selectedTileBrush = null; }
public override void Do() { TileSelection tileSelection = new TileSelection(); m_tileBrush.GenerateSelection(m_brushLocation, tileSelection); m_oldTiles = new TileBrush(m_layer, tileSelection); m_tileBrush.ApplyTo(m_layer, m_brushLocation, m_tileSelection); if (!m_fromClipboard) m_tileSelection.Clear(); }
public EditTileBrushesCommand( Map map, TileBrushCollection currentTileBrushCollection, TileBrush newTileBrush) { m_map = map; m_currentTileBrushCollection = currentTileBrushCollection; m_oldTileBrushCollection = new TileBrushCollection(currentTileBrushCollection); m_newTileBrushCollection = new TileBrushCollection(currentTileBrushCollection); m_newTileBrushCollection.TileBrushes.Add(newTileBrush); m_description = "Make new tile brush"; }
public EditPasteCommand(Layer layer, TileBrush tileBrush, Location brushLocation, TileSelection tileSelection, bool fromClipboard) { m_layer = layer; m_tileBrush = tileBrush; m_brushLocation = brushLocation; m_tileSelection = tileSelection; m_fromClipboard = fromClipboard; m_oldTiles = null; m_description = fromClipboard ? "Paste copied tiles" : "Paste tile brush \"" + tileBrush.Id + "\""; m_description += " at " + m_brushLocation + " in layer \"" + m_layer.Id + "\""; }
public override void Do() { m_tileBrush = new TileBrush(m_layer, m_tileSelection); m_tileSelection.EraseTiles(m_layer); }
public TilePickerEventArgs(TileBrush tileBrush) { m_tileSheet = null; m_tileIndex = -1; m_tileBrush = tileBrush; }
private void OnTilePanelMouseUp(object sender, MouseEventArgs mouseEventArgs) { if (m_tileSheet == null) return; if (mouseEventArgs.Button != MouseButtons.Left) return; m_leftMouseDown = false; if (m_brushEnd == m_brushStart) { // single tile selected m_selectedTileIndex = GetTileIndex(mouseEventArgs.Location); if (m_selectedTileIndex >= 0) { if (m_orderMode == OrderMode.MRU) m_selectedTileIndex = m_indexToMru[m_selectedTileIndex]; UpdateMru(m_selectedTileIndex); if (m_orderMode == OrderMode.MRU) m_focusOnTile = true; if (TileSelected != null) TileSelected(this, new TilePickerEventArgs(m_tileSheet, m_selectedTileIndex)); m_tilePanel.Invalidate(); } } else { if (TileBrushSelected != null) { // tile brush selected int tileCount = m_tileSheet.TileCount; int tilesAcross = Math.Max(1, m_requiredSize.Width / (m_tileSheet.TileWidth + 1)); int tilesDown = 1 + (tileCount - 1) / tilesAcross; xTile.Layers.Layer dummyLayer = new xTile.Layers.Layer( "", m_tileSheet.Map, new xTile.Dimensions.Size(1, 1), m_tileSheet.TileSize); List<TileBrushElement> tileBrushElements = new List<TileBrushElement>(); for (int tileY = m_brushStart.Y; tileY <= m_brushEnd.Y; tileY++) { for (int tileX = m_brushStart.X; tileX <= m_brushEnd.X; tileX++) { int tileIndex = tileY * tilesAcross + tileX; if (tileIndex >= tileCount) continue; if (m_orderMode == OrderMode.MRU) tileIndex = m_indexToMru[tileIndex]; tileBrushElements.Add(new TileBrushElement( new StaticTile(dummyLayer, m_tileSheet, BlendMode.Alpha, tileIndex), new xTile.Dimensions.Location(tileX - m_brushStart.X, tileY - m_brushStart.Y))); } } TileBrush tileBrush = new TileBrush("TilePickerBrush", tileBrushElements); TileBrushSelected(this, new TilePickerEventArgs(tileBrush)); } } }
private void OnEditMakeTileBrush(object sender, EventArgs eventArgs) { Layer layer = m_mapPanel.SelectedLayer; if (layer == null) return; TileSelection tileSelection = m_mapPanel.TileSelection; if (tileSelection.IsEmpty()) return; string tileBrushId = m_tileBrushCollection.GenerateId(); TileBrush newTileBrush = new TileBrush(tileBrushId, layer, tileSelection); TileBrushDialog tileBrushDialog = new TileBrushDialog(m_map, m_tileBrushCollection, newTileBrush); if (tileBrushDialog.ShowDialog(this) == DialogResult.OK) { UpdateTileBrushDropDown(); m_mapPanel.TileSelection.Clear(); OnToolsTileBrush(sender, eventArgs); UpdateTileBrushDropDown(); UpdateEditControls(); } }
private ClipBoardManager() { m_tileBrush = null; }
public void StoreTileBrush(TileBrush tileBrush) { m_tileBrush = tileBrush; }
private void OnSelectedIndexChanged(object sender, EventArgs eventArgs) { bool selected = m_listView.SelectedIndices.Count > 0; m_renameButton.Enabled = m_deleteButton.Enabled = selected; m_selectedTileBrush = selected ? (TileBrush) m_listView.SelectedItems[0].Tag : null; }
public TilePickerEventArgs(TileSheet tileSheet, int tileIndex) { m_tileSheet = tileSheet; m_tileIndex = tileIndex; m_tileBrush = null; }