From 812f828aeb3cf99759e3ecfa29936b6018f5b9d0 Mon Sep 17 00:00:00 2001
From: ed8g20 <ed8g20@soton.ac.uk>
Date: Sat, 13 May 2023 16:40:24 +0000
Subject: [PATCH] Upload New File

---
 synchronised_time.py | 48 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 48 insertions(+)
 create mode 100644 synchronised_time.py

diff --git a/synchronised_time.py b/synchronised_time.py
new file mode 100644
index 0000000..bb326ee
--- /dev/null
+++ b/synchronised_time.py
@@ -0,0 +1,48 @@
+import time
+
+
+def create_synchronised_time(display, button_a, button_b, button_x, button_y):
+    WHITE = display.create_pen(255, 255, 255)
+    BLACK = display.create_pen(0, 0, 0)
+    
+    datetime = [2021, 1, 1, 1, 1, 0]
+    selected_idx = 0
+
+    display_width, display_height = display.get_bounds()
+
+    while True:
+        if  button_a.read():
+            selected_idx = (selected_idx + 1) % len(datetime)
+        if  button_x.read():
+            datetime[selected_idx] += 1
+        if  button_y.read():
+            datetime[selected_idx] = max(datetime[selected_idx] - 1, 1)
+        if  button_b.read():
+            break
+
+        display.set_pen(BLACK)
+        display.clear()
+
+        display.set_pen(WHITE)
+
+        display.text("Next", 10, 10, 30, 2)
+        display.text("Inc", display_width - 40, 10, 30, 2)
+        display.text("Dec", display_width - 40, display_height - 20, 30, 2)
+        display.text("Confirm", 10, display_height - 20, 30, 2)
+
+        display.text("YYYY MM DD HH MM SS", 30,
+                     display_height // 2 - 10, display_width - 30, 2)
+        display.text(
+            " ".join("%s%02d" % (">" if idx == selected_idx else "", sep)
+                     for idx, sep in enumerate(datetime)),
+            30, display_height // 2 + 10, display_width - 30, 2)
+
+        display.update()
+        time.sleep(0.3)
+
+    delta = time.mktime(datetime + [0, 0]) - int(time.time())
+
+    def synchronised_time():
+        return int(time.time()) + delta
+
+    return synchronised_time
-- 
GitLab