RiValT_Base_ViewController

@MainActor
class RiValT_Base_ViewController : UIViewController
extension RiValT_Base_ViewController: UIPopoverPresentationControllerDelegate

This provides basic utilities and UI for all screens in the app.

  • The lightest light, when light.

    Declaration

    Swift

    @MainActor
    private static let _lightModeMax: CGFloat
  • The darkest dark, when light.

    Declaration

    Swift

    @MainActor
    private static let _lightModeMin: CGFloat
  • The lightest light, when dark.

    Declaration

    Swift

    @MainActor
    private static let _darkModeMax: CGFloat
  • The darkest dark, when dark.

    Declaration

    Swift

    @MainActor
    private static let _darkModeMin: CGFloat
  • This will provide haptic/audio feedback for subtle events.

    Declaration

    Swift

    @MainActor
    private let _selectionFeedbackGenerator: UISelectionFeedbackGenerator
  • This will provide haptic/audio feedback for more significant events.

    Declaration

    Swift

    @MainActor
    private let _impactFeedbackGenerator: UIImpactFeedbackGenerator
  • The layer with the background gradient.

    Declaration

    Swift

    @MainActor
    weak var gradientLayer: CALayer?

Computed Properties

  • This references the main app delegate.

    It’s an implicit optional, because the whole shebang goes into the crapper, if it doesn’t work.

    Declaration

    Swift

    @MainActor
    weak var appDelegateInstance: RiValT_AppDelegate! { get }
  • This references the iOS app instance of the Watch Delegate class.

    It’s an implicit optional, because the whole shebang goes into the crapper, if it doesn’t work.

    Declaration

    Swift

    @MainActor
    weak var watchDelegate: RiValT_WatchDelegate! { get }
  • This is the application-global timer model.

    It’s an implicit optional, because the whole shebang goes into the crapper, if it doesn’t work.

    Declaration

    Swift

    @MainActor
    weak var timerModel: TimerModel! { get }

Base Class Overrides

  • Called when the view hierarchy has been set up.

    Declaration

    Swift

    @MainActor
    override func viewDidLoad()
  • Called when the view has laid out its subviews.

    We use this to set the background.

    Declaration

    Swift

    @MainActor
    override func viewDidLayoutSubviews()

Instance Methods

  • Triggers a selection haptic.

    Declaration

    Swift

    @MainActor
    func selectionHaptic()
  • Triggers an impact haptic.

    Declaration

    Swift

    @MainActor
    func impactHaptic(_ inIntensity: CGFloat = 0.5)

    Parameters

    inIntensity

    0.0 -> 1.0, with 0 being the least, and 1 being the most. Optional (default is 0.5)

  • This updates the stored timer model.

    Declaration

    Swift

    @MainActor
    func updateSettings()

UIPopoverPresentationControllerDelegate Conformance

  • Called to ask if there’s any possibility of this being displayed in another way.

    Declaration

    Swift

    @MainActor
    func adaptivePresentationStyle(for: UIPresentationController) -> UIModalPresentationStyle

    Parameters

    for

    The presentation controller we’re talking about.

    Return Value

    No way, Jose.

  • Called to ask if there’s any possibility of this being displayed in another way (when the screen is rotated).

    Declaration

    Swift

    @MainActor
    func adaptivePresentationStyle(for: UIPresentationController, traitCollection: UITraitCollection) -> UIModalPresentationStyle

    Parameters

    for

    The presentation controller we’re talking about.

    traitCollection

    The traits, describing the new orientation.

    Return Value

    No way, Jose.

  • Called to allow us to do something before dismissing a popover.

    Declaration

    Swift

    @MainActor
    func popoverPresentationControllerShouldDismissPopover(_: UIPopoverPresentationController) -> Bool

    Return Value

    True (all the time).

  • Called to allow us to do something before displaying a popover.

    Declaration

    Swift

    @MainActor
    func prepareForPopoverPresentation(_: UIPopoverPresentationController)