public void setTriggerData(TriggerData aData)
        {
            if (aData == null)
            {
                mFilename = "";
                TriggerEvent = TriggerMessage.Null();
            }

            Filename = aData.Filename;
            TriggerEvent = aData.Message;
            loadFile();
        }
        private Set getSetFromFile(string aFile)
        {
            Set tSet = new Set();

            using (System.IO.StreamReader tFile = new System.IO.StreamReader(aFile))
            {
                using (XmlReader tReader = XmlReader.Create(tFile))
                {
                    XmlDocument xml = new XmlDocument();
                    xml.Load(tReader);

                    tSet = new Set();

                    XmlNode xSet = xml.SelectSingleNode("Set");
                    if (xSet.Attributes.Count > 0)
                    {
                        XmlAttribute tAt = xSet.Attributes["Name"];
                        tSet.Name = tAt.Value;
                    }

                    XmlNodeList tList = xml.SelectNodes("/Set/Song");

                    foreach (XmlNode xSong in tList)
                    {
                        Song tS = new Song();
                        if (xSong.Attributes.Count > 0)
                            tS.Name = xSong.Attributes["Name"].Value;

                        foreach (XmlNode xTrig in xSong.ChildNodes)
                        { 
                            TriggerData tData = new TriggerData();
                            tData.Filename = xTrig["Filename"].InnerText;

                            TriggerMessage tTrig = new TriggerMessage();
                            XmlNode xMes = xTrig["Message"];
                            tTrig.stEvent = xMes["Event"].InnerText;
                            tTrig.stRawMessage = Convert.ToInt32(xMes["RawMessage"].InnerText);

                            tData.Message = tTrig;

                            tS.TriggerDataList.Add(tData);
                        }

                        tSet.SongList.Add(tS);
                    }

                }
            }

            return tSet;
        }
        public void setLatestMidiEvent(TriggerMessage aEvent)
        {
            if (mTriggerWindow.IsVisible)
            {
                mTriggerWindow.RecentMidiEvents.Add(aEvent);
                int count = mTriggerWindow.RecentMidiEvents.Count;
                count++;
                mTriggerWindow.AddTo(count + " : " + aEvent.ToString());
            }
            else
            {
                // match to trigger panel(s) which have the same binding

                foreach (SongTrigger tS in mSongTriggers)
                {
                    if (aEvent == tS.mTrigger)
                        mWindow.SongListComboBox.SelectedIndex = tS.mIndex;

                }
                foreach (TriggerPanel tP in TriggerPanels)
                {
                    if (tP.TriggerEvent == aEvent)
                        tP.TriggerPlay();
                }
            }
        }
 public void SetTriggerForCurrentSong(TriggerMessage aTrig)
 {
     SongTrigger tT = new SongTrigger();
     tT.mTrigger = aTrig;
     tT.mIndex = mCurrentSongIndex;
     mSongTriggers.Add(tT);
 }
Example #5
0
 public TriggerData(string aFilename, TriggerMessage aMsg)
 {
     Filename = aFilename;
     mMessage = aMsg;
 }
        private void OKButton_Click(object sender, RoutedEventArgs e)
        {
            int tIndex = MidiMessageListBox.SelectedIndex;
            if (tIndex == -1)
            {
                mAccepted = false;
                Hide();
                return;
            }

            mSelectedMidiEvent = mRecentMidiEvents[tIndex];
            mAccepted = true;

            Hide();
        }