public void SetAccentIndex(int index) { isChanged = accentIndex != index; if (isChanged) { if (baseCategory != null) { baseCategory.SetChangedStatus(); } } accentIndex = index; if (index >= 0) { if (index < originalText.Length) { textWithAccent = originalText.Insert(index + 1, Settings.AccentStr); } if (bukvy != null) { foreach (Bukva b in bukvy) { b.ResetAccent(); } Bukva bk = new Bukva(bukvy[index].Symbol_Info.Symbol, true); bukvy[index] = bk; } } else { textWithAccent = null; } }
public void SetSlovo(Slovo slovo) { panel1.Controls.Clear(); MyCheckBoxEx.checkBoxesList.Clear(); curSlovo = slovo; if (slovo.IsHasAccent && !String.IsNullOrEmpty(slovo.TextWithAccent)) { SlovoView_LBL.Text = slovo.TextWithAccent; } else { SlovoView_LBL.Text = slovo.OriginalText; } SlovoView_LBL.ForeColor = Color.Blue; int slovoLength = curSlovo.OriginalText.Length; int x_loc_start = 10; int y_loc_start = 10; int btnWidth = 40; int btnHeight = 50; for (int i = 0; i < slovoLength; i++) { if (i > 0) { x_loc_start += btnWidth + 5; } bool is_checked = false; if (slovo.IsHasAccent && slovo.AccentIndex >= 0 && slovo.AccentIndex == i) { is_checked = true; } MyCheckBoxEx.countCheckBtns++; Bukva bk = curSlovo.FindBukvuByIndex(i); MyCheckBoxEx mcb = new MyCheckBoxEx(i, bk, curSlovo.OriginalText[i].ToString(), is_checked); mcb.Appearance = Appearance.Button; mcb.Font = new Font("Arial", 24); mcb.CheckedChanged += new EventHandler(mcb_CheckedChanged); mcb.Size = new Size(btnWidth, btnHeight); mcb.Location = new Point(x_loc_start, y_loc_start); MyCheckBoxEx.checkBoxesList.Add(mcb); } for (int i = 0; i < MyCheckBoxEx.checkBoxesList.Count; i++) { panel1.Controls.Add(MyCheckBoxEx.checkBoxesList[i]); } }
public MyCheckBoxEx(int _index, Bukva _bukva, string text, bool is_checked) { bukva = _bukva; index = _index; this.Appearance = Appearance.Button; this.Text = text; this.Checked = is_checked; bool is_enabled = false; if (bukva != null && bukva.Symbol_Info.IsGlas) { is_enabled = true; } this.Enabled = is_enabled; if (is_checked) { this.BackColor = Color.WhiteSmoke; } }