[+] Allow AlarmActivator to segue to the alarm activating view
This commit is contained in:
@@ -6,20 +6,26 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
import Foundation
|
import Foundation
|
||||||
|
import UIKit
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Class to activate alarms when the user is inside the app
|
Class to activate alarms when the user is inside the app
|
||||||
|
|
||||||
Note: This will not run when app is switched to the background or when the display is turned off, but it will run right after the user switched back to the app.
|
Note: This will not run when app is switched to the background or when the display is turned off, but it will run right after the user switched back to the app.
|
||||||
*/
|
*/
|
||||||
class AlarmActivator
|
class AlarmActivator: UITabBarController
|
||||||
{
|
{
|
||||||
/// Interval in seconds
|
/// Interval in seconds
|
||||||
static var interval = 1.0
|
static var interval = 2.0
|
||||||
|
|
||||||
/// Timer for scheduled calls
|
/// Timer for scheduled calls
|
||||||
var timer: Timer?
|
var timer: Timer?
|
||||||
|
|
||||||
|
override func viewDidLoad()
|
||||||
|
{
|
||||||
|
start()
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Start detecting alarms
|
Start detecting alarms
|
||||||
*/
|
*/
|
||||||
@@ -43,9 +49,11 @@ class AlarmActivator
|
|||||||
*/
|
*/
|
||||||
@objc func check()
|
@objc func check()
|
||||||
{
|
{
|
||||||
|
NSLog("Check")
|
||||||
|
|
||||||
// Get the alarm to activate
|
// Get the alarm to activate
|
||||||
guard let alarm = Alarms.fromLocal().listActivating.first else { return }
|
guard let alarm = Alarms.fromLocal().listActivating.first else { return }
|
||||||
NSLog(JSON.stringify(alarm)!)
|
NSLog(JSON.stringify(alarm)!)
|
||||||
|
performSegue(withIdentifier: "activate-alarmactivate-alarm", sender: nil)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,8 +10,6 @@ import UIKit
|
|||||||
@main
|
@main
|
||||||
class AppDelegate: UIResponder, UIApplicationDelegate
|
class AppDelegate: UIResponder, UIApplicationDelegate
|
||||||
{
|
{
|
||||||
var alarmActivator: AlarmActivator!
|
|
||||||
|
|
||||||
/// Override point for customization after application launch.
|
/// Override point for customization after application launch.
|
||||||
func application(_ app: UIApplication, didFinishLaunchingWithOptions op: [UIApplication.LaunchOptionsKey: Any]?) -> Bool
|
func application(_ app: UIApplication, didFinishLaunchingWithOptions op: [UIApplication.LaunchOptionsKey: Any]?) -> Bool
|
||||||
{
|
{
|
||||||
@@ -20,10 +18,6 @@ class AppDelegate: UIResponder, UIApplicationDelegate
|
|||||||
"alarms": JSON.stringify([Alarm(enabled: true, hour: 7, minute: 20, text: "Wake up lol", wakeMethod: wvms[0])])!
|
"alarms": JSON.stringify([Alarm(enabled: true, hour: 7, minute: 20, text: "Wake up lol", wakeMethod: wvms[0])])!
|
||||||
])
|
])
|
||||||
|
|
||||||
// Start alarm activator
|
|
||||||
alarmActivator = AlarmActivator()
|
|
||||||
alarmActivator.start()
|
|
||||||
|
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -25,7 +25,7 @@
|
|||||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||||
<state key="normal" title="Add Alarm"/>
|
<state key="normal" title="Add Alarm"/>
|
||||||
<connections>
|
<connections>
|
||||||
<segue destination="Mki-dC-5Kc" kind="presentation" id="Qim-4Q-43N"/>
|
<segue destination="Mki-dC-5Kc" kind="presentation" identifier="alarm-edit" id="Qim-4Q-43N"/>
|
||||||
</connections>
|
</connections>
|
||||||
</button>
|
</button>
|
||||||
<prototypes>
|
<prototypes>
|
||||||
@@ -422,6 +422,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="datePickerChange:" destination="Mki-dC-5Kc" eventType="valueChanged" id="rTz-ne-1Rk"/>
|
||||||
|
</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"/>
|
||||||
@@ -562,10 +565,25 @@
|
|||||||
</objects>
|
</objects>
|
||||||
<point key="canvasLocation" x="-494" y="1576"/>
|
<point key="canvasLocation" x="-494" y="1576"/>
|
||||||
</scene>
|
</scene>
|
||||||
<!--Tab Bar Controller-->
|
<!--View Controller-->
|
||||||
|
<scene sceneID="21H-AI-pzd">
|
||||||
|
<objects>
|
||||||
|
<viewController id="hDW-11-g9U" sceneMemberID="viewController">
|
||||||
|
<view key="view" contentMode="scaleToFill" id="BZn-UX-vps">
|
||||||
|
<rect key="frame" x="0.0" y="0.0" width="414" height="842"/>
|
||||||
|
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||||
|
<viewLayoutGuide key="safeArea" id="hS6-fS-yWp"/>
|
||||||
|
<color key="backgroundColor" systemColor="systemBackgroundColor"/>
|
||||||
|
</view>
|
||||||
|
</viewController>
|
||||||
|
<placeholder placeholderIdentifier="IBFirstResponder" id="78q-sr-CNz" userLabel="First Responder" customClass="UIResponder" sceneMemberID="firstResponder"/>
|
||||||
|
</objects>
|
||||||
|
<point key="canvasLocation" x="1701" y="1102"/>
|
||||||
|
</scene>
|
||||||
|
<!--Alarm Activator-->
|
||||||
<scene sceneID="c7a-VN-D68">
|
<scene sceneID="c7a-VN-D68">
|
||||||
<objects>
|
<objects>
|
||||||
<tabBarController automaticallyAdjustsScrollViewInsets="NO" id="s8U-C8-W2S" sceneMemberID="viewController">
|
<tabBarController automaticallyAdjustsScrollViewInsets="NO" id="s8U-C8-W2S" customClass="AlarmActivator" customModule="ProjectClock" customModuleProvider="target" sceneMemberID="viewController">
|
||||||
<toolbarItems/>
|
<toolbarItems/>
|
||||||
<tabBar key="tabBar" contentMode="scaleToFill" insetsLayoutMarginsFromSafeArea="NO" id="203-Gr-Mvz">
|
<tabBar key="tabBar" contentMode="scaleToFill" insetsLayoutMarginsFromSafeArea="NO" id="203-Gr-Mvz">
|
||||||
<rect key="frame" x="0.0" y="0.0" width="1000" height="1000"/>
|
<rect key="frame" x="0.0" y="0.0" width="1000" height="1000"/>
|
||||||
@@ -576,6 +594,7 @@
|
|||||||
<segue destination="Bqt-du-DT2" kind="relationship" relationship="viewControllers" id="ZTh-ke-ZIV"/>
|
<segue destination="Bqt-du-DT2" kind="relationship" relationship="viewControllers" id="ZTh-ke-ZIV"/>
|
||||||
<segue destination="BYZ-38-t0r" kind="relationship" relationship="viewControllers" destinationCreationSelector="Account" id="NN6-JO-Hmi"/>
|
<segue destination="BYZ-38-t0r" kind="relationship" relationship="viewControllers" destinationCreationSelector="Account" id="NN6-JO-Hmi"/>
|
||||||
<segue destination="r8W-6e-Hn2" kind="relationship" relationship="viewControllers" destinationCreationSelector="Testing" id="SLn-vq-UnH"/>
|
<segue destination="r8W-6e-Hn2" kind="relationship" relationship="viewControllers" destinationCreationSelector="Testing" id="SLn-vq-UnH"/>
|
||||||
|
<segue destination="hDW-11-g9U" kind="showDetail" identifier="activate-alarm" id="z9o-Jh-fnM"/>
|
||||||
</connections>
|
</connections>
|
||||||
</tabBarController>
|
</tabBarController>
|
||||||
<placeholder placeholderIdentifier="IBFirstResponder" id="S6R-Xr-Nfe" userLabel="First Responder" customClass="UIResponder" sceneMemberID="firstResponder"/>
|
<placeholder placeholderIdentifier="IBFirstResponder" id="S6R-Xr-Nfe" userLabel="First Responder" customClass="UIResponder" sceneMemberID="firstResponder"/>
|
||||||
|
|||||||
Reference in New Issue
Block a user