forked from CocoaBob/xee
-
Notifications
You must be signed in to change notification settings - Fork 1
/
XeeGIFLoader.h
85 lines (60 loc) · 1.52 KB
/
XeeGIFLoader.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#import "XeeBitmapImage.h"
#import "libungif/gif_lib.h"
@class XeeGIFFrame,XeeGIFPalette;
@interface XeeGIFImage:XeeBitmapImage
{
GifFileType *gif;
NSMutableArray *frames;
NSMutableArray *comments;
int background,currframe;
int frametime,transindex,disposal;
BOOL backupneeded;
uint32_t *backup;
XeeGIFPalette *globalpal;
int animticks;
NSTimer *animationtimer;
}
+(NSArray *)fileTypes;
+(BOOL)canOpenFile:(NSString *)name firstBlock:(NSData *)block attributes:(NSDictionary *)attributes;
-(id)init;
-(void)dealloc;
-(SEL)initLoader;
-(void)deallocLoader;
-(SEL)startLoading;
-(SEL)loadRecord;
-(SEL)failLoading;
-(SEL)finishLoading;
-(int)frames;
-(void)setFrame:(int)frame;
-(int)frame;
-(void)animate:(NSTimer *)timer;
-(BOOL)animated;
-(void)setAnimating:(BOOL)animating;
-(void)setAnimatingDefault;
-(BOOL)animating;
-(void)clearImage;
-(int)background;
-(uint32_t *)backup;
@end
@interface XeeGIFFrame:NSObject
{
int left,top,width,height;
int time,transparent,disposal;
XeeGIFPalette *palette;
unsigned char *data;
}
-(id)initWithWidth:(int)framewidth height:(int)frameheight left:(int)frameleft top:(int)frametop time:(int)frametime transparent:(int)trans disposal:(int)disp palette:(XeeGIFPalette *)pal;
-(void)dealloc;
-(void)draw:(XeeGIFImage *)image;
-(void)dispose:(XeeGIFImage *)image;
-(void)drawAndDispose:(XeeGIFImage *)image;
-(unsigned char *)data;
-(int)time;
@end
@interface XeeGIFPalette:NSObject
{
uint32_t table[256];
}
-(id)initWithColorMap:(ColorMapObject *)cmap;
-(uint32_t *)table;
@end