// FINDING ALGORITHMS private void FindingForWords() { // запам'ятовуємо початкове положення каретки int selectionStartIndex = CodeRichTextBox.SelectionStart; int selectionLength = CodeRichTextBox.SelectionLength; // для кожного слова в RichTextBox string[] WordsInText = CodeRichTextBox.Text.Split(); int carriagePosition = 0;// індекс позиції каретки foreach (string word in WordsInText) { Literal literal = LiteralList.ContainsReturn(word); if (literal != null)// якщо слово є літералом... { // ...змінюємо його колір CodeRichTextBox.Select(carriagePosition, word.Length); CodeRichTextBox.SelectionColor = literal.Color; } else // якщо слово не є літералом { // потрібно коли слово переправлено CodeRichTextBox.Select(carriagePosition, word.Length); CodeRichTextBox.SelectionColor = Color.Black; } // міняємо індекс позиції каретки carriagePosition += word.Length + 1; } // повертаємо каретку в ту позицію в якій вона була CodeRichTextBox.Select(selectionStartIndex, selectionLength); }
private void Remove_btn_Click(object sender, EventArgs e) { if (LiteralListBox.SelectedItem != null) { LiteralList.RemoveAt(LiteralListBox.SelectedIndex); LiteralListBox.Items.RemoveAt(LiteralListBox.SelectedIndex); } }
private void AddLiteral(Literal value) { if (!string.IsNullOrWhiteSpace(value.ID) && // якщо це НЕ порожнє слово і ... ListBox.NoMatches == LiteralListBox.FindStringExact(value.ID)) // ...такого слова немає в списку, то ... { // ... додаємо LiteralList.Add(new Literal(value, color: NextColor())); LiteralListBox.Items.Add(value.ID); } }
public Node LitList() { var literalList = new LiteralList(); literalList.Add(LitSimple()); while (firstOfListContinuation.Contains(CurrentToken)) { Expect(TokenCategory.COMMA); literalList.Add(LitSimple()); } return(literalList); }
public override void ExitArray(LuminaryParser.ArrayContext context) { LiteralList list = _lists.Pop(); if (_lists.Count > 0) { _lists.Peek().Value.Add(list); } else { _literal = list; } TryConsumeLiteral(context.Parent); }
private string FormText() { string[] IDS = LiteralList.Select(literal => literal.ID).ToArray(); string[] text = CodeRichTextBox.Text.Split(); for (int i = 0; i < IDS.Length; ++i) { for (int j = 0; j < text.Length; ++j) { if (text[j] == IDS[i]) { text[j] = String.Concat('$', IDS[i], '$'); } } } return(String.Join(separator: " ", value: text)); }
public StackFrame(){ this.locals = new LiteralList(); this.parameters = new LiteralList(); }
public StackFrame() { this.locals = new LiteralList(); this.parameters = new LiteralList(); }