summaryrefslogtreecommitdiff
path: root/kies/Layout.swift
diff options
context:
space:
mode:
authorMike Vink <59492084+ivi-vink@users.noreply.github.com>2025-01-20 20:45:21 +0100
committerMike Vink <59492084+ivi-vink@users.noreply.github.com>2025-01-20 20:45:21 +0100
commit57c3c64e71ae156855f8b6c84cd71d7d692a8b0a (patch)
treee3b25d811a89570b6a3ef880aa0e8992069c5773 /kies/Layout.swift
Squashed 'mut/keuze/' content from commit 720bb27
git-subtree-dir: mut/keuze git-subtree-split: 720bb270aeb006ec2f3ca1104e78785de31f2630
Diffstat (limited to 'kies/Layout.swift')
-rw-r--r--kies/Layout.swift44
1 files changed, 44 insertions, 0 deletions
diff --git a/kies/Layout.swift b/kies/Layout.swift
new file mode 100644
index 0000000..cf04eb0
--- /dev/null
+++ b/kies/Layout.swift
@@ -0,0 +1,44 @@
+//
+// Layout.swift
+// keuze
+//
+// Created by Thomas Billiet on 14/04/2019.
+// Copyright © 2019 Thomas Billiet. All rights reserved.
+//
+
+import Foundation
+
+class Layout {
+ let DIVIDER_HEIGHT: CGFloat = 9
+
+ var lineHeight: CGFloat {
+ return ceil(NSString(string: "TEST").size(withAttributes: [.font: settings.font]).height) + 0;
+ }
+
+ var windowRect: NSRect {
+ return NSMakeRect(0, 0, settings.windowWidth, settings.windowHeight)
+ }
+
+ var containerRect: NSRect {
+ return NSMakeRect(settings.windowPadding, settings.windowPadding, windowRect.width - settings.windowPadding * 2, windowRect.height - settings.windowPadding * 2)
+ }
+
+ var listRect: NSRect {
+ return NSMakeRect(containerRect.minX, containerRect.minY, containerRect.width, containerRect.height - lineHeight - DIVIDER_HEIGHT)
+ }
+
+ var dividerRect: NSRect {
+ return NSMakeRect(containerRect.minX, listRect.maxY + DIVIDER_HEIGHT / 2, containerRect.width, 1)
+ }
+
+ var promptRect: NSRect {
+ let stringWidth = ceil(NSString(string: settings.promptText!).size(withAttributes: [.font: settings.font]).width) + 4;
+ return NSMakeRect(containerRect.minX, containerRect.maxY - lineHeight, stringWidth, lineHeight)
+ }
+
+ var inputRect: NSRect {
+ return NSMakeRect(promptRect.maxX, containerRect.maxY - lineHeight, containerRect.width - promptRect.width, lineHeight)
+ }
+}
+
+let layouts = Layout()