Exemple #1
0
    private void PopulateTextModeComboBox()
    {
        try
        {
            TextModeComboBox.SelectedIndexChanged -= new EventHandler(TextModeComboBox_SelectedIndexChanged);

            if (m_client != null)
            {
                if (m_client.LoadedNumerologySystems != null)
                {
                    TextModeComboBox.BeginUpdate();

                    TextModeComboBox.Items.Clear();
                    foreach (NumerologySystem numerology_system in m_client.LoadedNumerologySystems.Values)
                    {
                        string[] parts = numerology_system.Name.Split('_');
                        if (parts != null)
                        {
                            if (parts.Length == 3)
                            {
                                string text_mode = parts[0];
                                if (text_mode == "Original")
                                {
                                    continue;
                                }

                                if (!TextModeComboBox.Items.Contains(text_mode))
                                {
                                    TextModeComboBox.Items.Add(text_mode);
                                }
                            }
                        }
                    }
                }
            }
        }
        finally
        {
            TextModeComboBox.EndUpdate();
            TextModeComboBox.SelectedIndexChanged += new EventHandler(TextModeComboBox_SelectedIndexChanged);
        }
    }
Exemple #2
0
    private void AutoGenerateWordsButton_Click(object sender, EventArgs e)
    {
        TextModeComboBox.Enabled               = false;
        NumerologySystemComboBox.Enabled       = false;
        AddVerseAndWordValuesCheckBox.Enabled  = false;
        AddPositionsCheckBox.Enabled           = false;
        AddDistancesToPreviousCheckBox.Enabled = false;
        ValueCombinationDirectionLabel.Enabled = false;
        NumberTypeLabel.Enabled         = false;
        AutoGenerateWordsButton.Enabled = false;
        GenerateWordsButton.Enabled     = false;
        InspectButton.Enabled           = false;
        TextModeComboBox.Refresh();
        NumerologySystemComboBox.Refresh();
        AddVerseAndWordValuesCheckBox.Refresh();
        AddPositionsCheckBox.Refresh();
        AddDistancesToPreviousCheckBox.Refresh();
        ValueCombinationDirectionLabel.Refresh();
        NumberTypeLabel.Refresh();
        AutoGenerateWordsButton.Refresh();
        GenerateWordsButton.Refresh();
        InspectButton.Refresh();

        this.Cursor = Cursors.WaitCursor;
        try
        {
            // at the start of running
            ProgressBar.Value = 0;
            ProgressBar.Refresh();
            WordCountLabel.Text      = "0 Lines";
            WordCountLabel.ForeColor = Numbers.GetNumberTypeColor(0L);
            WordCountLabel.Refresh();

            if (m_generated_lines == null)
            {
                m_generated_lines = new List <string>();
            }
            if (m_generated_lines != null)
            {
                m_generated_lines.Clear();
            }

            if (ModifierKeys == Keys.Shift)
            {
                int loops = 0;
                foreach (string text_mode in TextModeComboBox.Items)
                {
                    TextModeComboBox.SelectedItem = text_mode;
                    TextModeComboBox.Refresh();

                    loops += NumerologySystemComboBox.Items.Count;
                }

                int i = 0;
                foreach (string text_mode in TextModeComboBox.Items)
                {
                    TextModeComboBox.SelectedItem = text_mode;
                    TextModeComboBox.Refresh();

                    foreach (string numerology_system in NumerologySystemComboBox.Items)
                    {
                        NumerologySystemComboBox.SelectedItem = numerology_system;
                        NumerologySystemComboBox.Refresh();

                        ProcessNumerologySystem();

                        // display progress
                        i++;
                        ProgressBar.Value = ((i + 1) * 100) / loops;
                        if (m_generated_lines != null)
                        {
                            WordCountLabel.Text      = m_generated_lines.Count + " Line" + (m_generated_lines.Count == 1 ? "" : "s");
                            WordCountLabel.ForeColor = Numbers.GetNumberTypeColor(m_generated_lines.Count);
                            WordCountLabel.Refresh();
                        }
                        Application.DoEvents();
                    } // foreach NumerologySystem
                }     // foreach TextMode
            }
            else
            {
                ProcessNumerologySystem();
            }

            // at the end of running
            ProgressBar.Value = 100;
            ProgressBar.Refresh();
            if (m_generated_lines != null)
            {
                WordCountLabel.Text      = m_generated_lines.Count + " Line" + (m_generated_lines.Count == 1 ? "" : "s");
                WordCountLabel.ForeColor = Numbers.GetNumberTypeColor(m_generated_lines.Count);
                WordCountLabel.Refresh();
            }
        }
        finally
        {
            TextModeComboBox.Enabled               = true;
            NumerologySystemComboBox.Enabled       = true;
            AddVerseAndWordValuesCheckBox.Enabled  = true;
            AddPositionsCheckBox.Enabled           = true;
            AddDistancesToPreviousCheckBox.Enabled = true;
            ValueCombinationDirectionLabel.Enabled = true;
            NumberTypeLabel.Enabled         = true;
            AutoGenerateWordsButton.Enabled = true;
            GenerateWordsButton.Enabled     = true;
            InspectButton.Enabled           = true;

            this.Cursor = Cursors.Default;
        }
    }