public void ShowCodeHelper() { if (this.m_caretPosition.column == 0) { return; } string line = this.m_lines[this.m_caretPosition.line].line; int num = line.LastIndexOf('(', this.m_caretPosition.column - 1); if (num == -1) { return; } int num2 = base.FindWordStart(line, num); string key = line.Substring(num2, num - num2); Wilderness.FunctionDef function; if (!NomadCodeBox.s_functions.TryGetValue(key, out function)) { return; } NomadTextBox.Position position = new NomadTextBox.Position(this.m_caretPosition.line, num + 1); int x; int num3; base.GetPointFromPosition(position, out x, out num3); int num4 = line.IndexOf(')', this.m_caretPosition.column - 1); if (num4 == -1) { num4 = line.Length; } this.m_codeHelperRange = new NomadTextBox.Selection(new NomadTextBox.Position(this.m_caretPosition.line, num), new NomadTextBox.Position(this.m_caretPosition.line, num4)); if (this.m_codeHelper == null) { this.m_codeHelper = new CodeHelper(); } else { this.m_codeHelper.Visible = false; } this.m_codeHelper.Setup(function); this.m_codeHelper.Location = new Point(x, num3 + base.LineHeight); base.SuspendLayout(); this.m_codeHelper.Parent = this; base.ResumeLayout(); this.m_codeHelper.Visible = true; }
public void HideCodeHelper() { if (this.m_codeHelper != null) { this.m_codeHelper.Dispose(); this.m_codeHelper = null; } }