コード例 #1
0
ファイル: Form1.cs プロジェクト: NelsonG6/BenderWorld
        private void start_algorithm(object sender, EventArgs e)
        {
            change_enabled_setting(); //Toggle controls
            AlgorithmState.StartAlgorithm();

            FormsHandler.LoadAndDisplayState(AlgorithmState.GetCurrentState());
        }
コード例 #2
0
ファイル: Form1.cs プロジェクト: NelsonG6/BenderWorld
        //Advance algorithm button
        async private void buttonAdvancestepsdropdown_Click(object sender, EventArgs e)
        {
            FormsHandler.halted = false;
            int steps_to_take = Int32.Parse(comboboxAdvancesteps.Text);
            int episodes      = Int32.Parse(comboboxAdvanceepisodes.Text);

            if (episodes > 0)
            {
                steps_to_take += (Int32.Parse(comboboxAdvanceepisodes.Text) * FormsHandler.loaded_state.GetStepLimit()) + 1; //+1 to get the new episode generated
            }
            int initial_delay = Int32.Parse(comboboxDelayms.Text);
            int delay         = initial_delay;

            if (steps_to_take > 1)
            {
                textboxProgresssteps.Text         = steps_to_take.ToString();
                groupboxCountdown.Enabled         = true;
                groupboxAlgorithmprogress.Enabled = false;
                groupboxHistory.Enabled           = false;
                while (steps_to_take-- > 0 && !FormsHandler.halted)
                {
                    AlgorithmState.PrepareStep();
                    FormsHandler.LoadAndDisplayState(AlgorithmState.GetCurrentState());
                    textboxProgresssteps.Text = steps_to_take.ToString();
                    do
                    {
                        await Task.Delay(1);

                        textboxCountdown.Text = delay.ToString();
                    } while (--delay > 0 && !FormsHandler.halted);
                    delay = initial_delay;
                }
                groupboxAlgorithmprogress.Enabled = true;
                groupboxCountdown.Enabled         = false;
                groupboxHistory.Enabled           = true;
            }

            else
            {
                AlgorithmState.PrepareStep();
                FormsHandler.LoadAndDisplayState(AlgorithmState.GetCurrentState());
            }
        }
コード例 #3
0
ファイル: Form1.cs プロジェクト: NelsonG6/BenderWorld
        private void restart_algorithm_button_click(object sender, EventArgs e)
        {
            FormsHandler.StopAlgorithm(AlgorithmState.GetCurrentState());

            change_enabled_setting(); //Togle controls
        }