private Scenarios.Action CreateRepeat(int reps, ref int ix)
        {
            ix++;
            ArrayList r = new ArrayList();

            while (!(reclistBox.Items[ix] is Scenarios.RepeatStopMarker))
            {
                if (reclistBox.Items[ix] is Scenarios.RepeatStartMarker)
                {
                    Scenarios.RepeatStartMarker startMark =
                        (Scenarios.RepeatStartMarker)reclistBox.Items[ix];
                    r.Add(CreateRepeat(startMark.repetitions, ref ix));
                    ix++;
                }
                else
                {
                    r.Add(reclistBox.Items[ix++]);
                }
            }
            return(new Scenarios.Action(r, reps));
        }
        //private void pausbutton_Click(object sender, System.EventArgs e)
        //{
        //    MessageBox.Show("Not implemented");
        //    status = Status.Paused;
        //    this.statusBar.Text = "Paused";
        //    if (status == Status.Recording)
        //    {
        //        OutputPanel.Instance.LogEvent("- Recording paused", true);
        //    }
        //    else if (status == Status.Playing)
        //    {
        //        OutputPanel.Instance.LogEvent("- Playback paused", true);
        //    }
        //}

        private void BuildScenario()
        {
            ArrayList scn = new ArrayList();
            int       i;

            for (i = 0; i < this.reclistBox.Items.Count; i++)
            {
                if (reclistBox.Items[i] is Scenarios.RepeatStartMarker)
                {
                    Scenarios.RepeatStartMarker startMark =
                        (Scenarios.RepeatStartMarker)reclistBox.Items[i];
                    scn.Add(CreateRepeat(startMark.repetitions, ref i));
                }
                else
                {
                    scn.Add(reclistBox.Items[i]);
                }
            }

            scenario = new Sate.Scenarios.Action(scn, 1);
        }