コード例 #1
0
        private static List <Rect> ConvertProcessedThumbsToRects(List <ThumbAttachment> thumbs, double marginBetween, double width)
        {
            List <Rect> rectList   = new List <Rect>(thumbs.Count);
            double      y          = 0.0;
            double      widthOfRow = RectangleLayoutHelper.CalculateWidthOfRow(thumbs, marginBetween);
            double      num        = width / 2.0 - widthOfRow / 2.0;
            double      x          = num;

            for (int index = 0; index < thumbs.Count; ++index)
            {
                ThumbAttachment thumbAttachment = thumbs[index];
                rectList.Add(new Rect(x, y, thumbAttachment.CalcWidth, thumbAttachment.CalcHeight));
                if (!thumbAttachment.LastColumn && !thumbAttachment.LastRow)
                {
                    x += thumbAttachment.CalcWidth + marginBetween;
                }
                else if (thumbAttachment.LastRow)
                {
                    y += thumbAttachment.CalcHeight + marginBetween;
                }
                else if (thumbAttachment.LastColumn)
                {
                    x  = num;
                    y += thumbAttachment.CalcHeight + marginBetween;
                }
            }
            return(rectList);
        }
コード例 #2
0
        public static List <Rect> CreateLayout(Size parentRect, List <Size> childrenRects, double marginBetween)
        {
            List <ThumbAttachment> thumbAttachments = RectangleLayoutHelper.ConvertSizesToThumbAttachments(childrenRects);

            ThumbnailLayoutManager.ProcessThumbnails(parentRect.Width, parentRect.Height, thumbAttachments, marginBetween);
            return(RectangleLayoutHelper.ConvertProcessedThumbsToRects(thumbAttachments, marginBetween, parentRect.Width));
        }
コード例 #3
0
        public static List <Rect> CreateLayout(Size parentRect, List <Size> childrenRects, double marginBetween)
        {
            List <ThumbAttachment> thumbAttachments = RectangleLayoutHelper.ConvertSizesToThumbAttachments(childrenRects);

            // ISSUE: explicit reference operation
            // ISSUE: explicit reference operation
            ThumbnailLayoutManager.ProcessThumbnails(((Size)@parentRect).Width, ((Size)@parentRect).Height, thumbAttachments, marginBetween);
            // ISSUE: explicit reference operation
            return(RectangleLayoutHelper.ConvertProcessedThumbsToRects(thumbAttachments, marginBetween, ((Size)@parentRect).Width));
        }