void Update()
    {
        if (ExclusiveFocus.hasFocus)
        {
            return;
        }

        if (!KeyboardShortcuts.ModifierDown() && patternView.IsCurrentPatternValid())
        {
            for (int i = 0; i < noteBinds.Length; i++)
            {
                if (noteBinds[i].GetNoteDown(m_CurrentOctave))
                {
                    if (noteBinds[i].note != Note.None)
                    {
                        SetNoteOn(noteBinds [i].note, m_CurrentOctave + noteBinds [i].octaveOffset);
                    }
                }
            }
        }

        for (int i = 0; i < noteBinds.Length; i++)
        {
            if (noteBinds [i].GetNoteUp( ))
            {
                SetNoteOff(noteBinds [i].note, m_CurrentOctave + noteBinds [i].octaveOffset);
            }
        }
    }