コード例 #1
0
    void Transpose(int direction)
    {
        history.AddHistroyAtSelection( );

        if (patternView.boxSelection.isSelecting)
        {
            patternView.boxSelection.FinalizeSelection();
        }

        if (patternView.boxSelection.hasSelection)
        {
            patternView.boxSelection.DoOperation((int line, int chn, int col) => {
                if (col != 0)
                {
                    return;
                }

                int newNote = TransposeNote(direction, songData.GetData(chn, line, col));
                songData.SetData(chn, line, col, newNote);
            });
        }
        else if (patternView.position.dataColumn == 0)
        {
            int newNote = TransposeNote(direction, patternView.GetDataAtSelection());
            patternView.SetDataAtSelection(newNote);
        }
    }