Disable select/unselect with mouse and shif/crtl in GUI

I make my editor on game object. I’d like to have possibility to select few points, lines etc. at same time, by holding shif/crtl. But when I hold shift and press mouse button my game object are deselected. How can I block shift press event at this situation.

        void MouseCheck()
        {
            var currentEvent = Event.current;

            if (currentEvent.type == EventType.MouseDown && currentEvent.button == 0)
            {
                var ray = HandleUtility.GUIPointToWorldRay(currentEvent.mousePosition);
                var shift = currentEvent.shift;
                var foundObject = owenr.FindClosestPoint(ray.origin, shift, currentEvent.control);
                if (!foundObject)
                    foundObject = owenr.FindClosestLine(ray.origin, shift, currentEvent.control);
                if (foundObject)
                {
                    if (shift)
                        DisableShift();
                }
            }
        }
        void DisableShift()
        {
            ??????????????????????
        }

I found solution. Not best for me but can be useful for others.

        int controlIDSafeOffset = 100; // its hack, maybe is better way to get first id
        void EventManagement()
        {
            switch (Event.current.type)
            {
                case EventType.Repaint:
                    DrawPoints(EventType.Repaint);
                    break;
                case EventType.Layout:
                    DrawPoints(EventType.Layout); break;
                case EventType.MouseDown:
                    {
                        if (Event.current.button == 0)
                        {
                            var id = HandleUtility.nearestControl - controlIDSafeOffset;
                            AddPointToSelectedList(id, Event.current.shift);
                        }
                    }; break;
            };

        }

        private void DrawPoints(EventType layout)
        {
            for (var i = 0; i < points.Length; i++)
                Handles.DotHandleCap(i + controlIDSafeOffset, points[i], Quaternion.identity, 0.5f, layout);
        }