Пример #1
0
        private TreeNode buildTie(Tie tie, Note note, DynamicBounds bounds)
        {
            var bounded = new DynamicSingleBounded(new TieBounds(tie, note, bounds, info, new UnorderedDelegate()));
            var handler = new DynamicEffectMouseHandler(bounded.Bounds, executor, new UnorderedMouseDelegate());
            var drawing = new DynamicDrawingVisual(new TieDrawingStrategy(tie, bounded.Bounds, info, new UnorderedDelegate()));

            return(new EffectTreeNode(tie, bounded, handler, drawing));
        }
Пример #2
0
        private TreeNode buildPinchHarmonic(PinchHarmonic pinch_harmonic, Note note, DynamicBounds bounds)
        {
            var bounded = new DynamicSingleBounded(new PinchHarmonicBounds(pinch_harmonic, note, bounds, info, new UnorderedDelegate()));
            var handler = new DynamicEffectMouseHandler(bounded.Bounds, executor, new UnorderedMouseDelegate());
            var drawing = new DynamicDrawingVisual(new PinchHarmonicDrawingStrategy(pinch_harmonic, bounded.Bounds, info, new UnorderedDelegate()));

            return(new EffectTreeNode(pinch_harmonic, bounded, handler, drawing));
        }
Пример #3
0
        private TreeNode buildEffectNode(IEffect effect, NoteTreeNode parent)
        {
            if (parent is null)
            {
                return(null);
            }
            Note          note   = parent.getNote();
            DynamicBounds bounds = parent.Bounds as DynamicBounds;

            if (effect is PalmMute)
            {
                return(buildPalmMute((PalmMute)effect, note, bounds));
            }
            if (effect is Bend)
            {
                return(buildBend((Bend)effect, note, bounds));
            }
            if (effect is PinchHarmonic)
            {
                return(buildPinchHarmonic((PinchHarmonic)effect, note, bounds));
            }
            if (effect is Vibrato)
            {
                return(buildVibrato((Vibrato)effect, note, bounds));
            }
            if (effect is Slide)
            {
                return(buildSlide((Slide)effect, note, bounds));
            }
            if (effect is HOPO)
            {
                return(buildHOPO((HOPO)effect, note, bounds));
            }
            if (effect is Tie)
            {
                return(buildTie((Tie)effect, note, bounds));
            }
            return(null);
        }
Пример #4
0
 public DynamicMeasureMouseHandler(Measure m, DynamicBounds b, GuiCommandExecutor e, IMouseDelegate del) : base(e, del, b)
 {
     measure = m;
 }