VMF_MeetingInspectorViewController
@MainActor
class VMF_MeetingInspectorViewController : VMF_BaseViewController
extension VMF_MeetingInspectorViewController: MKMapViewDelegate
This displays one meeting.
-
This is the font to use for the format item key.
Declaration
Swift
@MainActor private static let _formatKeyFont: UIFont?
-
This is the font to use for the format item name.
Declaration
Swift
@MainActor private static let _formatNameFont: UIFont?
-
This is the font to use for the format item description.
Declaration
Swift
@MainActor private static let _formatDescriptionFont: UIFont?
-
The duration of the open/close animation.
Declaration
Swift
@MainActor private static let _openingAnimationPeriodInSeconds: TimeInterval
-
The width and height of the map
Declaration
Swift
@MainActor private static let _mapRegionSizeInDegrees: CLLocationDegrees
-
This is how many display units wide, we make the format key column.
Declaration
Swift
@MainActor private static let _formatKeyWidth: CGFloat
-
This is how many display units, vertically, will separate the top of a format item, with its predecessor.
Declaration
Swift
@MainActor private static let _formatSeparatorSpace: CGFloat
-
This is how much “breathing room” we give stuff in a format item (display units).
Declaration
Swift
@MainActor private static let _formatInternalSeparatorSpace: CGFloat
-
This is the height of the “Address” section of the in-person meeting display, when open.
Declaration
Swift
@MainActor private static let _addressSectionOpenHeight: CGFloat
-
The image to use, for the bar button item, of a meeting that is selected for attendance.
Declaration
Swift
@MainActor private static let _checkedImage: UIImage?
-
The image to use, for the bar button item, of a meeting that is not selected for attendance.
Declaration
Swift
@MainActor private static let _uncheckedImage: UIImage?
-
The font to use for the “I Attend” bar button item.
Declaration
Swift
@MainActor private static let _barButtonLabelFont: UIFont
-
Set to true, after our first layout. We use this to prevent unnecessary animation delays.
Declaration
Swift
@MainActor private var _openSezMe: Bool
-
This references our map height constraint. We use it for expanding and collapsing the map.
Declaration
Swift
@IBOutlet @MainActor weak var mapHeightConstraint: NSLayoutConstraint?
-
This references our in-person address height constraint. We use it for expanding and collapsing the map.
Declaration
Swift
@IBOutlet @MainActor weak var addressHeightConstraint: NSLayoutConstraint?
-
Set to true, to open the formats section.
Declaration
Swift
@MainActor var isFormatsOpen: Bool { get set }
-
Set to true, to open the formats section.
Declaration
Swift
@MainActor var isLocationOpen: Bool { get set }
-
The meeting that this screen is displaying.
Declaration
Swift
@MainActor var meeting: MeetingInstance?
-
The controller that “owns” this instance.
Declaration
Swift
@MainActor var myController: (any VMF_EmbeddedTableControllerProtocol)?
-
This will allow us to add events to the Calendar, without leaving this app.
Declaration
Swift
@MainActor let eventStore: EKEventStore
-
The label that displays the meeting name.
Declaration
Swift
@IBOutlet @MainActor weak var meetingNameLabel: UILabel?
-
The label that displays the meeting start time and weekday.
Declaration
Swift
@IBOutlet @MainActor weak var timeAndDayLabel: UILabel?
-
This label is displayed if the meeting is in progress.
Declaration
Swift
@IBOutlet @MainActor weak var inProgressLabel: UILabel?
-
The label that displays the meeting timezone.
Declaration
Swift
@IBOutlet @MainActor weak var timeZoneLabel: UILabel?
-
This contains any additional comments.
Declaration
Swift
@IBOutlet @MainActor weak var commentsTextView: UITextView?
-
This contains the tappable links.
Declaration
Swift
@IBOutlet @MainActor weak var linkContainer: UIView?
-
The vertical container for the phone button.
Declaration
Swift
@IBOutlet @MainActor weak var phoneButtonContainer: UIView?
-
This is the phone in button’s label.
Declaration
Swift
@IBOutlet @MainActor weak var phoneLabelButton: UILabel?
-
The vertical container for the globe button.
Declaration
Swift
@IBOutlet @MainActor weak var globeButtonContainer: UIView?
-
This is the Web link button’s label.
Declaration
Swift
@IBOutlet @MainActor weak var globeLabelButton: UILabel?
-
The vertical container for the video button.
Declaration
Swift
@IBOutlet @MainActor weak var videoButtonContainer: UIView?
-
This is the video link button’s label.
Declaration
Swift
@IBOutlet @MainActor weak var videoLabelButton: UILabel?
-
Contains any phone info that can’t be turned into a URL.
Declaration
Swift
@IBOutlet @MainActor weak var phoneInfoTextView: UITextView?
-
This has any extra info for virtual meetings.
Declaration
Swift
@IBOutlet @MainActor weak var virtualExtraInfoTextView: UITextView?
-
This contains the header for the in-person location information.
Declaration
Swift
@IBOutlet @MainActor weak var inPersonHeader: UIView?
-
This is the disclosure triangle for the in-person section.
Declaration
Swift
@IBOutlet @MainActor weak var inPersonDisclosureTriangle: UIImageView?
-
Contains the in-person meeting stuff.
Declaration
Swift
@IBOutlet @MainActor weak var inPersonContainer: UIStackView?
-
The heading for the in-person meeting stuff.
Declaration
Swift
@IBOutlet @MainActor weak var inPersonHeaderLabel: UILabel?
-
The text view that displays an address for in-person meetings.
Declaration
Swift
@IBOutlet @MainActor weak var inPersonAddressTextView: UITextView?
-
This has any extra info for in-person meetings.
Declaration
Swift
@IBOutlet @MainActor weak var inPersonExtraInfoLabel: UILabel?
-
The map view that displays the meeting location (if it has an in-person component).
Declaration
Swift
@IBOutlet @MainActor weak var locationMapView: MKMapView?
-
This contains the format header and disclosure triangle.
Declaration
Swift
@IBOutlet @MainActor weak var formatHeader: UIView?
-
The heading for the format section.
Declaration
Swift
@IBOutlet @MainActor weak var formatHeaderLabel: UILabel?
-
The disclosure triangle for the format section.
Declaration
Swift
@IBOutlet @MainActor weak var formatHeaderDisclosureTriangle: UIImageView?
-
This contains individual formats.
Declaration
Swift
@IBOutlet @MainActor weak var formatContainerView: UIView?
-
The navbar button to mark attendance.
Declaration
Swift
@IBOutlet @MainActor weak var iAttendBarButton: UIBarButtonItem?
-
The navbar button to copy the URI.
Declaration
Swift
@IBOutlet @MainActor weak var actionBarButton: UIBarButtonItem?
-
This creates an attendance event for the next meeting start time.
Note
This sets the event in the meeting’s native timezone. The calendar is responsible for converting the TZ.
Declaration
Swift
@MainActor var attendanceEvent: EKEvent? { get }
Return Value
a new EKEvent for the meeting, or nil.
-
This returns the valid activities that we can have, in our action sheet.
Declaration
Swift
@MainActor var validActivities: [UIActivity] { get }
-
“Cleans” a URI.
Declaration
Swift
@MainActor private static func _cleanURI(urlString inURLString: String?) -> String?
Parameters
urlString
The URL, as a String. It can be optional.
Return Value
an optional String. This is the given URI, “cleaned up” (“https://” or “tel:” may be prefixed)
-
Called when the view hierarchy has loaded.
See moreDeclaration
Swift
@MainActor override func viewDidLoad()
-
Called before the screen appears.
Declaration
Swift
@MainActor override func viewWillAppear(_ inIsAnimated: Bool)
Parameters
inIsAnimated
True, if the appearance is animated.
-
Called before the screen disappears.
Declaration
Swift
@MainActor override func viewWillDisappear(_ inIsAnimated: Bool)
Parameters
inIsAnimated
True, if the disappearance is animated.
-
Called when the layout is done. We use this to set the “please animate” flag.
Declaration
Swift
@MainActor override func viewDidLayoutSubviews()
-
Sets the time and weekday (local) for the meeting.
Declaration
Swift
@MainActor func setTimeAndWeekday()
-
Sets the time zone string (or hides it).
Declaration
Swift
@MainActor func setTimeZone()
-
Initializes the map view.
Declaration
Swift
@MainActor func setUpMap(_ inCoords: CLLocationCoordinate2D)
Parameters
inCoords
The center coordinate for the map (the marker location).
-
Populates the formats section.
Declaration
Swift
@MainActor func setUpFormats(_ inFormats: [SwiftBMLSDK_Parser.Meeting.Format])
Parameters
inFormats
An array of format instances.
-
Sets up the bar button item, with the state of attendance.
Declaration
Swift
@MainActor func setBarButton()
-
This displays the alert for links to Zoom, telling the user they need to download the app.
Declaration
Swift
@MainActor func displayMacZoomAlert()
-
The phone in button was hit.
Declaration
Swift
@IBAction @MainActor func phoneButtonHit(_: Any)
-
The globe button was hit.
Declaration
Swift
@IBAction @MainActor func globeButtonHit(_: Any)
-
The video button was hit.
Declaration
Swift
@IBAction @MainActor func videoButtonHit(_: Any)
-
The format header was hit (open or close the format section).
Declaration
Swift
@IBAction @MainActor func formatSectionHeaderHit(_: Any)
-
The in-person location header was hit (open or close the location section).
Declaration
Swift
@IBAction @MainActor func locationSectionHeaderHit(_: Any)
-
Called to handle action tasks.
Declaration
Swift
@IBAction @MainActor func actionItemHit(_ inButton: UIBarButtonItem)
Parameters
inButton
The action BarButtonItem
-
The “I Attend” bar button item was hit.
Declaration
Swift
@objc @MainActor func iAttendHit(_: Any)
-
This is called to fetch an annotation (marker) for the map.
Declaration
Swift
@MainActor func mapView(_: MKMapView, viewFor inAnnotation: MKAnnotation) -> MKAnnotationView?
Parameters
viewFor
The annotation we’re getting the marker for.
Return Value
The marker view for the annotation.