コード例 #1
0
ファイル: MainViewModel.cs プロジェクト: chausner/X9AEditor
        private void ExecuteMoveDownCommand()
        {
            VoiceViewModel[] sortedSelectedVoices = SelectedVoices.OrderByDescending(voice => voice.Index).ToArray();

            foreach (VoiceViewModel voice in sortedSelectedVoices)
            {
                Voices.Move(voice.Index, voice.Index + 1);

                VoiceViewModel voiceBelow = Voices.Single(v => v.Index == voice.Index + 1);

                if (voice.LiveSetIndex < 8)
                {
                    voice.LiveSetIndex++;
                }
                else
                {
                    voice.LiveSetIndex = 1;
                    voice.LiveSetPage++;
                }

                if (voiceBelow.LiveSetIndex > 1)
                {
                    voiceBelow.LiveSetIndex--;
                }
                else
                {
                    voiceBelow.LiveSetIndex = 8;
                    voiceBelow.LiveSetPage--;
                }
            }
        }