Dynamically sets time until alarm during addition.

This commit is contained in:
Aaron
2021-01-24 16:27:15 -05:00
parent 599fc8a125
commit b758087a96
2 changed files with 23 additions and 0 deletions
+19
View File
@@ -26,6 +26,7 @@ class AddAlarmViewController: UIViewController
@IBOutlet weak var repeatWeekdaysSwitch: UISwitch! @IBOutlet weak var repeatWeekdaysSwitch: UISwitch!
@IBOutlet weak var repeatWeekendsSwitch: UISwitch! @IBOutlet weak var repeatWeekendsSwitch: UISwitch!
@IBOutlet weak var alarmNameTextField: UITextField! @IBOutlet weak var alarmNameTextField: UITextField!
@IBOutlet weak var timeTillAlarmLabel: UILabel!
@IBAction func defaultRingtonesButton(_ sender: Any) @IBAction func defaultRingtonesButton(_ sender: Any)
{ {
@@ -37,6 +38,24 @@ class AddAlarmViewController: UIViewController
} }
/**
Called when the time for the alarm is changed.
Sets the time away at the top of the View.
*/
@IBAction func alarmTimeUpdated(_ sender: Any) {
//Create alarm without adding it to the queue.
let (h, m, _) = timePicker.date.getHMS()
// Create the alarm
let a = Alarm(hour: h, minute: m,
text: alarmNameTextField.text ?? "Alarm",
wakeMethod: wvms[wvmPicker.selectedRow(inComponent: 0)],
lastActivate: Date())
var timeTill = a.nextActivate!.timeIntervalSince(Date()).str()
print(timeTill)
timeTillAlarmLabel.text = "Going off in \(timeTill)"
}
/** /**
Called when the user clicks the remove button and brings them back to the home page Called when the user clicks the remove button and brings them back to the home page
*/ */
+4
View File
@@ -438,6 +438,9 @@
<constraints> <constraints>
<constraint firstAttribute="height" constant="220" id="VCm-rY-H4H"/> <constraint firstAttribute="height" constant="220" id="VCm-rY-H4H"/>
</constraints> </constraints>
<connections>
<action selector="alarmTimeUpdated:" destination="Mki-dC-5Kc" eventType="valueChanged" id="4e5-2Z-7gj"/>
</connections>
</datePicker> </datePicker>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Alarm Ringtone" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="O5c-Ga-0xh"> <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Alarm Ringtone" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="O5c-Ga-0xh">
<rect key="frame" x="0.0" y="228" width="374" height="20.5"/> <rect key="frame" x="0.0" y="228" width="374" height="20.5"/>
@@ -596,6 +599,7 @@
<outlet property="scrollView" destination="ybc-8d-6pJ" id="m1B-ff-zeC"/> <outlet property="scrollView" destination="ybc-8d-6pJ" id="m1B-ff-zeC"/>
<outlet property="scrollViewInner" destination="N7f-vi-SFU" id="LQW-6T-f6x"/> <outlet property="scrollViewInner" destination="N7f-vi-SFU" id="LQW-6T-f6x"/>
<outlet property="timePicker" destination="qSt-1V-2DQ" id="aDM-jE-0OP"/> <outlet property="timePicker" destination="qSt-1V-2DQ" id="aDM-jE-0OP"/>
<outlet property="timeTillAlarmLabel" destination="Xqs-n0-H9G" id="fg6-18-oAG"/>
<outlet property="wvmPicker" destination="oae-b2-SoF" id="ADd-1r-iNM"/> <outlet property="wvmPicker" destination="oae-b2-SoF" id="ADd-1r-iNM"/>
</connections> </connections>
</viewController> </viewController>