// jeśli robimy pojedyńczą krzyżowke to to można pominąć
        public Components.Board_Info Generate(Components.Password_Info password)
        {
            board = null;
            Generate_Strait_Crossword(password);

            return(board);
        }
        public Components.SingleElement[] GetElement(Components.Password_Info password)
        {
            var elements = new List <Components.SingleElement>();

            Strait_Crossword(password.Password, elements);

            return(elements.ToArray());
        }
示例#3
0
        private void button1_Click(object sender, EventArgs e)
        {
            // Hasło powinno mieć conajniej 3 znaki
            if (textPassword.Text.Length < 3)
            {
                MessageBox.Show("Hasło powinno mieć przzynajmniej 3 znaki", "Złe hasło", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            password_Info = new Components.Password_Info(textPassword.Text);
            DialogResult  = DialogResult.OK;

            //zamykanie tego okna
            //  this.Hide();

            // otwieranie kolejnego okna
            //   new MainBoard().Show();
        }
        public void Generate_Strait_Crossword(Components.Password_Info password)
        {
            var elements = GetElement(password);

            ElementsIn(elements);

            var rows    = password.Password.Length;
            var columns = GetNumberOfColumns(elements);

            if (columns > rows)
            {
                rows = columns;
            }

            if (rows > columns)
            {
                columns = rows;
            }

            board = new Components.Board_Info(rows, columns, elements);
        }
        /// <summary>
        /// Tworzy Prostą krzyżówkę
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnProstaKrzyzowka_Click(object sender, EventArgs e)
        {
            // var form = new Form_haslo();
            var form = new Form_haslo();

            if (form.ShowDialog() == DialogResult.Cancel)
            {
                return;
            }


            password = form.password_Info;

            try
            {
                board = engine.Generate(password);

                //Rysuje plansze
                Draw();

                //Ustawia komórki
                Aligment();

                // Tworzy okienko z podpowiedzimi
                CreateClueBoard();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Houston mamy problem...", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            // dodać że mozna sprawdzać
            //Domyślnie ta opcja nie jest dostępna  bo nie ma czego sprawdzać
            //jeśli jeszcze nie mamy krzyżówki
            btnCheck.Enabled = true;
        }