         
         setTitle(menu!.items[initialSelection].description, for: .normal)
         
-        return true
+        return self
     }
 
     fileprivate override func getPopoverViewController() -> UIViewController? {

        setTitle("Menu", for: .normal)
    }
    
    public func setMenu(items: [CustomStringConvertible], initialSelection: Int, selectionHandler: @escaping ((CustomStringConvertible) -> Void)) -> Bool {
        guard items.count > 0 && initialSelection >= 0 && initialSelection < items.count else { return false }
        
        menu = Menu(items: items, initialSelection: initialSelection, selectionHandler: {
            

    }
    
    fileprivate func initialize() {
        innerButton.outerButton = self
        customView = innerButton
    }

    private let _innerButton = DropDownButton()
    fileprivate var innerButton: DropDownButton { return _innerButton }
}

public class DropDownListBarButton: DropDownBarButton {
    
    public func setList(items: [CustomStringConvertible]) -> Self? {
        return innerButton.setList(items: items) == nil ? nil : self
    }

    private let _innerButton = DropDownListButton()
    fileprivate override var innerButton: DropDownListButton { return _innerButton }
}

public class DropDownMenuBarButton: DropDownBarButton {
    
    public func setMenu(items: [CustomStringConvertible], initialSelection: Int, selectionHandler: @escaping ((CustomStringConvertible) -> Void)) -> Self? {
        return innerButton.setMenu(items: items, initialSelection: initialSelection, selectionHandler: selectionHandler) == nil ? nil : self
    }

    private let _innerButton = DropDownMenuButton()
    fileprivate override var innerButton: DropDownMenuButton { return _innerButton }
}

