internal void OpenContextMenu(GLContextMenu contextMenu, Point position) { if (currentContextMenu != null) { Remove(currentContextMenu); } currentContextMenu = contextMenu; if (currentContextMenu != null) { Add(currentContextMenu); currentContextMenu.Location = position; } }
public GLTextBox(GLGui gui) : base(gui) { Render += OnRender; MouseDown += OnMouseDown; MouseUp += OnMouseUp; MouseEnter += OnMouseEnter; MouseLeave += OnMouseLeave; MouseMove += OnMouseMove; Focus += OnFocus; FocusLost += OnFocusLost; KeyDown += OnKeyDown; KeyPress += OnKeyPress; skinEnabled = Gui.Skin.TextBoxEnabled; skinActive = Gui.Skin.TextBoxActive; skinHover = Gui.Skin.TextBoxHover; skinDisabled = Gui.Skin.TextBoxDisabled; outer = new Rectangle(0, 0, 100, 0); ContextMenu = new GLContextMenu(gui); ContextMenu.Add(new GLContextMenuEntry(gui) { Text = "Copy" }).Click += (s, e) => { if (selectionStart.Index != cursorPosition.Index) { CopySelection(); } }; ContextMenu.Add(new GLContextMenuEntry(gui) { Text = "Paste" }).Click += (s, e) => { if (Clipboard.ContainsText()) { Insert(Clipboard.GetText()); } }; }