void OnSelection(AutocompleteResult value) { if (Selection != null) { Selection(this, value); } }
public void SetOptions(AutocompleteResult [] values) { waitingPanel.Visible = false; mainPanel.Visible = true; errorPanel.Visible = false; m_options.Clear(); foreach (AutocompleteResult value in values) { string label = m_debugger.GetValueString(value.m_key); ListViewItem item = new ListViewItem(label); item.SubItems.Add(value.m_valueType.ToString().Substring(0, 2)); item.Tag = value; m_options.Add(item); } FilterOptions(); optionsListView.Focus(); }
void m_autocompletePopup_Selection(object sender, AutocompleteResult value) { string str = m_debugger.GetValueString(value.m_key); string text; if (value.m_key.Type == LuaValueType.NUMBER) { text = String.Format("[{0}]", str); } else if (m_wordRegex.IsMatch(str)) { text = String.Format("{0}{1}", m_autocompleteOperator, str); } else { text = String.Format("[\"{0}\"]", str); } inputBox.ReplaceSelection(text); }
void ProcessMessage_AutocompleteOptions() { AutocompleteResult[] options = null; int seqid = m_readBuffer.ReadInt32(); int count = m_readBuffer.ReadInt32(); if (count >= 0) { options = new AutocompleteResult[count]; for (int index = 0; index < count; ++index) { LuaValue key = m_readBuffer.ReadValue(); LuaValueType valueType = (LuaValueType)m_readBuffer.ReadInt32(); options[index] = new AutocompleteResult(key, valueType); } } string message = m_readBuffer.ReadString(); OnAutocompleteOptions(seqid, options, message); }
void OnSelection(AutocompleteResult value) { if (Selection != null) Selection(this, value); }
public AutocompleteOptionsEventArgs(int seqid, AutocompleteResult[] options, string message) { m_sequenceID = seqid; m_options = options; m_message = message; }
private void FilterOptions() { expressionLabel.Text = m_expr + m_prefix; ListViewItem selection = optionsListView.SelectedItems.Count == 0 ? null : optionsListView.SelectedItems[0]; optionsListView.BeginUpdate(); optionsListView.SelectedItems.Clear(); optionsListView.Items.Clear(); optionsListView.Sorting = SortOrder.None; foreach (ListViewItem item in m_options) { if (item.Text.IndexOf(m_prefix, StringComparison.InvariantCultureIgnoreCase) < 0) { continue; } AutocompleteResult info = (AutocompleteResult)item.Tag; if (info.m_valueType == LuaValueType.FUNCTION) { if (!functionsFilterButton.Checked) { continue; } } else if (info.m_valueType == LuaValueType.TABLE) { if (!tablesFilterButton.Checked) { continue; } } else if (!valuesFilterButton.Checked) { continue; } optionsListView.Items.Add(item); } optionsListView.Sorting = SortOrder.Ascending; if (selection == null || selection.ListView != optionsListView) { selection = optionsListView.Items.Count == 0 ? null : optionsListView.Items[0]; } if (selection != null) { selection.Selected = true; selection.Focused = true; selection.EnsureVisible(); } optionsListView.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent); if (optionsListView.Items.Count > 0) { int visibleItems = Math.Min(8, optionsListView.Items.Count); int width = optionsListView.Columns[0].Width; int height = visibleItems * optionsListView.Items[0].GetBounds(ItemBoundsPortion.Entire).Height; optionsListView.ClientSize = new Size(width, height); optionsListView.Width = width + 32; } optionsListView.EndUpdate(); }
void OnAutocompleteOptions(int seqid, AutocompleteResult [] options, string message) { AutocompleteOptionsEventArgs args = new AutocompleteOptionsEventArgs(seqid, options, message); if (mForm != null && mForm.IsHandleCreated) mForm.BeginInvoke(new MethodInvoker(delegate() { if (this.AutocompleteOptions != null) this.AutocompleteOptions(this, args); })); }
void m_autocompletePopup_Selection(object sender, AutocompleteResult value) { string str = m_debugger.GetValueString(value.m_key); string text; if (value.m_key.Type == LuaValueType.NUMBER) text = String.Format("[{0}]", str); else if (m_wordRegex.IsMatch(str)) text = String.Format("{0}{1}", m_autocompleteOperator, str); else text = String.Format("[\"{0}\"]", str); inputBox.ReplaceSelection(text); }