func (c *Canvas) moveEnd(pp pixelPosition) {
	if !c.canMove() {
		return
	}
	c.selection.end = pp
	switch c.selection.moveState {
	case swap:
		c.selection.setMoveState(none)
		c.swap()
	case rect:
		c.selection.tiles = c.calculateSelectedTiles()
		c.selection.setMoveState(none)
		c.selection.start.clear()
		c.selection.end.clear()
		c.Redraw()
	case drag:
		c.moveSelectedTiles()
		c.selection.tiles = make(map[tile.ID]tileSelection)
		c.selection.setMoveState(none)
		c.Redraw()
	}
}
// moveEnd should be called when a move is done being made at the specified coordinates.
moveEnd should be called when a move is done being made at the specified coordinates.
// moveEnd should be called when a move is done being made at the specified coordinates .
func (c *Canvas) moveEnd(pp pixelPosition) {
	if !c.canMove() {
		return
	}
	c.selection.end = pp
	switch c.selection.moveState {
	case swap:
		c.selection.setMoveState(none)
		c.swap()
	case rect:
		c.selection.tiles = c.calculateSelectedTiles()
		c.selection.setMoveState(none)
		c.selection.start.clear()
		c.selection.end.clear()
		c.Redraw()
	case drag:
		c.moveSelectedTiles()
		c.selection.tiles = make(map[tile.ID]tileSelection)
		c.selection.setMoveState(none)
		c.Redraw()
	}
}
func ( c * Canvas ) moveEnd ( pp pixelPosition ) { if ! c . canMove ( ) { return } c . selection . end = pp switch c . selection . moveState { case swap : c . selection . setMoveState ( none ) c . swap ( ) case rect : c . selection . tiles = c . calculateSelectedTiles ( ) c . selection . setMoveState ( none ) c . selection . start . clear ( ) c . selection . end . clear ( ) c . Redraw ( ) case drag : c . moveSelectedTiles ( ) c . selection . tiles = make ( map [ tile . ID ] tileSelection ) c . selection . setMoveState ( none ) c . Redraw ( ) } }
moveEnd should be called when a move is done being made at the specified coordinates.
moveEnd should be called when a move is done being made at the specified coordinates .