//
// HtmlMedia.h
// Coding_iOS
//
// Created by 王 原闯 on 14-9-5.
// Copyright (c) 2014年 Coding. All rights reserved.
//
#import
#import "TFHpple.h"
#import "User.h"
typedef NS_ENUM(NSInteger, HtmlMediaItemType) {
HtmlMediaItemType_Image = 0,
HtmlMediaItemType_Code,
HtmlMediaItemType_EmotionEmoji,
HtmlMediaItemType_EmotionMonkey,
HtmlMediaItemType_ATUser,
HtmlMediaItemType_AutoLink,
HtmlMediaItemType_CustomLink,
HtmlMediaItemType_Math
};
typedef NS_ENUM(NSInteger, MediaShowType) {
MediaShowTypeNone = 1,
MediaShowTypeCode = 2,
MediaShowTypeImage = 3,
MediaShowTypeMonkey = 5,
MediaShowTypeImageAndMonkey = 15,
MediaShowTypeAll = 30
};
@class HtmlMediaItem;
@interface HtmlMedia : NSObject
@property (readwrite, nonatomic, copy) NSString *contentOrigional;
@property (readwrite, nonatomic, strong) NSMutableString *contentDisplay;
@property (readwrite, nonatomic, strong) NSMutableArray *mediaItems;
@property (strong, nonatomic) NSArray *imageItems;
- (void)removeItem:(HtmlMediaItem *)item;
- (BOOL)needToShowDetail;
+ (instancetype)htmlMediaWithString:(NSString *)htmlString showType:(MediaShowType)showType;
- (instancetype)initWithString:(NSString *)htmlString showType:(MediaShowType)showType;
//在curString的末尾添加一个media元素
+ (void)addMediaItem:(HtmlMediaItem *)curItem toString:(NSMutableString *)curString andMediaItems:(NSMutableArray *)itemList;
+ (void)addLinkStr:(NSString *)linkStr type:(HtmlMediaItemType)type toString:(NSMutableString *)curString andMediaItems:(NSMutableArray *)itemList;
+ (void)addMediaItemUser:(User *)curUser toString:(NSMutableString *)curString andMediaItems:(NSMutableArray *)itemList;
@end
@interface HtmlMediaItem : NSObject
@property (assign, nonatomic) HtmlMediaItemType type;
@property (assign, nonatomic) MediaShowType showType;
@property (readwrite, nonatomic, strong) NSString *src, *title, *href, *name, *code, *linkStr;
@property (assign, nonatomic) NSRange range;
+ (instancetype)htmlMediaItemWithType:(HtmlMediaItemType)type;
+ (instancetype)htmlMediaItemWithTypeATUser:(User *)curUser mediaRange:(NSRange)curRange;
- (NSString *)displayStr;
- (BOOL)isGif;
@end