private void AddSequenceRowButton_Click(object sender, RoutedEventArgs e)
        {
            if (timeTextBox.Text == "")
            {
                MessageBox.Show("Lisää riville kesto (ms)", "Virhe");
            }
            else
            {
                // Lisätään uusi rivi listaan
                PlayListRow newRow  = new PlayListRow();
                int         status1 = 0;
                int         status2 = 0;

                // Luetaan radiobuttonit
                bool red0 = (bool)redRadio0.IsChecked;
                status1 = red0 ? 0 : 1;
                bool blue0 = (bool)blueRadio0.IsChecked;
                status2 = blue0 ? 0 : 1;

                newRow.Time    = int.Parse(timeTextBox.Text);
                newRow.PinId1  = 26;
                newRow.Status1 = status1;
                newRow.PinId2  = 19;
                newRow.Status2 = status2;
                newList.addRow(newRow);
                SequenceEditListBox.ItemsSource = newList.PlayListRows;
                SequenceEditListBox.Items.Refresh();
            }
        }
示例#2
0
 public void addRow(PlayListRow playListRow)
 {
     PlayListRows.Add(playListRow);
 }
示例#3
0
        private void PlayButton_Click(object sender, RoutedEventArgs e)
        {
            // Play-nappia painettu, toistetaan sekvenssi
            var selectedSequence = this.SequencesComboBox.SelectedItem as LedSequence;

            if (selectedSequence != null)
            {
                PlayList uusiLista = new PlayList();
                try
                {
                    using (var loadSequences = new SequenceContext())
                    {
                        int time    = 0;
                        int pinId1  = 0;
                        int status1 = 0;
                        int pinId2  = 0;
                        int status2 = 0;

                        SequenceNameTextBox.Text = selectedSequence.Name;
                        var sequenceId = selectedSequence.Id;

                        /*
                         * var query = loadSequences.TimeRows
                         *  .Include(c => c.LedRows)
                         *  .ToArray();
                         */

                        var query = (
                            from timer in loadSequences.TimeRows
                            join leds in loadSequences.LedRows on timer.Id equals leds.TimeRow.Id
                            join sekvenssi in loadSequences.LedSequences on timer.LedSequence.Id equals sekvenssi.Id
                            where sekvenssi.Id.Equals(sequenceId)
                            select new
                        {
                            sequencedId = timer.LedSequence.Id,
                            sequenceName = timer.LedSequence.Name,
                            timeRowId = timer.Id,
                            time = timer.Time,
                            ledRowId = leds.Id,
                            ledPinId = leds.PinId,
                            ledStatus = leds.Status
                        }).ToArray();

                        PlayListRow playListRow = new PlayListRow();

                        int count = 0;

                        foreach (var sequence in query)
                        {
                            if (count % 2 == 0)
                            {
                                time    = sequence.time;
                                pinId1  = sequence.ledPinId;
                                status1 = sequence.ledStatus;
                            }
                            else
                            {
                                pinId2  = sequence.ledPinId;
                                status2 = sequence.ledStatus;
                                PlayListRow listanrivi = new PlayListRow(time, pinId1, status1, pinId2, status2);
                                uusiLista.addRow(listanrivi);
                            }
                            count++;
                        }
                    }
                }
                catch (Exception)
                {
                    throw;
                }

                PlaySequence(uusiLista);
            }
        }