// METHOD:: Remove persisted items no longer needed private void RemoveItems(int item) { if (SelectedIndexes.ContainsKey(item)) { SelectedIndexes.Remove(item); } }
protected override void OnMouseUp(MouseEventArgs e) { int Selection = GetSelectedFromLocation(e.Location); if (Selection == -1 || !(e.Button == MouseButtons.Left)) { return; } if (Multiselect && IsControlDown()) { if (!SelectedIndexes.Contains(Selection)) { SelectedIndexes.Add(Selection); } else { SelectedIndexes.Remove(Selection); } } else if (Multiselect && !IsControlDown()) { SelectedIndexes = new List <int>() { Selection } } ; else { SelectedIndexes = new List <int>() { Selection }; SelectedIndex = Selection; } if (Selection == -1) { SelectedIndexes = new List <int>(); } Invalidate(); SelectedIndexChanged?.Invoke(this, Selection); base.OnMouseUp(e); }
public override bool OnMouseDown(DxWindow window, DxControl ctl, MouseEventArgs args, SharpDX.Point pt) { if (!IntersectTest(pt.X, pt.Y) || !IsMouseOver) { if (Active) { TopMost = false; window.DrawOnTopList.Remove(this); } Active = false; return(false); } var oldActive = Active; if (pt.X >= Rect.X && pt.X <= Rect.X + Rect.Width && pt.Y >= Rect.Y && pt.Y <= Rect.Y + 21) { Active = !Active; } if (Active) { if (oldActive == false) { _currentPosition = 0; } if (_currentHighlightItem != -1) { if (MultiSelect) { if (SelectedIndexes.Contains(_currentHighlightItem + _currentPosition)) { SelectedIndexes.Remove(_currentHighlightItem + _currentPosition); } else { SelectedIndexes.Add(_currentHighlightItem + _currentPosition); } } else { SelectedIndexes.Clear(); SelectedIndexes.Add(_currentHighlightItem + _currentPosition); } } if (!MultiSelect) { if (oldActive) { Active = false; } } } TopMost = Active; if (Active && !oldActive) { window.DrawOnTopList.Add(this); } else if (!Active && oldActive) { window.DrawOnTopList.Remove(this); } return(true); }
// METHOD:: Remove persisted items no longer needed private void RemoveItems(int item) { SelectedIndexes.Remove(item); }
public void RemoveSelection(int tileId) { SelectedIndexes.Remove(tileId); }