From b566021273637dc498dc89820c90e89ab38c740e Mon Sep 17 00:00:00 2001 From: Andrew Case Date: Mon, 22 Apr 2019 13:38:39 -0400 Subject: [PATCH 1/6] started work on timer, mostly ui bs --- Project308/Base.lproj/Main.storyboard | 14 ++++++++++++++ Project308/TimerViewController.swift | 19 ++++++++++++++++++- 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/Project308/Base.lproj/Main.storyboard b/Project308/Base.lproj/Main.storyboard index f0c5385..5f364f7 100644 --- a/Project308/Base.lproj/Main.storyboard +++ b/Project308/Base.lproj/Main.storyboard @@ -25,6 +25,20 @@ + + + + + + diff --git a/Project308/TimerViewController.swift b/Project308/TimerViewController.swift index 5cf4662..1188a93 100644 --- a/Project308/TimerViewController.swift +++ b/Project308/TimerViewController.swift @@ -8,7 +8,20 @@ import UIKit -class TimerViewController: UIViewController { +class TimerViewController: UIViewController, UIPickerViewDataSource, UIPickerViewDelegate { + + var times = [ + [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24],[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60],[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60] + ] + + func numberOfComponents(in pickerView: UIPickerView) -> Int { + return 3 + } + + func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int { + return times[component].count + } + override func viewDidLoad() { super.viewDidLoad() @@ -16,7 +29,11 @@ class TimerViewController: UIViewController { // Do any additional setup after loading the view. } + func pickerView(_ pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusing view: UIView?) -> UIView { + + } + /* // MARK: - Navigation From 7928e2d70db149ec9d1496bec43c70cafb75fe54 Mon Sep 17 00:00:00 2001 From: Andrew Case Date: Mon, 22 Apr 2019 13:46:12 -0400 Subject: [PATCH 2/6] added outlets and actions --- Project308/Base.lproj/Main.storyboard | 11 +++++++++++ Project308/TimerViewController.swift | 20 ++++++++++++++++---- 2 files changed, 27 insertions(+), 4 deletions(-) diff --git a/Project308/Base.lproj/Main.storyboard b/Project308/Base.lproj/Main.storyboard index 5f364f7..d24351b 100644 --- a/Project308/Base.lproj/Main.storyboard +++ b/Project308/Base.lproj/Main.storyboard @@ -33,17 +33,28 @@ + + + + + + + + diff --git a/Project308/TimerViewController.swift b/Project308/TimerViewController.swift index 1188a93..36fa023 100644 --- a/Project308/TimerViewController.swift +++ b/Project308/TimerViewController.swift @@ -10,8 +10,22 @@ import UIKit class TimerViewController: UIViewController, UIPickerViewDataSource, UIPickerViewDelegate { + @IBAction func clearPressed(_ sender: UIButton) { + + } + + @IBAction func startStopPressed(_ sender: UIButton) { + + } + + @IBOutlet weak var startStopButton: UIButton! + + @IBOutlet weak var timeLabel: UILabel! + + @IBOutlet weak var timePicker: UIPickerView! + var times = [ - [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24],[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60],[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60] + [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24],[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60],[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60] ] func numberOfComponents(in pickerView: UIPickerView) -> Int { @@ -29,9 +43,7 @@ class TimerViewController: UIViewController, UIPickerViewDataSource, UIPickerVie // Do any additional setup after loading the view. } - func pickerView(_ pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusing view: UIView?) -> UIView { - - } + /* From 0312806ea9d4a2004cacea143e677f6c53b5b38d Mon Sep 17 00:00:00 2001 From: Andrew Case Date: Thu, 25 Apr 2019 09:40:45 -0400 Subject: [PATCH 3/6] started on timer function --- Project308/TimerViewController.swift | 32 ++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/Project308/TimerViewController.swift b/Project308/TimerViewController.swift index 36fa023..4a08813 100644 --- a/Project308/TimerViewController.swift +++ b/Project308/TimerViewController.swift @@ -36,6 +36,38 @@ class TimerViewController: UIViewController, UIPickerViewDataSource, UIPickerVie return times[component].count } + + + var isRunning = false + var elapsedTime = 0.0 + + func timeLoop() { + DispatchQueue.global(qos: .background).async { + var currentTime = Date() + var previousTime = currentTime + + while(self.isRunning) { + currentTime = Date() + self.elapsedTime += currentTime.timeIntervalSince(previousTime) + previousTime = currentTime + + let hours = floor(self.elapsedTime/3600) + let minutes = Int((self.elapsedTime/60)) % 60 + let seconds = Int(floor(self.elapsedTime))%60 + + let hourStr = String.init(format: "%d", hours) + let minuteStr = String.init(format: "%02d", minutes) + let secondsStr = String.init(format: "%02d", seconds) + + let timeString = "\(hourStr):\(minuteStr):\(secondsStr))" + + DispatchQueue.main.async { + self.timeLabel.text! = timeString + } + usleep(1000) + } + } + } override func viewDidLoad() { super.viewDidLoad() From 2e74e12cb0e32ad30c3ab4186739d414ad3fa6d1 Mon Sep 17 00:00:00 2001 From: Andrew Case Date: Thu, 25 Apr 2019 10:35:27 -0400 Subject: [PATCH 4/6] AAAAAAAAAAAAAAAAAAA PICKERS SUCK --- Project308/Base.lproj/Main.storyboard | 6 +- Project308/TimerViewController.swift | 82 ++++++++++++++++++++++++--- 2 files changed, 78 insertions(+), 10 deletions(-) diff --git a/Project308/Base.lproj/Main.storyboard b/Project308/Base.lproj/Main.storyboard index d24351b..573cada 100644 --- a/Project308/Base.lproj/Main.storyboard +++ b/Project308/Base.lproj/Main.storyboard @@ -1,5 +1,5 @@ - + @@ -28,6 +28,10 @@ + + + +