private void Select(Filter filter) { if (filter == SelectedFilter) return; SelectedFilter = filter; FilterListBox.SelectedIndex = FilterSource.Filters.IndexOf(filter); PopulateControls(SelectedFilter); }
private void Select(int filterindex) { if (filterindex != -1) { var filter = FilterSource.Filters[filterindex]; if (SelectedFilter == filter) return; SelectedFilter = filter; FilterListBox.SelectedIndex = filterindex; PopulateControls(SelectedFilter); } else { SelectedFilter = null; } }
private void PopulateControls(Filter filter) { if (propertyPanel.Controls.Contains(view)) propertyPanel.Controls.Remove(view); view = new PropertiesView(filter.GetSettings(), filter, filter.GetProperties, filter.GetDefaults, filter.Update); propertyPanel.Controls.Add(view); }
ContextMenuStrip FilterMenu() { var filtermenu = new ContextMenuStrip(); foreach (string filterType in Obs.GetSourceFilterTypes()) { string displayname = Obs.GetSourceTypeDisplayName(filterType) + FilterSource.Filters.Count + 1; var menuitem = new ToolStripMenuItem(displayname + " (" + filterType + ")"); menuitem.Click += (o, args) => { var filter = new Filter(filterType, displayname); FilterSource.AddFilter(filter); Select(filter); }; filtermenu.Items.Add(menuitem); } return filtermenu; }
public int MoveItem(Filter filter, obs_order_movement direction) { var oldindex = Filters.IndexOf(filter); int newindex = -1; switch (direction) { case obs_order_movement.OBS_ORDER_MOVE_UP: newindex = oldindex - 1; break; case obs_order_movement.OBS_ORDER_MOVE_DOWN: newindex = oldindex + 1; break; case obs_order_movement.OBS_ORDER_MOVE_TOP: newindex = 0; break; case obs_order_movement.OBS_ORDER_MOVE_BOTTOM: newindex = Filters.Count - 1; break; } SetFilterOrder(filter, direction); Filters.Move(oldindex, newindex); Debug.WriteLine("{0} new index is {1}", filter.Name, newindex); return newindex; }
public void AddFilter(Filter filtersource) { base.AddFilter(filtersource); Filters.Insert(0, filtersource); }
public void RemoveFilter(Filter filter) { base.RemoveFilter(filter); Filters.Remove(filter); filter.Remove(); filter.Dispose(); }