From aa5b3e7083b1ced540126d894cce43dfb9a176d1 Mon Sep 17 00:00:00 2001 From: Colin McMillen Date: Fri, 1 Sep 2023 01:06:04 -0400 Subject: [PATCH] multiple columns of thumbnails --- Program.cs | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/Program.cs b/Program.cs index b9d7a4e..dadb0ef 100644 --- a/Program.cs +++ b/Program.cs @@ -237,7 +237,6 @@ public class UiGeometry { public static Vector2i MIN_WINDOW_SIZE = new(1024, 768); public readonly Vector2i WindowSize; - public readonly Vector2i ThumbnailSize; public readonly Box2i ThumbnailBox; public readonly List ThumbnailBoxes = new(); public readonly List StarBoxes = new(); @@ -249,24 +248,26 @@ public class UiGeometry { public UiGeometry(Vector2i windowSize, int starSize) { WindowSize = windowSize; - int numThumbnails = Math.Max(WindowSize.Y / 100, 1); - int thumbnailHeight = WindowSize.Y / numThumbnails; + int numThumbnailsPerColumn = Math.Max(WindowSize.Y / 100, 1); + int thumbnailHeight = WindowSize.Y / numThumbnailsPerColumn; int thumbnailWidth = (int) (1.0 * thumbnailHeight * CameraInfo.AspectRatio); - ThumbnailSize = new(thumbnailWidth, thumbnailHeight); Console.WriteLine($"thumbnail size: {thumbnailWidth}x{thumbnailHeight}"); - for (int i = 0; i < numThumbnails; i++) { - Box2i box = Util.MakeBox(WindowSize.X - thumbnailWidth, i * thumbnailHeight, - thumbnailWidth, thumbnailHeight); - ThumbnailBoxes.Add(box); + int thumbnailColumns = 3; + for (int j = thumbnailColumns; j > 0; j--) { + for (int i = 0; i < numThumbnailsPerColumn; i++) { + Box2i box = Util.MakeBox(WindowSize.X - thumbnailWidth * j, i * thumbnailHeight, + thumbnailWidth, thumbnailHeight); + ThumbnailBoxes.Add(box); + } } int statusBoxHeight = 40; int statusBoxPadding = 4; PhotoBox = new Box2i( - 0, 0, WindowSize.X - thumbnailWidth, WindowSize.Y - statusBoxHeight - statusBoxPadding); + 0, 0, WindowSize.X - thumbnailWidth * thumbnailColumns, WindowSize.Y - statusBoxHeight - statusBoxPadding); StatusBox = new Box2i( - 0, WindowSize.Y - statusBoxHeight, WindowSize.X - thumbnailWidth, WindowSize.Y); + 0, WindowSize.Y - statusBoxHeight, WindowSize.X - thumbnailWidth * thumbnailColumns, WindowSize.Y); ThumbnailBox = new Box2i( ThumbnailBoxes[0].Min.X, ThumbnailBoxes[0].Min.Y, WindowSize.X, WindowSize.Y);