123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- #import <UIKit/UIKit.h>
- #import <QuartzCore/QuartzCore.h>
- #import "RECommonFunctions.h"
- #import "REMenuItem.h"
- #import "REMenuContainerView.h"
- @class REMenuItem;
- typedef NS_ENUM(NSInteger, REMenuImageAlignment) {
- REMenuImageAlignmentLeft,
- REMenuImageAlignmentRight
- };
- typedef NS_ENUM(NSInteger, REMenuLiveBackgroundStyle) {
- REMenuLiveBackgroundStyleLight,
- REMenuLiveBackgroundStyleDark
- };
- @interface REMenu : NSObject
- @property (strong, readwrite, nonatomic) UIView *menuView;
- @property (strong, readwrite, nonatomic) NSArray *items;
- @property (strong, readwrite, nonatomic) UIView *backgroundView;
- @property (assign, readonly, nonatomic) BOOL isOpen;
- @property (assign, readonly, nonatomic) BOOL isAnimating;
- @property (assign, readwrite, nonatomic) BOOL waitUntilAnimationIsComplete;
- @property (copy, readwrite, nonatomic) void (^closeCompletionHandler)(void);
- @property (copy, readwrite, nonatomic) void (^closePreparationBlock)(void);
- @property (assign, readwrite, nonatomic) BOOL closeOnSelection;
- @property (assign, readwrite, nonatomic) CGFloat cornerRadius;
- @property (strong, readwrite, nonatomic) UIColor *shadowColor;
- @property (assign, readwrite, nonatomic) CGSize shadowOffset;
- @property (assign, readwrite, nonatomic) CGFloat shadowOpacity;
- @property (assign, readwrite, nonatomic) CGFloat shadowRadius;
- @property (assign, readwrite, nonatomic) CGFloat itemHeight;
- @property (assign, readwrite, nonatomic) CGFloat backgroundAlpha;
- @property (strong, readwrite, nonatomic) UIColor *backgroundColor;
- @property (strong, readwrite, nonatomic) UIColor *separatorColor;
- @property (assign, readwrite, nonatomic) CGFloat separatorHeight;
- @property (assign, readwrite, nonatomic) CGSize separatorOffset;
- @property (strong, readwrite, nonatomic) UIFont *font;
- @property (strong, readwrite, nonatomic) UIColor *textColor;
- @property (strong, readwrite, nonatomic) UIColor *textShadowColor;
- @property (assign, readwrite, nonatomic) CGSize textOffset;
- @property (assign, readwrite, nonatomic) CGSize textShadowOffset;
- @property (assign, readwrite, nonatomic) REMenuImageAlignment imageAlignment;
- @property (strong, readwrite, nonatomic) UIColor *imageTintColor;
- @property (assign, readwrite, nonatomic) CGSize imageOffset;
- @property (strong, readwrite, nonatomic) UIColor *highlightedBackgroundColor;
- @property (strong, readwrite, nonatomic) UIColor *highlightedSeparatorColor;
- @property (strong, readwrite, nonatomic) UIColor *highlightedTextColor;
- @property (strong, readwrite, nonatomic) UIColor *highlightedTextShadowColor;
- @property (strong, readwrite, nonatomic) UIColor *highlightedImageTintColor;
- @property (assign, readwrite, nonatomic) CGSize highlightedTextShadowOffset;
- @property (assign, readwrite, nonatomic) CGFloat borderWidth;
- @property (strong, readwrite, nonatomic) UIColor *borderColor;
- @property (assign, readwrite, nonatomic) NSTextAlignment textAlignment;
- @property (strong, readwrite, nonatomic) UIFont *subtitleFont;
- @property (strong, readwrite, nonatomic) UIColor *subtitleTextColor;
- @property (strong, readwrite, nonatomic) UIColor *subtitleTextShadowColor;
- @property (assign, readwrite, nonatomic) CGSize subtitleTextOffset;
- @property (assign, readwrite, nonatomic) CGSize subtitleTextShadowOffset;
- @property (strong, readwrite, nonatomic) UIColor *subtitleHighlightedTextColor;
- @property (strong, readwrite, nonatomic) UIColor *subtitleHighlightedTextShadowColor;
- @property (assign, readwrite, nonatomic) CGSize subtitleHighlightedTextShadowOffset;
- @property (assign, readwrite, nonatomic) NSTextAlignment subtitleTextAlignment;
- @property (assign, readwrite, nonatomic) NSTimeInterval animationDuration;
- @property (assign, readwrite, nonatomic) NSTimeInterval closeAnimationDuration;
- @property (assign, readwrite, nonatomic) NSTimeInterval bounceAnimationDuration;
- @property (assign, readwrite, nonatomic) BOOL appearsBehindNavigationBar;
- @property (assign, readwrite, nonatomic) BOOL bounce;
- @property (assign, readwrite, nonatomic) BOOL liveBlur;
- @property (strong, readwrite, nonatomic) UIColor *liveBlurTintColor;
- @property (assign, readwrite, nonatomic) REMenuLiveBackgroundStyle liveBlurBackgroundStyle;
- @property (copy, readwrite, nonatomic) void (^badgeLabelConfigurationBlock)(UILabel *badgeLabel, REMenuItem *item);
- - (id)initWithItems:(NSArray *)items;
- - (void)showFromRect:(CGRect)rect inView:(UIView *)view;
- - (void)showInView:(UIView *)view;
- - (void)showFromNavigationController:(UINavigationController *)navigationController;
- - (void)showFromNavigationController:(UINavigationController *)navigationController offsetX:(CGFloat)offsetX width:(CGFloat)width;
- - (void)setNeedsLayout;
- - (void)closeWithCompletion:(void (^)(void))completion;
- - (void)close;
- - (CGFloat)computeNavigationBarOffset;
- @end
|