/// <summary>
        ///    Handle select event by selecting node.
        /// </summary>
        public void Handle(EntitySelectedEvent eventToHandle)
        {
            if (DiagramManager == null)
            {
                return;
            }
            if (!DiagramManager.MustHandleExisting(eventToHandle.ObjectBase.Id))
            {
                return;
            }

            IBaseNode baseNode = DiagramModel.GetNode(eventToHandle.ObjectBase.Id);

            if (baseNode == null)
            {
                return;
            }

            IContainerBase parentContainer = baseNode.GetParent();

            // Show node and parents
            baseNode.Hidden = false;
            baseNode.ShowParents();

            _view.ExpandParents(baseNode);

            // Expand parent
            var parentContainerNode = parentContainer as IContainerNode;

            if (parentContainerNode != null)
            {
                Focus(parentContainerNode);
            }

            _view.ClearSelection();
            _view.Select(baseNode);
            _view.CenterAt(baseNode);
        }