void ftsi_CheckedChanged(object sender, EventArgs e) { var ftsi = sender as FilterToolStripItem; if (ftsi == null) { const string errmsg = "Was expecting `{0}` to be type FilterToolStripItem, but was `{1}`."; if (log.IsErrorEnabled) { log.ErrorFormat(errmsg, sender, sender.GetType()); } Debug.Fail(string.Format(errmsg, sender, sender.GetType())); return; } // If checked, uncheck all other filters, then set this one as the active one if (ftsi.Checked) { foreach (var f in _tsFilters.Values.Where(f => f != ftsi)) { f.Checked = false; } _currentFilter = ftsi.Filter; } }
/// <summary> /// Handles when a filter is removed from the collection. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="MapDrawFilterHelperCollectionEventArgs"/> instance containing the event data.</param> void _filterCollection_Removed(MapDrawFilterHelperCollection sender, MapDrawFilterHelperCollectionEventArgs e) { // Remove the filter from the ToolBarControl's DropDownItems FilterToolStripItem ftsi; if (!_tsFilters.TryGetValue(e.Filter, out ftsi)) { const string errmsg = "Failed to find FilterToolStripItem for filter `{0}`."; if (log.IsErrorEnabled) { log.ErrorFormat(errmsg, e.Filter); } Debug.Fail(string.Format(errmsg, e.Filter)); return; } Debug.Assert(ftsi.Filter == e.Filter); _tsFilters.Remove(e.Filter); ftsi.Dispose(); // If the filter we just got rid of was the active one, set the active filter to null if (e.Filter == _currentFilter) { _currentFilter = null; } }
/// <summary> /// Initializes a new instance of the <see cref="FilterToolStripItem"/> class. /// </summary> /// <param name="filter">The <see cref="MapDrawFilterHelper"/>.</param> /// <param name="filterName">Name of the filter.</param> /// <exception cref="ArgumentNullException"><paramref name="filter"/> is null.</exception> /// <exception cref="ArgumentNullException"><paramref name="filterName"/> is null.</exception> public FilterToolStripItem(MapDrawFilterHelper filter, string filterName) { if (filter == null) { throw new ArgumentNullException("filter"); } _filter = filter; Name = filterName; Text = filterName; CheckOnClick = true; Checked = false; }
/// <summary> /// Initializes a new instance of the <see cref="FilterToolStripItem"/> class. /// </summary> /// <param name="filter">The <see cref="MapDrawFilterHelper"/>.</param> /// <param name="filterName">Name of the filter.</param> /// <exception cref="ArgumentNullException"><paramref name="filter"/> is null.</exception> /// <exception cref="ArgumentNullException"><paramref name="filterName"/> is null.</exception> public FilterToolStripItem(MapDrawFilterHelper filter, string filterName) { if (filter == null) throw new ArgumentNullException("filter"); _filter = filter; Name = filterName; Text = filterName; CheckOnClick = true; Checked = false; }
void ftsi_CheckedChanged(object sender, EventArgs e) { var ftsi = sender as FilterToolStripItem; if (ftsi == null) { const string errmsg = "Was expecting `{0}` to be type FilterToolStripItem, but was `{1}`."; if (log.IsErrorEnabled) log.ErrorFormat(errmsg, sender, sender.GetType()); Debug.Fail(string.Format(errmsg, sender, sender.GetType())); return; } // If checked, uncheck all other filters, then set this one as the active one if (ftsi.Checked) { foreach (var f in _tsFilters.Values.Where(f => f != ftsi)) { f.Checked = false; } _currentFilter = ftsi.Filter; } }
/// <summary> /// Handles when a filter is removed from the collection. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="MapDrawFilterHelperCollectionEventArgs"/> instance containing the event data.</param> void _filterCollection_Removed(MapDrawFilterHelperCollection sender, MapDrawFilterHelperCollectionEventArgs e) { // Remove the filter from the ToolBarControl's DropDownItems FilterToolStripItem ftsi; if (!_tsFilters.TryGetValue(e.Filter, out ftsi)) { const string errmsg = "Failed to find FilterToolStripItem for filter `{0}`."; if (log.IsErrorEnabled) log.ErrorFormat(errmsg, e.Filter); Debug.Fail(string.Format(errmsg, e.Filter)); return; } Debug.Assert(ftsi.Filter == e.Filter); _tsFilters.Remove(e.Filter); ftsi.Dispose(); // If the filter we just got rid of was the active one, set the active filter to null if (e.Filter == _currentFilter) _currentFilter = null; }