Ejemplo n.º 1
0
        // Token: 0x06004DCE RID: 19918 RVA: 0x0015EE20 File Offset: 0x0015D020
        private bool SetupDefinitionsToResize()
        {
            int num = (int)base.GetValue((this._resizeData.ResizeDirection == GridResizeDirection.Columns) ? Grid.ColumnSpanProperty : Grid.RowSpanProperty);

            if (num == 1)
            {
                int num2 = (int)base.GetValue((this._resizeData.ResizeDirection == GridResizeDirection.Columns) ? Grid.ColumnProperty : Grid.RowProperty);
                GridResizeBehavior resizeBehavior = this._resizeData.ResizeBehavior;
                int num3;
                int num4;
                if (resizeBehavior != GridResizeBehavior.CurrentAndNext)
                {
                    if (resizeBehavior == GridResizeBehavior.PreviousAndCurrent)
                    {
                        num3 = num2 - 1;
                        num4 = num2;
                    }
                    else
                    {
                        num3 = num2 - 1;
                        num4 = num2 + 1;
                    }
                }
                else
                {
                    num3 = num2;
                    num4 = num2 + 1;
                }
                int num5 = (this._resizeData.ResizeDirection == GridResizeDirection.Columns) ? this._resizeData.Grid.ColumnDefinitions.Count : this._resizeData.Grid.RowDefinitions.Count;
                if (num3 >= 0 && num4 < num5)
                {
                    this._resizeData.SplitterIndex                   = num2;
                    this._resizeData.Definition1Index                = num3;
                    this._resizeData.Definition1                     = GridSplitter.GetGridDefinition(this._resizeData.Grid, num3, this._resizeData.ResizeDirection);
                    this._resizeData.OriginalDefinition1Length       = this._resizeData.Definition1.UserSizeValueCache;
                    this._resizeData.OriginalDefinition1ActualLength = this.GetActualLength(this._resizeData.Definition1);
                    this._resizeData.Definition2Index                = num4;
                    this._resizeData.Definition2                     = GridSplitter.GetGridDefinition(this._resizeData.Grid, num4, this._resizeData.ResizeDirection);
                    this._resizeData.OriginalDefinition2Length       = this._resizeData.Definition2.UserSizeValueCache;
                    this._resizeData.OriginalDefinition2ActualLength = this.GetActualLength(this._resizeData.Definition2);
                    bool flag  = GridSplitter.IsStar(this._resizeData.Definition1);
                    bool flag2 = GridSplitter.IsStar(this._resizeData.Definition2);
                    if (flag && flag2)
                    {
                        this._resizeData.SplitBehavior = GridSplitter.SplitBehavior.Split;
                    }
                    else
                    {
                        this._resizeData.SplitBehavior = ((!flag) ? GridSplitter.SplitBehavior.Resize1 : GridSplitter.SplitBehavior.Resize2);
                    }
                    return(true);
                }
            }
            return(false);
        }