예제 #1
0
    static int RemoveClippable(IntPtr L)
    {
        LuaScriptMgr.CheckArgsCount(L, 2);
        RectMask2D obj  = (RectMask2D)LuaScriptMgr.GetUnityObjectSelf(L, 1, "RectMask2D");
        IClippable arg0 = (IClippable)LuaScriptMgr.GetNetObject(L, 2, typeof(IClippable));

        obj.RemoveClippable(arg0);
        return(0);
    }
예제 #2
0
    private void UpdateClipParent()
    {
        var newParent = MaskUtilities.GetRectMaskForClippable(this);

        if (m_ParentMask != null && (newParent != m_ParentMask || !newParent.IsActive()))
        {
            m_ParentMask.RemoveClippable(this);
        }
        if (newParent != null && newParent.IsActive())
        {
            newParent.AddClippable(this);
        }

        m_ParentMask = newParent;
    }
예제 #3
0
    private void UpdateClipParent()
    {
        var newParent = (IsActive()) ? MaskUtilities.GetRectMaskForClippable(this) : null;

        if (newParent != m_ParentMask && m_ParentMask != null)
        {
            m_ParentMask.RemoveClippable(this);
        }

        if (newParent != null)
        {
            newParent.AddClippable(this);
        }

        m_ParentMask = newParent;
    }
예제 #4
0
        //^^^^^^^^  Unity Callbacks  ^^^^^^^^


        //vvvvvvvv  IClipable Implements  vvvvvvvv
        /// <summary>
        /// Called when the state of a parent IClippable changes.
        /// </summary>
        public void RecalculateClipping()
        {
            m_Masks.Clear();

            RectMask2D rectMask2D = isActiveAndEnabled && rectTransform?MaskUtilities.GetRectMaskForClippable(this) : null;

            if (m_ParentMask != null && (rectMask2D != m_ParentMask || !rectMask2D.IsActive()))
            {
                m_ParentMask.RemoveClippable(this);
            }
            if (rectMask2D != null && rectMask2D.IsActive())
            {
                rectMask2D.AddClippable(this);
                MaskUtilities.GetRectMasksForClip(rectMask2D, m_Masks);
            }
            m_ParentMask = rectMask2D;
        }
예제 #5
0
    public static int RemoveClippable(IntPtr l)
    {
        int result;

        try
        {
            RectMask2D rectMask2D = (RectMask2D)LuaObject.checkSelf(l);
            IClippable clippable;
            LuaObject.checkType <IClippable>(l, 2, out clippable);
            rectMask2D.RemoveClippable(clippable);
            LuaObject.pushValue(l, true);
            result = 1;
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }
예제 #6
0
        public void RecalculateClipping()
        {
            var newParent = isActiveAndEnabled ? GetRectMaskForClippable(this) : null;

            // if the new parent is different OR is now inactive
            if (m_ParentMask != null && (newParent != m_ParentMask || !newParent.IsActive()))
            {
                m_ParentMask.RemoveClippable(this);
                UpdateCull(false);
            }

            // don't re-add it if the newparent is inactive
            if (newParent != null && newParent.IsActive())
            {
                newParent.AddClippable(this);
            }

            m_ParentMask = newParent;
        }