123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172 |
- using FastReport.Utils;
- using System;
- namespace FastReport.Forms
- {
- internal partial class FastM1nesweeperForm : BaseDialogForm
- {
- #region Private Fields
- private bool lockUpdate;
- private DifPreset[] presets;
- #endregion Private Fields
- #region Public Properties
- public int Bombs
- {
- get
- {
- return (int)tbBombs.Value;
- }
- }
- public int Columns
- {
- get
- {
- return (int)tbColumns.Value;
- }
- }
- public int Rows
- {
- get
- {
- return (int)tbRows.Value;
- }
- }
- #endregion Public Properties
- #region Public Constructors
- public FastM1nesweeperForm()
- {
- InitializeComponent();
- Localize();
- }
- #endregion Public Constructors
- #region Public Methods
- public override void Localize()
- {
- base.Localize();
- MyRes res = new MyRes("Forms,FastM1nesweeper");
- Text = res.Get("");
- lWelcome.Text = res.Get("Welcome");
- gbSettings.Text = res.Get("Settings");
- lDifficulty.Text = res.Get("Difficulty");
- cbDifficulty.Items.Add(res.Get("Custom"));
- cbDifficulty.Items.Add(res.Get("Easy"));
- cbDifficulty.Items.Add(res.Get("Medium"));
- cbDifficulty.Items.Add(res.Get("Hard"));
- cbDifficulty.Items.Add(res.Get("Master"));
- for (int i = 1; i <= 13; i++)
- {
- cbDifficulty.Items.Add("T" + i.ToString());
- }
- presets = new DifPreset[5 + 13];
- presets[0] = new DifPreset(0, 0, 0);
- presets[1] = new DifPreset(10, 8, 8);
- presets[2] = new DifPreset(20, 12, 12);
- presets[3] = new DifPreset(40, 16, 16);
- presets[4] = new DifPreset(80, 20, 20);
- for (int i = 1; i <= 13; i++)
- {
- presets[4 + i] = new DifPreset(80 + i * 10, 25, 25);
- }
- lBombs.Text = res.Get("Bombs");
- lColumns.Text = res.Get("Columns");
- lRows.Text = res.Get("Rows");
- cbDifficulty.SelectedIndex = 2;
- }
- #endregion Public Methods
- #region Private Methods
- private void cbDifficulty_SelectedIndexChanged(object sender, EventArgs e)
- {
- if (lockUpdate)
- return;
- try
- {
- lockUpdate = true;
- if (cbDifficulty.SelectedIndex > 0)
- {
- int i = cbDifficulty.SelectedIndex;
- tbBombs.Value = presets[i].bombs;
- tbColumns.Value = presets[i].columns;
- tbRows.Value = presets[i].rows;
- }
- }
- finally
- {
- lockUpdate = false;
- }
- }
- private void Settings_ValueChanged(object sender, EventArgs e)
- {
- if (lockUpdate)
- return;
- try
- {
- lockUpdate = true;
- for (int i = 0; i < presets.Length; i++)
- {
- if (presets[i].bombs == tbBombs.Value && presets[i].columns == tbColumns.Value && presets[i].rows == tbRows.Value)
- {
- cbDifficulty.SelectedIndex = i;
- return;
- }
- }
- cbDifficulty.SelectedIndex = 0;
- }
- finally
- {
- lockUpdate = false;
- }
- }
- #endregion Private Methods
- #region Private Structs
- private struct DifPreset
- {
- #region Public Fields
- public int bombs;
- public int columns;
- public int rows;
- #endregion Public Fields
- #region Public Constructors
- public DifPreset(int bombs, int rows, int columns)
- {
- this.bombs = bombs;
- this.rows = rows;
- this.columns = columns;
- }
- #endregion Public Constructors
- }
- #endregion Private Structs
- }
- }
|