     let scrollView = ContainerView(frame: CGRectZero)
 }
 
-public extension PageController {
-
-    func frameForMenuBar() -> CGRect {
+extension PageController {
+
+    public var frameForMenuBar: CGRect {
         var frame = CGRect(x: 0, y: 0, width: view.bounds.width, height: 44)
         if let frameForNavigationBar = navigationController?.navigationBar.frame {
             frame.origin.y = frameForNavigationBar.maxY

        return frame
    }

    func frameForContentController() -> CGRect {
        return view.bounds
    }

}

extension PageController {

    func frameForLeftContentController() -> CGRect {
        var frame = frameForContentController()
        frame.origin.x = 0
        return frame
    }

    func frameForCenterContentController() -> CGRect {
        var frame = frameForContentController()
        frame.origin.x = frame.width
        return frame
    }

    func frameForRightContentController() -> CGRect {
        var frame = frameForContentController()
        frame.origin.x = frame.width * 2
        return frame
    }
}

extension PageController {

    func _configure() {
        automaticallyAdjustsScrollViewInsets = false

        let frame = frameForContentController()
        scrollView.frame = frame
        scrollView.controller = self

        scrollView.contentSize = CGSize(width: frame.width * 3, height: frame.height)
        view.addSubview(scrollView)

        menuBar.frame = frameForMenuBar()
        menuBar.controller = self
        view.addSubview(menuBar)
    }

import UIKit

public protocol PageControllerDelegate: class {
    func pageController(pageController: PageController, didChangeVisibleController visibleViewController: UIViewController, fromViewController: UIViewController?)
}

