FLEXGlobalsTableViewControllerEntry.h 1.3 KB

1234567891011121314151617181920212223242526272829
  1. //
  2. // FLEXGlobalsTableViewControllerEntry.h
  3. // FLEX
  4. //
  5. // Created by Javier Soto on 7/26/14.
  6. // Copyright (c) 2014 f. All rights reserved.
  7. //
  8. #import <UIKit/UIKit.h>
  9. @class FLEXGlobalsTableViewController;
  10. typedef NSString *(^FLEXGlobalsTableViewControllerEntryNameFuture)(void);
  11. /// Simply return a view controller to be pushed on the navigation stack
  12. typedef UIViewController *(^FLEXGlobalsTableViewControllerViewControllerFuture)(void);
  13. /// Do something like present an alert, then use the host
  14. /// view controller to present or push another view controller.
  15. typedef void (^FLEXGlobalsTableViewControllerRowAction)(FLEXGlobalsTableViewController *host);
  16. @interface FLEXGlobalsTableViewControllerEntry : NSObject
  17. @property (nonatomic, readonly, copy) FLEXGlobalsTableViewControllerEntryNameFuture entryNameFuture;
  18. @property (nonatomic, readonly, copy) FLEXGlobalsTableViewControllerViewControllerFuture viewControllerFuture;
  19. @property (nonatomic, readonly, copy) FLEXGlobalsTableViewControllerRowAction rowAction;
  20. + (instancetype)entryWithNameFuture:(FLEXGlobalsTableViewControllerEntryNameFuture)nameFuture viewControllerFuture:(FLEXGlobalsTableViewControllerViewControllerFuture)viewControllerFuture;
  21. + (instancetype)entryWithNameFuture:(FLEXGlobalsTableViewControllerEntryNameFuture)nameFuture action:(FLEXGlobalsTableViewControllerRowAction)rowSelectedAction;
  22. @end