/**
     * <summary>
     * On pointer exits
     * </summary>
     */
    public void OnPointerExit(PointerEventData data)
    {
        if (!BuilderActionComponentUI.ActiveSlot)
        {
            return;
        }

        GameObject preview = BuilderActionComponentUI
                             .ActiveSlot
                             .GetComponent <BuildingSlotUI>()
                             .GetPreview();

        BuildingPreviewBehaviour previewBehaviour = preview.GetComponent <BuildingPreviewBehaviour>();

        previewBehaviour.SetConstructable(true);

        BuilderActionComponentUI.PreviewFollow = true;
    }
    /**
     * <summary>
     * Make sure mouse action is not functional when it is hovering the UI.
     * ie: unit selection, zooming and etc...
     * </summary>
     */
    public void OnPointerEnter(PointerEventData data)
    {
        if (!BuilderActionComponentUI.ActiveSlot)
        {
            return;
        }

        GameObject preview = BuilderActionComponentUI
                             .ActiveSlot
                             .GetComponent <BuildingSlotUI>()
                             .GetPreview();

        preview.transform.localPosition = Vector3.zero;

        BuildingPreviewBehaviour previewBehaviour = preview.GetComponent <BuildingPreviewBehaviour>();

        previewBehaviour.SetConstructable(false);

        BuilderActionComponentUI.PreviewFollow = false;
    }