public Task <bool> MovePicture(MovePoster e) { if (IsScanning || IsWaitingForPosition) { HandlePoster(e.Id, e.Position.Replace(":w=", string.Empty).Replace("l=", string.Empty).Split(' ')); } return(Task.FromResult(true)); }
private async void StartAligningAsync(object sender, EventArgs e) { if (IsScanning || Posters.Count != columnControl.Value * rowControl.Value && button4.Text != "Aligning...") { return; } Posters = Posters.OrderBy(id => id).ToList(); button4.Text = "Aligning..."; bool isRight = rotation == 'r'; int limit = Alternative ? 32 : 16; int height = Alternative ? 16 : 8; int width = Alternative ? 16 : 8; int heightAfter = (Alternative ? 8 : 4) * (isRight ? 1 : -1); for (int currentColumn = 0; currentColumn < columnControl.Value; currentColumn++) { for (int currentRow = 0; currentRow < rowControl.Value; currentRow++) { int tempL1 = (int)offsetX.Value + (width * currentColumn); MovePoster movePoster = new MovePoster { Id = Posters[(currentColumn * (int)rowControl.Value) + currentRow], Position = string.Format(":w={0},{1} l={2},{3} {4}", (int)W1Offset.Value, (int)W2Offset.Value, tempL1, (int)(offsetY.Value + ((currentRow * height) + (currentColumn * heightAfter))), rotation) }; await _interceptor.SendToServerAsync(movePoster); await Task.Delay(50); } } button4.Text = "Align"; }
public async void UpdatePosition() { if (!IsScanning && Posters.Count == columnControl.Value * rowControl.Value) { MovePoster movePoster = new MovePoster { Id = Posters[0], Position = string.Format(":w={0},{1} l={2},{3} {4}", (int)W1Offset.Value, (int)W2Offset.Value, (int)offsetX.Value, (int)offsetY.Value, rotation) }; await _interceptor.SendToServerAsync(movePoster); if (Posters.Count >= 4) { int height = Alternative ? 16 : 8; int width = Alternative ? 16 : 8; int heightAfter = (Alternative ? 8 : 4) * (rotation == 'r' ? 1 : -1); int columns = (int)columnControl.Value - 1; int rows = (int)rowControl.Value - 1; await Task.Delay(50); movePoster.Id = Posters[1]; movePoster.Position = string.Format(":w={0},{1} l={2},{3} {4}", (int)W1Offset.Value, (int)W2Offset.Value, (int)offsetX.Value + (columns * width), (int)offsetY.Value + (columns * heightAfter), rotation); await _interceptor.SendToServerAsync(movePoster); await Task.Delay(50); movePoster.Id = Posters[2]; movePoster.Position = string.Format(":w={0},{1} l={2},{3} {4}", (int)W1Offset.Value, (int)W2Offset.Value, (int)offsetX.Value, (int)(offsetY.Value + (rows * height)), rotation); await _interceptor.SendToServerAsync(movePoster); await Task.Delay(50); movePoster.Id = Posters[3]; movePoster.Position = string.Format(":w={0},{1} l={2},{3} {4}", (int)W1Offset.Value, (int)W2Offset.Value, (int)offsetX.Value + (columns * width), (int)(offsetY.Value + ((rows * height) + (columns * heightAfter))), rotation); await _interceptor.SendToServerAsync(movePoster); } } }