123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- #import "RNNLayoutNode.h"
- #import "RNNComponentViewCreator.h"
- #import "RNNEventEmitter.h"
- #import "RNNNavigationOptions.h"
- #import "RNNAnimator.h"
- #import "RNNUIBarButtonItem.h"
- #import "RNNLayoutInfo.h"
- #import "RNNLayoutProtocol.h"
- #import "RNNComponentPresenter.h"
-
- typedef void (^PreviewCallback)(UIViewController *vc);
-
- @interface RNNComponentViewController : UIViewController <RNNLayoutProtocol, UIViewControllerPreviewingDelegate, UISearchResultsUpdating, UISearchBarDelegate, UINavigationControllerDelegate, UISplitViewControllerDelegate>
-
- @property (nonatomic, strong) RNNEventEmitter *eventEmitter;
- @property (nonatomic, retain) RNNLayoutInfo* layoutInfo;
- @property (nonatomic, strong) RNNComponentPresenter* presenter;
- @property (nonatomic, strong) RNNNavigationOptions* options;
- @property (nonatomic, strong) RNNNavigationOptions* defaultOptions;
-
- @property (nonatomic, strong) RNNAnimator* animator;
- @property (nonatomic, strong) UIViewController* previewController;
- @property (nonatomic, copy) PreviewCallback previewCallback;
-
- - (instancetype)initWithLayoutInfo:(RNNLayoutInfo *)layoutInfo
- rootViewCreator:(id<RNNComponentViewCreator>)creator
- eventEmitter:(RNNEventEmitter*)eventEmitter
- presenter:(RNNComponentPresenter *)presenter
- options:(RNNNavigationOptions *)options
- defaultOptions:(RNNNavigationOptions *)defaultOptions;
-
- - (instancetype)initExternalComponentWithLayoutInfo:(RNNLayoutInfo *)layoutInfo
- eventEmitter:(RNNEventEmitter*)eventEmitter
- presenter:(RNNComponentPresenter *)presenter
- options:(RNNNavigationOptions *)options
- defaultOptions:(RNNNavigationOptions *)defaultOptions;
-
- - (BOOL)isExternalViewController;
-
- - (void)onButtonPress:(RNNUIBarButtonItem *)barButtonItem;
-
- - (void)bindViewController:(UIViewController *)viewController;
-
- @end
|