VMF_EmbeddedTableController

@MainActor
class VMF_EmbeddedTableController : VMF_BaseViewController, VMF_EmbeddedTableControllerProtocol
extension VMF_EmbeddedTableController: UITableViewDataSource
extension VMF_EmbeddedTableController: UITableViewDelegate

This presents a simple view controller, with a table of meetings.

  • The storyboard ID, for instantiating this class

    Declaration

    Swift

    @MainActor
    static let storyboardID: String
  • The background transparency, for alternating rows.

    Declaration

    Swift

    @MainActor
    private static let _alternateRowOpacity: CGFloat
  • The height of section headers, in display units.

    Declaration

    Swift

    @MainActor
    private static let _sectionTitleHeightInDisplayUnits: CGFloat
  • The segue ID, for inspecting individual meetings.

    Declaration

    Swift

    @MainActor
    private static let _inspectMeetingSegueID: String
  • Used for the “Pull to Refresh”

    Declaration

    Swift

    @MainActor
    private weak var _refreshControl: UIRefreshControl?
  • The controller that “owns” this instance.

    Declaration

    Swift

    @MainActor
    weak var myController: VMF_MasterTableControllerProtocol?
  • If true (default), then we will not set up a refresh.

    Declaration

    Swift

    @MainActor
    var noRefresh: Bool { get set }
  • The time index for this table.

    Declaration

    Swift

    @MainActor
    var timeIndex: Int
  • The day index for this table.

    Declaration

    Swift

    @MainActor
    var dayIndex: Int
  • This handles the meeting collection for this.

    Declaration

    Swift

    @MainActor
    var meetings: [MeetingInstance] { get set }
  • This applies any filters to the list.

    Declaration

    Swift

    @MainActor
    var filteredMeetings: [MeetingInstance] { get }
  • The table that shows the meetings for the current time.

    Declaration

    Swift

    @IBOutlet
    @MainActor
    weak var valueTable: UITableView?

Base Class Overrides

  • Called when the view hierarchy has loaded.

    Declaration

    Swift

    @MainActor
    override func viewDidLoad()
  • Called just before the view appears

    Declaration

    Swift

    @MainActor
    override func viewWillAppear(_ inIsAnimated: Bool)

    Parameters

    inIsAnimated

    True, if the appearance is animated.

  • Called just after the view appeared

    Declaration

    Swift

    @MainActor
    override func viewDidAppear(_ inIsAnimated: Bool)

    Parameters

    inIsAnimated

    True, if the appearance is animated.

  • Called just before the view segues to another one.

    Declaration

    Swift

    @MainActor
    override func prepare(for inSegue: UIStoryboardSegue, sender inData: Any?)

    Parameters

    for

    The segue instance.

    sender

    Any associated data.

Instance Methods

  • This checks to see if we need to open a linked meeting.

    Declaration

    Swift

    @MainActor
    func checkForUniversalLink()

Callbacks

  • Called when attendance changes for a meeting.

    Declaration

    Swift

    @MainActor
    func attendanceChanged(_ inMeeting: MeetingInstance)

    Parameters

    inMeeting

    The meeting instance.

  • Called to show a meeting details page.

    Declaration

    Swift

    @MainActor
    func selectMeeting(_ inMeeting: MeetingInstance)

    Parameters

    inMeeting

    The meeting instance.

  • The refresh has been triggered.

    Declaration

    Swift

    @objc
    @MainActor
    func refreshPulled(_: Any)

UITableViewDataSource Conformance

  • Declaration

    Swift

    @MainActor
    func tableView(_: UITableView, numberOfRowsInSection: Int) -> Int

    Parameters

    numberOfRowsInSection

    The 0-based section index.

    Return Value

    The number of meetings to display.

  • Declaration

    Swift

    @MainActor
    func tableView(_ inTableView: UITableView, cellForRowAt inIndexPath: IndexPath) -> UITableViewCell

    Parameters

    inTableView

    The table view

    numberOfRowsInSection

    The index path of the cell we want.

UITableViewDelegate Conformance

  • Called just before the selection. We use this to trigger a haptic, and bring in the meeting.

    Declaration

    Swift

    @MainActor
    func tableView(_: UITableView, willSelectRowAt inIndexPath: IndexPath) -> IndexPath?

    Parameters

    willSelectRowAt

    The index path of the row

    Return Value

    The index path (always)