Exemplo n.º 1
0
        public Part genPart(CommandSelections selection)
        {
            Part part = Part.createInstance(SongInfo.createDefault(), InstrumentInfo.createDefault(), selection.BPM, selection.NumBeats, selection.BeatType);

            selection.SelectedPart = part;
            return(part);
        }
Exemplo n.º 2
0
 public ChangeSongInfoAtr(CommandSelections selections)
 {
     Part   = selections.SelectedPart;
     Name   = selections.Name;
     Artist = selections.Artist;
     Album  = selections.Album;
 }
Exemplo n.º 3
0
        public int?genCorrectedPosition(CommandSelections selection)
        {
            int init = (int)selection.Position;

            foreach (Chord chord in Chords)
            {
                if (FirstMeasure.Equals(SecondMeasure) && (chord.Position.Index == init || chord.Position.Index + 1 == init))
                {
                    return(null);
                }
            }

            int first_position = (from chord in Chords select chord.Position.Index).Min();

            if (init > first_position)
            {
                foreach (Chord chord in Chords)
                {
                    if (SecondMeasure.ModelCollection.Contains(chord))
                    {
                        init -= 1;
                    }
                }
            }
            return(init);
        }
        public void runFactory(StartingFactory fac, Part part)
        {
            reader = fac.Reader;
            info   = fac.Info;
            info.Position.reset();
            selected = createSelected();

            converter  = createMouseStateConverter();
            selections = createCommandSelections();
            executor   = createExecutor();
            tree       = createTree();
            handler    = createHandler();
            updater    = createUpdater();

            length_view   = createLengthView();
            delete_view   = createDeleteView();
            add_item_view = createAddItemView();
            canvas_view   = createCanvasView();
            property_view = createPropertyView();
            fret_view     = createFretView();
            select_view   = createNoteSelectView();
            time_sig_view = createBPMTimeSigView();
            part_view     = createPartMenuView();
            visuals_view  = createVisualsView();
            scroll_view   = createScollView();

            main_view = createMainView();

            initView(part);
        }
Exemplo n.º 5
0
 public ChangeMultipleChordPositionAtr(CommandSelections selection)
 {
     FirstMeasure  = selection.SelectedMeasure.FirstOrDefault();
     SecondMeasure = selection.SelectedMeasure.LastOrDefault();
     Chords        = selection.SelectedChord;
     Position      = genCorrectedPosition(selection);
 }
Exemplo n.º 6
0
 public ChangeMeasureTimeSigAtr(CommandSelections selection)
 {
     Part     = selection.SelectedPart;
     Measure  = selection.SelectedMeasure.FirstOrDefault();
     NumBeats = selection.NumBeats;
     BeatType = selection.BeatType;
 }
Exemplo n.º 7
0
 public AddNoteToPartAtr(CommandSelections selection)
 {
     Part    = selection.SelectedPart;
     Measure = genMeasure(selection);
     Chord   = genChord(selection);
     Note    = genNote(selection);
 }
Exemplo n.º 8
0
 public ChangeMultipleChordPositionNewMeasureAtr(CommandSelections selection)
 {
     Part          = selection.SelectedPart;
     FirstMeasure  = selection.SelectedMeasure.FirstOrDefault();
     SecondMeasure = genSecondMeasure(selection);
     Chords        = selection.SelectedChord;
     Position      = 0;
 }
Exemplo n.º 9
0
 public ChangeNotePositionAtr(CommandSelections selection)
 {
     Measure     = selection.SelectedMeasure.FirstOrDefault();
     FirstChord  = selection.SelectedChord[0] as NoteChord;
     SecondChord = selection.SelectedChord[1] as NoteChord;
     Note        = selection.SelectedNote.FirstOrDefault();
     NoteString  = selection.String;
 }
Exemplo n.º 10
0
 public ChangeNotePositionNewChordAtr(CommandSelections selection)
 {
     FirstMeasure  = selection.SelectedMeasure[0];
     SecondMeasure = selection.SelectedMeasure[1];
     FirstChord    = selection.SelectedChord.FirstOrDefault() as NoteChord;
     SecondChord   = genChord(selection);
     Note          = selection.SelectedNote.FirstOrDefault();
     NoteString    = selection.String;
 }
Exemplo n.º 11
0
 public ChangeNotePositionNewMeasureAtr(CommandSelections selection)
 {
     Part          = selection.SelectedPart;
     FirstMeasure  = selection.SelectedMeasure.FirstOrDefault();
     SecondMeasure = genMeasure(selection);
     FirstChord    = selection.SelectedChord.FirstOrDefault() as NoteChord;
     SecondChord   = genChord(selection);
     Note          = selection.SelectedNote.FirstOrDefault();
     NoteString    = selection.String;
 }
Exemplo n.º 12
0
        public LengthView(CommandSelections sel, Dictionary <string, string> length_image_uri, Dictionary <string, string> tuplet_image_uri)
        {
            selections = sel;
            selections.PropertyChanged += handleLengthChanged;
            LengthImages = getLengthImages(length_image_uri);
            TupletImages = genTupletImages(tuplet_image_uri);

            Length     = NoteLength.None;
            TupletType = TupletType.None;
        }
Exemplo n.º 13
0
        public List <Length> genTupletLengths(CommandSelections selections)
        {
            var lengths = new List <Length>();

            foreach (Chord chord in Chords)
            {
                lengths.Add(TupleLength.createInstance(chord.Length.NoteType, Type));
            }
            return(lengths);
        }
Exemplo n.º 14
0
 public ChangeChordPositionAtr(CommandSelections selection)
 {
     Chord         = selection.SelectedChord.FirstOrDefault();
     FirstMeasure  = selection.SelectedMeasure[0];
     SecondMeasure = selection.SelectedMeasure[1];
     Position      = selection.Position;
     if (Position < Chord.Position.Index)
     {
         Position++;
     }
 }
Exemplo n.º 15
0
        public BPMTimeSigView(CommandSelections s, GuiCommandExecutor e, Selected se, Dictionary <string, string> length_uri, Dictionary <string, string> other_uri, int b, int n, NoteLength bl)
        {
            selections = s;
            executor   = e;
            selected   = se;
            selections.PropertyChanged += handlePropertyChanged;

            BPM      = b;
            NumBeats = n;
            BeatType = bl;

            LengthImages = getLengthImages(length_uri);
            getOtherImages(other_uri);
            initCommands();
        }
Exemplo n.º 16
0
        public IEffect genEffect(CommandSelections selection)
        {
            IEffect effect = null;

            switch (selection.SelectedEffectType)
            {
            case EffectType.Bend:
                effect = Bend.createInstance(selection.BendAmount ?? .5, selection.Returns ?? false);
                break;

            case EffectType.Pinch_Harmonic:
                effect = PinchHarmonic.createInstance();
                break;

            case EffectType.Vibrato:
                effect = Vibrato.createInstance(selection.Wide ?? false);
                break;
            }
            selection.SelectedEffect = effect;
            return(effect);
        }
Exemplo n.º 17
0
        public int?genCorrectedPosition(CommandSelections selection)
        {
            int init = (int)selection.Position;

            foreach (Measure Measure in Measures)
            {
                if (Measure.Position.Index == init)
                {
                    return(null);
                }
            }

            int first_pos = (from Measure measure in Measures select measure.Position.Index).Min();

            if (init > first_pos)
            {
                init -= (Measures.Count() - 1);
            }

            return(init);
        }
Exemplo n.º 18
0
        public IMultiEffect genEffect(CommandSelections selection)
        {
            Note         first  = selection.SelectedNote[0];
            Note         second = selection.SelectedNote[1];
            IMultiEffect effect = null;

            switch (selection.SelectedEffectType)
            {
            case EffectType.Slide:
                effect = Slide.createInstance(first, second, selection.Legato ?? false);
                break;

            case EffectType.HOPO:
                effect = HOPO.createInstance(first, second);
                break;

            case EffectType.Tie:
                effect = Tie.createInstance(first, second);
                break;
            }
            selection.SelectedEffect = effect;
            return(effect);
        }
Exemplo n.º 19
0
 public void populateCommandSelections(CommandSelections selections)
 {
     selections.ClearModel();
     if (PartNode != null)
     {
         selections.SelectedPart = PartNode.getPart();
     }
     foreach (MeasureTreeNode node in MeasureNodes)
     {
         selections.SelectedMeasure.Add(node.getMeasure());
     }
     foreach (ChordTreeNode node in ChordNodes)
     {
         selections.SelectedChord.Add(node.getChord());
     }
     foreach (NoteTreeNode node in NoteNodes)
     {
         selections.SelectedNote.Add(node.getNote());
     }
     if (EffectNode != null)
     {
         selections.SelectedEffect = EffectNode.getEffect();
     }
 }
Exemplo n.º 20
0
 public ChangeInstrumentInfoBld(CommandSelections selections)
 {
     attributes = new ChangeInstrumentInfoAtr(selections);
 }
Exemplo n.º 21
0
 public ChangeSongInfoBld(CommandSelections selections)
 {
     attributes = new ChangeSongInfoAtr(selections);
 }
Exemplo n.º 22
0
 public CreateTupletFromNotesBld(CommandSelections selections)
 {
     attributes = new CreateTupletFromNotesAtr(selections);
 }
Exemplo n.º 23
0
 public ChangeMeasureBpmBld(CommandSelections selection)
 {
     attributes = new ChangeMeasureBpmAtr(selection);
 }
Exemplo n.º 24
0
 public ChangeMeasureTimeSigBld(CommandSelections selection)
 {
     attributes = new ChangeMeasureTimeSigAtr(selection);
 }
Exemplo n.º 25
0
 public AddRestChordToPartBld(CommandSelections selection)
 {
     attributes = new AddRestChordToPartAtr(selection);
 }
Exemplo n.º 26
0
 public RemoveMultipleMeasuresFromPartBld(CommandSelections selection)
 {
     attributes = new RemoveMultipleMeasuresFromPartAtr(selection);
 }
Exemplo n.º 27
0
 public AddMeasureToPartBld(CommandSelections selection)
 {
     attributes = new AddMeasureToPartAtr(selection);
 }
Exemplo n.º 28
0
 public GuiCommandExecutor(CommandExecutor ex, CommandSelections s, VisualInfo v_info)
 {
     executor   = ex;
     selections = s;
     info       = v_info;
 }
Exemplo n.º 29
0
        public static IActionBuilder getBuilderFromType(CommandType type, CommandSelections selections)
        {
            switch (type)
            {
            case CommandType.AddMeasureToPart:
                return(new AddMeasureToPartBld(selections));

            case CommandType.AddRestToMeasure:
                return(new AddRestChordToMeasureBld(selections));

            case CommandType.AddRestToPart:
                return(new AddRestChordToPartBld(selections));

            case CommandType.AddNoteToChord:
                return(new AddNoteToChordBld(selections));

            case CommandType.AddNoteToMeasure:
                return(new AddNoteToMeasureBld(selections));

            case CommandType.AddNoteToPart:
                return(new AddNoteToPartBld(selections));

            case CommandType.RemoveNoteFromChord:
                return(new RemoveNoteFromChordBld(selections));

            case CommandType.RemoveMultipleNotesFromChord:
                return(new RemoveMultipleNotesFromChordBld(selections));

            case CommandType.RemoveChordFromMeasure:
                return(new RemoveChordFromMeasureBld(selections));

            case CommandType.RemoveMultipleChordsFromMeasure:
                return(new RemoveMultipleChordsFromMeasureBld(selections));

            case CommandType.ChangeChordLength:
                return(new ChangeChordLengthBld(selections));

            case CommandType.ChangeNoteString:
                return(new ChangeNoteStringBld(selections));

            case CommandType.ChangeNoteFret:
                return(new ChangeNoteFretBld(selections));

            case CommandType.ChangeNotePosition:
                return(new ChangeNotePositionBld(selections));

            case CommandType.ChangeNotePositionNewChord:
                return(new ChangeNotePositionNewChordBld(selections));

            case CommandType.ChangeNotePositionNewMeasure:
                return(new ChangeNotePositionNewMeasureBld(selections));

            case CommandType.ChangeChordPosition:
                return(new ChangeChordPositionBld(selections));

            case CommandType.ChangeChordPositionNewMeasure:
                return(new ChangeChordPositionNewMeasureBld(selections));

            case CommandType.ChangeMultipleChordPosition:
                return(new ChangeMultipleChordPositionBld(selections));

            case CommandType.ChangeMultipleChordPositionNewMeasure:
                return(new ChangeMultipleChordPositionNewMeasureBld(selections));

            case CommandType.AddPalmMuteEffect:
                return(new AddPalmMuteEffectBld(selections));

            case CommandType.AddSingleNoteEffect:
                return(new AddSingleNoteEffectBld(selections));

            case CommandType.RemoveNoteEffect:
                return(new RemoveNoteEffectBld(selections));

            case CommandType.AddMultiNoteEffect:
                return(new AddMultiNoteEffectBld(selections));

            case CommandType.RemoveMeasureFromPart:
                return(new RemoveMeasureFromPartBld(selections));

            case CommandType.RemoveMultipleMeasuresFromPart:
                return(new RemoveMultipleMeasuresFromPartBld(selections));

            case CommandType.ChangeMeasurePosition:
                return(new ChangeMeasurePositionBld(selections));

            case CommandType.ChangeMultipleMeasurePosition:
                return(new ChangeMultipleMeasurePositionBld(selections));

            case CommandType.ChangeMeasureBPM:
                return(new ChangeMeasureBpmBld(selections));

            case CommandType.ChangeMeasureTimeSig:
                return(new ChangeMeasureTimeSigBld(selections));

            case CommandType.CreateTupletFromNotes:
                return(new CreateTupletFromNotesBld(selections));

            case CommandType.ChangeSongInfo:
                return(new ChangeSongInfoBld(selections));

            case CommandType.ChangeInstrumentInfo:
                return(new ChangeInstrumentInfoBld(selections));

            default:
                return(null);
            }
        }
Exemplo n.º 30
0
 public ChangeMultipleMeasurePositionBld(CommandSelections selection)
 {
     attributes = new ChangeMultipleMeasurePositionAtr(selection);
 }