コード例 #1
0
ファイル: dfTabstrip.cs プロジェクト: Elringus/HajiJam
    private void arrangeTabs()
    {
        SuspendLayout();
        try
        {
            layoutPadding = layoutPadding.ConstrainPadding();

            var x = (float)layoutPadding.left - scrollPosition.x;
            var y = (float)layoutPadding.top - scrollPosition.y;

            var maxWidth  = 0f;
            var maxHeight = 0f;

            for (int i = 0; i < Controls.Count; i++)
            {
                var child = controls[i];
                if (!child.IsVisible || !child.enabled || !child.gameObject.activeSelf)
                {
                    continue;
                }

                var childPosition = new Vector2(x, y);
                child.RelativePosition = childPosition;

                var xofs = child.Width + layoutPadding.horizontal;
                var yofs = child.Height + layoutPadding.vertical;

                maxWidth  = Mathf.Max(xofs, maxWidth);
                maxHeight = Mathf.Max(yofs, maxHeight);

                x += xofs;
            }
        }
        finally
        {
            ResumeLayout();
        }
    }