private void undoStripButton_Click(object sender, EventArgs e) { if (CurrentTB.UndoEnabled) { CurrentTB.Undo(); } }
private void rendo_Click(object sender, EventArgs e) { if (CurrentTB.RedoEnabled) { CurrentTB.Redo(); } }
/// <summary> /// Handles the CopyToolStripButton_Click event. /// </summary> /// <param name="sender">Sender Object<see cref="object"/></param> /// <param name="e">Event Arguments<see cref="EventArgs"/></param> private void CopyToolStripButton_Click(object sender, EventArgs e) { if (CurrentTB != null) { CurrentTB.Copy(); } }
/// <summary> /// Handles the FindToolStripButton_Click event. /// </summary> /// <param name="sender">Sender Object<see cref="object"/></param> /// <param name="e">Event Arguments<see cref="EventArgs"/></param> private void FindToolStripButton_Click(object sender, EventArgs e) { if (CurrentTB != null) { CurrentTB.ShowFindDialog(); } }
private void RedoToolStripMenuItem_Click(object sender, EventArgs e) { if (CurrentTB != null) { CurrentTB.Redo(); } }
private void ReplaceToolStripMenuItem_Click(object sender, EventArgs e) { if (CurrentTB != null) { CurrentTB.ShowReplaceDialog(); } }
private void PasteToolStripMenuItem_Click(object sender, EventArgs e) { if (CurrentTB != null) { CurrentTB.Paste(); } }
/// <summary> /// Handles the MainForm_KeyDown event. /// </summary> /// <param name="sender">Sender Object<see cref="object"/></param> /// <param name="e">Event Arguments<see cref="KeyEventArgs"/></param> private void MainForm_KeyDown(object sender, KeyEventArgs e) { if (CurrentTB != null) { if (e.Control && e.KeyCode == Keys.O) { if (file_open.ShowDialog() == DialogResult.OK) { CreateTab(file_open.FileName); } } else if (e.KeyCode == Keys.S && e.Modifiers == Keys.Control) { if (tsFiles.SelectedItem != null) { Save(tsFiles.SelectedItem); } } else if (e.Control && e.Shift && e.KeyCode == Keys.L) { CurrentTB.ClearCurrentLine(); } else if (e.Control && e.Shift && e.KeyCode == Keys.Oem2 && CurrentTB.CommentPrefix != null) { if (!CurrentTB.SelectedText.Contains(CurrentTB.CommentPrefix)) { CurrentTB.InsertLinePrefix(CurrentTB.CommentPrefix); } else { CurrentTB.RemoveLinePrefix(CurrentTB.CommentPrefix); } } } }
private void 다시실행ToolStripMenuItem_Click(object sender, EventArgs e) { if (CurrentTB.RedoEnabled) { CurrentTB.Redo(); } }
/// <summary> /// Handles the UndoToolStripButton_Click event. /// </summary> /// <param name="sender">Sender Object<see cref="object"/></param> /// <param name="e">Event Arguments<see cref="EventArgs"/></param> private void UndoToolStripButton_Click(object sender, EventArgs e) { if (CurrentTB != null) { CurrentTB.Undo(); } }
/// <summary> /// Handles the ZoomOutToolStripButton_Click event. /// </summary> /// <param name="sender">Sender Object<see cref="object"/></param> /// <param name="e">Event Arguments<see cref="EventArgs"/></param> private void ZoomOutToolStripButton_Click(object sender, EventArgs e) { if (CurrentTB != null) { CurrentTB.ChangeFontSize(-2); } }
protected override bool ProcessCmdKey(ref Message msg, Keys keyData) { bool bHandled = false; // switch case is the easy way, a hash or map would be better, // but more work to get set up. switch (keyData) { case Keys.Control | Keys.E: Close(); break; case Keys.Control | Keys.N: crea_un_nuovo_progetto(); break; case Keys.Control | Keys.S: Save(develop_area.SelectedTab); break; case Keys.Control | Keys.X: Close_tab(); break; case Keys.Alt | Keys.Control | Keys.Z: if (CurrentTB.RedoEnabled) { CurrentTB.Redo(); } break; case Keys.F6: if (CurrentTB != null && Path.GetExtension(develop_area.SelectedTab.Tag.ToString()) != ".c") { run_code(); } break; case Keys.F5: run_clickEvent(); break; case Keys.Control | Keys.Add: if (CurrentTB != null) { CurrentTB.Zoom++; } break; case Keys.Control | Keys.Subtract: if (CurrentTB != null) { CurrentTB.Zoom--; } break; } return(bHandled); }
private void NoneToolStripMenuItem_Click(object sender, EventArgs e) { syntaxLabel.Text = "None"; if (CurrentTB != null) { CurrentTB.ChangeSyntax(Language.Custom); } }
private void JavaScriptToolStripMenuItem_Click(object sender, EventArgs e) { syntaxLabel.Text = "JavaScript"; if (CurrentTB != null) { CurrentTB.ChangeSyntax(Language.JS); } }
private void XMLToolStripMenuItem_Click(object sender, EventArgs e) { syntaxLabel.Text = "XML"; if (CurrentTB != null) { CurrentTB.ChangeSyntax(Language.XML); } }
private void VisualBasicToolStripMenuItem_Click(object sender, EventArgs e) { syntaxLabel.Text = "Visual Basic"; if (CurrentTB != null) { CurrentTB.ChangeSyntax(Language.VB); } }
/// <summary> /// Handles the RefreshToolStripButton_Click event. /// </summary> /// <param name="sender">Sender Object<see cref="object"/></param> /// <param name="e">Event Arguments<see cref="EventArgs"/></param> private void RefreshToolStripButton_Click(object sender, EventArgs e) { if (CurrentTB != null) { CurrentTB.Refresh(); var r = new Range(CurrentTB); r.SelectAll(); CurrentTB.OnSyntaxHighlight(new TextChangedEventArgs(r)); } }
private void removeBook(object sender, MouseEventArgs e) { if (e.X < CurrentTB.LeftIndent) { var place = CurrentTB.PointToPlace(e.Location); if (CurrentTB.Bookmarks.Contains(place.iLine)) { CurrentTB.Bookmarks.Remove(place.iLine); } } }
private void btInvisibleChars_Click(object sender, EventArgs e) { foreach (FATabStripItem tab in tabMain.Items) { var ctl = (tab.Controls[0] as RegexTesterTab); HighlightInvisibleChars(ctl.RegexText.Range); HighlightInvisibleChars(ctl.TesterText.Range); } if (CurrentTB != null) { CurrentTB.Invalidate(); } }
void popupMenu_Opening(object sender, CancelEventArgs e) { //---block autocomplete menu for comments //get index of green style (used for comments) if (CurrentTB.Selection.Start.iChar > 0) { //current char (before caret) var c = CurrentTB[CurrentTB.Selection.Start.iLine][CurrentTB.Selection.Start.iChar - 1]; //if char contains green style then block popup menu if (CurrentTB.CharHasStyle(c, CurrentTB.SyntaxHighlighter.GreenStyle)) { e.Cancel = true; } } }
/// <summary> /// Starts or stops highlighting the current line based on {@code _highlightCurrentLine}. /// </summary> private void HighlightCurrentLine() { foreach (FATabStripItem tab in tsFiles.Items) { if (_highlightCurrentLine) { (tab.Controls[0] as FastColoredTextBox).CurrentLineColor = currentLineColor; } else { (tab.Controls[0] as FastColoredTextBox).CurrentLineColor = Color.Transparent; } } if (CurrentTB != null) { CurrentTB.Invalidate(); } }
private void HighlightCurrentLine() { foreach (Editor tab in tablist.ToArray()) { if (_highlightCurrentLine) { tab.mainEditor.CurrentLineColor = currentLineColor; } else { tab.mainEditor.CurrentLineColor = Color.Transparent; } } if (CurrentTB != null) { CurrentTB.Invalidate(); } }
private void UpdateFilter() { toSourceIndex.Clear(); var count = base.lines.Count; var regex = new Regex(LineFilterRegex); for (int i = 0; i < count; i++) { if (regex.IsMatch(lines[i].Text)) { toSourceIndex.Add(i); } } CurrentTB.NeedRecalc(true); CurrentTB.Invalidate(); }
private void popupMenu_Opening(object sender, CancelEventArgs e) { //---block autocomplete menu for comments //get index of green style (used for comments) var iGreenStyle = CurrentTB.GetStyleIndex(SyntaxHighlighter.PredefinedStyles.GreenStyle); if (iGreenStyle >= 0) { if (CurrentTB.Selection.Start.iChar > 0) { //current char (before caret) var c = CurrentTB[CurrentTB.Selection.Start.iLine][CurrentTB.Selection.Start.iChar - 1]; //green Style var greenStyleIndex = Range.ToStyleIndex(iGreenStyle); //if char contains green style then block popup menu if ((c.style & greenStyleIndex) != 0) { e.Cancel = true; } } } }
private void cutToolStripButton_Click(object sender, EventArgs e) { CurrentTB.Cut(); }
public MainWindow() { InitializeComponent(); //init menu images ComponentResourceManager resources = new ComponentResourceManager(typeof(MainWindow)); copyToolStripMenuItem.Image = ((Image)(resources.GetObject("copyToolStripButton.Image"))); cutToolStripMenuItem.Image = ((Image)(resources.GetObject("cutToolStripButton.Image"))); pasteToolStripMenuItem.Image = ((Image)(resources.GetObject("pasteToolStripButton.Image"))); // // newToolStripMenuItem // newToolStripMenuItem.Image = ((Image)(resources.GetObject("newToolStripMenuItem.Image"))); newToolStripMenuItem.ImageTransparentColor = Color.Magenta; newToolStripMenuItem.ShortcutKeys = ((Keys)((Keys.Control | Keys.N))); newToolStripMenuItem.Text = "&New"; // // openToolStripMenuItem // openToolStripMenuItem.Image = ((Image)(resources.GetObject("openToolStripMenuItem.Image"))); openToolStripMenuItem.ImageTransparentColor = Color.Magenta; openToolStripMenuItem.ShortcutKeys = ((Keys)((Keys.Control | Keys.O))); openToolStripMenuItem.Text = "&Open"; // // saveToolStripMenuItem // saveToolStripMenuItem.Image = ((Image)(resources.GetObject("saveToolStripMenuItem.Image"))); saveToolStripMenuItem.ImageTransparentColor = Color.Magenta; saveToolStripMenuItem.ShortcutKeys = ((Keys)((Keys.Control | Keys.S))); saveToolStripMenuItem.Text = "&Save"; tsbVerify.Click += TsbVerify_Click; EventHandler cutHndl = (s, e) => CurrentTB.Cut(); cutToolStripMenuItem.Click += cutHndl; cutToolStripButton.Click += cutHndl; EventHandler copyHndl = (s, e) => CurrentTB.Copy(); copyToolStripMenuItem.Click += copyHndl; copyToolStripButton.Click += copyHndl; EventHandler pasteHndl = (s, e) => CurrentTB.Paste(); pasteToolStripMenuItem.Click += pasteHndl; pasteToolStripButton.Click += pasteHndl; selectAllToolStripMenuItem.Click += (s, e) => CurrentTB.Selection.SelectAll(); EventHandler newFileHndl = (s, e) => { CreateTab(null); lbStatusStrip.Text = "New empy file."; }; newToolStripMenuItem.Click += newFileHndl; newToolStripButton.Click += newFileHndl; quitToolStripMenuItem.Click += (s, e) => Close(); findToolStripMenuItem.Click += (s, e) => CurrentTB.ShowFindDialog(); replaceToolStripMenuItem.Click += (s, e) => CurrentTB.ShowReplaceDialog(); tsBtnKeysOnly.CheckOnClick = true; tsBtnKeysOnly.Image = Program.blankImg; tsBtnKeysOnly.CheckedChanged += (s, e) => tsBtnKeysOnly.Image = tsBtnKeysOnly.Checked ? Program.checkImg : Program.blankImg; ofdMain.Multiselect = true; }
private void copyToolStripButton_Click(object sender, EventArgs e) { CurrentTB.Copy(); }
private void pasteToolStripButton_Click(object sender, EventArgs e) { CurrentTB.Paste(); }
/// <summary> /// Load styledText - recalculate line width, repaint control, update scrollbars, recolor text. /// </summary> /// <param name="styledText">Class which stores text data along with styles for each character.</param> public void Load(StyledText styledText, bool refreshSizeOnly = false) { // // Calculates line width based on FCTB component size (line widht is same for all lines) // int indent = SystemInformation.VerticalScrollBarWidth + 5; int prev_linesCount = linesCount; charsCountInLine = (CurrentTB.Width - indent) / CurrentTB.CharWidth - 1; linesCount = styledText.Length / charsCountInLine + 1; linesCountInWindow = Math.Min(linesCount, CurrentTB.Height / CurrentTB.CharHeight); if (CurrentTB.ShowLineNumbers) { indent = linesCount.ToString().Length *CurrentTB.CharWidth + 30; charsCountInLine = (CurrentTB.Width - indent) / CurrentTB.CharWidth - 1; linesCount = styledText.Length / charsCountInLine + 1; linesCountInWindow = Math.Min(linesCount, CurrentTB.Height / CurrentTB.CharHeight); } if (refreshSizeOnly && linesCount == prev_linesCount) { // here we exit, since we dont need to reload data - we have same linesCount //Debug.WriteLine("DynamicTextSource.Load skipped"); return; } StyledText = styledText; loadedLines.Clear(); // // Copy styles from "StyledText" to our class 'DynamicTextSource' // for (int i = 0; i < Styles.Length; i++) { Styles[i] = (i < styledText.Styles.Count) ? styledText.Styles[i] : null; } // // Recreate lines // UnloadUnusedLines(true); // clear all defined items in base.lines if (prev_linesCount > linesCount) { // remove items base.lines.RemoveRange(linesCount, prev_linesCount - linesCount); //Debug.WriteLine("Removed " + (prev_linesCount - linesCount)); } else { //add items base.lines.AddRange(new Line[linesCount - prev_linesCount]); //Debug.WriteLine("Added " + (linesCount - prev_linesCount)); } // // Load first visible lines // for (int i = 0; i < linesCountInWindow; i++) { LoadLineFromSourceString(i); } // // Recalculate scrollbars and other data for rendering controll // if (CurrentTB is DNAFastColoredTextBox) { // call custom method which is speed optimized (CurrentTB as DNAFastColoredTextBox).RecalcMy(); } else { CurrentTB.LineInfos.Clear(); CurrentTB.LineInfos.AddRange(new LineInfo[linesCount]); NeedRecalc(new TextChangedEventArgs(0, linesCount - 1)); if (CurrentTB.WordWrap) { OnRecalcWordWrap(new TextChangedEventArgs(0, linesCount - 1)); } CurrentTB.NeedRecalc(true, false); } }