public void CreateGrooveBuilderGrid(FrameworkElement context, Grid grid, IGridDimensions gridDimensions) { ResetGrid(context, grid); gridDimensions.CreateDefinitions(grid, new GridLength(1, GridUnitType.Star)); int loopPosition = 1; // Traverse the columns and rows, populating each with borders. for (int row = 0; row < gridDimensions.Rows; row++) { for (int column = 0; column < gridDimensions.Columns; column++) { if (gridDimensions.IsPositionAllowed(row, column)) { GrooveContainer grooveContainer = CreateGrooveContainer(context, loopPosition); Grid.SetRow(grooveContainer, row); Grid.SetColumn(grooveContainer, column); grid.Children.Add(grooveContainer); loopPosition++; } } } }
private GrooveContainer CreateGrooveContainer(FrameworkElement context, int loopPosition) { var grooveContainer = new GrooveContainer(loopPosition); context.SafelyRegisterControl(grooveContainer); grooveContainers.Add(grooveContainer); return(grooveContainer); }
private void OnItemDropped(object sender, DragDropEventArgs e) { var droppedOnto = e.DroppedOn as GrooveContainer; var itemDragged = e.DraggedElement as TreeViewItem; if (droppedOnto != null && itemDragged != null) { GrooveContainer grooveContainer = sampleGrid.GrooveContainerAtBar(droppedOnto.BarPosition); Groove grooveDragged = libraryManager.DisplayedGrooves.Find(DoesItemDraggedMatchGroove(itemDragged)); if (grooveContainer != null && grooveDragged != null) { SetNewGroove(grooveContainer, grooveDragged); } } }
private void SetNewGroove(GrooveContainer grooveContainer, Groove groove) { grooveContainer.HoldNewGroove(groove); groovePlayer.ChangeAudio(groove.Audio, grooveContainer.BarPosition); }
private void SetRandomGroove(List <string> tags, GrooveContainer grooveContainer) { Groove randomGroove = libraryManager.GetRandomGroove(tags); SetNewGroove(grooveContainer, randomGroove); }