private void AddItem(BeatSegment segment) { BeatContainer container = new BeatContainer(); container.SetBeatSegment(segment); _containerDictionary.Add(segment, container); timePanel.Children.Add(container); }
private void MnuTimeLockOnClick(object sender, RoutedEventArgs routedEventArgs) { BeatContainer container = AdornedElement as BeatContainer; if (container == null) { return; } container.BeatLine.TimeLock ^= true; ((MenuItem)sender).IsChecked = container.BeatLine.TimeLock; }
private void MnuEditPatternOnClick(object sender, RoutedEventArgs routedEventArgs) { BeatContainer container = AdornedElement as BeatContainer; if (container == null) { return; } BeatPatternEditor dialog = new BeatPatternEditor(container.BeatLine.BeatDefinition.Pattern); if (dialog.ShowDialog() != true) { return; } container.SetBeat(new BeatDefinition { Pattern = dialog.Result }); }
public BeatContainerAdorner(BeatContainer adornedElement) : base(adornedElement) { Container = adornedElement; MenuItem mnuTimeLock = new MenuItem { Header = "Lock", IsCheckable = true, IsChecked = adornedElement.BeatLine.TimeLock }; mnuTimeLock.Click += MnuTimeLockOnClick; MenuItem mnuEditPattern = new MenuItem { Header = "Edit Pattern", }; mnuEditPattern.Click += MnuEditPatternOnClick; MenuItem mnuSnap = new MenuItem { Header = "Snap", }; mnuSnap.Click += MnuSnapOnClick; MenuItem mnuCopyDuration = new MenuItem { Header = "Copy Beat Duration", }; mnuCopyDuration.Click += MnuCopyDuration; MenuItem mnuPasteDuration = new MenuItem { Header = "Paste Beat Duration", }; mnuPasteDuration.Click += MnuPasteDuration; ContextMenu = new ContextMenu(); ContextMenu.Items.Add(mnuTimeLock); ContextMenu.Items.Add(mnuEditPattern); ContextMenu.Items.Add(mnuSnap); ContextMenu.Items.Add(new Separator()); ContextMenu.Items.Add(mnuCopyDuration); ContextMenu.Items.Add(mnuPasteDuration); _thumbLeft = new Thumb { VerticalAlignment = VerticalAlignment.Stretch, HorizontalAlignment = HorizontalAlignment.Left, Width = 10, Opacity = 0, Margin = new Thickness(0, 20, 0, 0) }; _thumbLeft.DragStarted += ThumbOnDragStarted; _thumbLeft.DragDelta += ThumbOnDragDelta; _thumbLeft.DragCompleted += ThumbOnDragCompleted; _thumbLeft.Cursor = Cursors.ScrollWE; AddVisualChild(_thumbLeft); _thumbRight = new Thumb { VerticalAlignment = VerticalAlignment.Stretch, HorizontalAlignment = HorizontalAlignment.Right, Width = 10, Opacity = 0, Margin = new Thickness(0, 20, 0, 0) }; _thumbRight.DragStarted += ThumbOnDragStarted; _thumbRight.DragDelta += ThumbOnDragDelta; _thumbRight.DragCompleted += ThumbOnDragCompleted; _thumbRight.Cursor = Cursors.ScrollWE; AddVisualChild(_thumbRight); _thumbTop = new Thumb { VerticalAlignment = VerticalAlignment.Top, HorizontalAlignment = HorizontalAlignment.Stretch, Height = 20, Opacity = 0 }; _thumbTop.DragStarted += ThumbOnDragStarted; _thumbTop.DragDelta += ThumbOnDragDelta; _thumbTop.DragCompleted += ThumbOnDragCompleted; _thumbTop.Cursor = Cursors.ScrollAll; AddVisualChild(_thumbTop); }