Exemplo n.º 1
0
        private void btnStart_Click(object sender, System.EventArgs e)
        {
            switch (step)
            {
            case TimingStep.NotStarted:
                _start = DateTime.Now;
                timerStartToSilence.Enabled = true;
                step = TimingStep.StartToSilence;
                break;

            case TimingStep.StartToSilence:
                StartToSilence = DateTime.Now - _start;
                timerStartToSilence.Enabled = false;
                lblVerse.Text = _secondVerse;
                _start        = DateTime.Now;
                timerSilenceToStop.Enabled = true;
                step = TimingStep.SilenceToStop;
                break;

            case TimingStep.SilenceToStop:
                SilenceToStop = DateTime.Now - _start;
                timerSilenceToStop.Enabled = false;
                lblVerse.Text = _firstVerse;
                step          = TimingStep.NotStarted;
                break;
            }
        }
Exemplo n.º 2
0
 private void lblVerse_Click(object sender, EventArgs e)
 {
     if (!_started)
     {
         _start            = DateTime.Now;
         _started          = true;
         _firstVerse       = true;
         lblVerse.Text     = _Verses.Count > 0 ? _Verses[0]._Text : "";
         lblNextVerse.Text = _Verses.Count > 1 ? _Verses[1]._Text : "";
         timer.Enabled     = true;
         _step             = TimingStep.StartToSilence;
         _CurVerse         = 0;
     }
     else
     {
         timer.Enabled = false;
     }
 }
Exemplo n.º 3
0
        private void timer_Tick(object sender, EventArgs e)
        {
            TimeSpan span = DateTime.Now - _start;

            switch (_step)
            {
            case TimingStep.StartToSilence:

                if (span >= StartToSilence)
                {
                    if ((_CurVerse + 1) >= _Verses.Count)
                    {
                        timer.Enabled     = false;
                        progressBar.Value = 100;
                        lblVerse.Text     = "پایان";
                    }
                    else
                    {
                        _step         = TimingStep.SilenceToStop;
                        _start        = DateTime.Now;
                        lblVerse.Text = "تنفس";
                    }
                }
                else
                {
                    double ratio = span.TotalMilliseconds / StartToSilence.TotalMilliseconds;
                    string verse = lblVerse.Text;
                    lblVerse.Keyword = verse.Substring(0, (int)(ratio * verse.Length));
                    lblVerse.Invalidate();
                    progressBar.Value = (int)(ratio * 100);
                }
                break;

            case TimingStep.SilenceToStop:
                if (
                    (_firstVerse && span >= SilenceToStop)
                    ||
                    (!_firstVerse && span >= (SilenceToStop + SilenceToStop))
                    )
                {
                    _CurVerse++;
                    if (_CurVerse < _Verses.Count)
                    {
                        lblVerse.Text = _Verses[_CurVerse]._Text;

                        if ((_CurVerse + 1) < _Verses.Count)
                        {
                            lblNextVerse.Text = _Verses[_CurVerse + 1]._Text;
                        }
                        else
                        {
                            lblNextVerse.Text = "پایان";
                        }
                    }
                    _firstVerse = !_firstVerse;
                    _step       = TimingStep.StartToSilence;
                    _start      = DateTime.Now;
                }

                break;
            }
        }