SameBoy/Cocoa/GBView.h

32 lines
1007 B
Objective-C
Raw Normal View History

2016-03-30 20:07:55 +00:00
#import <Cocoa/Cocoa.h>
2017-10-12 21:02:02 +00:00
#include <Core/gb.h>
#import <JoyKit/JoyKit.h>
2021-05-30 17:55:04 +00:00
#import "GBOSDView.h"
@class Document;
2016-03-30 20:07:55 +00:00
2020-03-26 18:54:18 +00:00
typedef enum {
GB_FRAME_BLENDING_MODE_DISABLED,
GB_FRAME_BLENDING_MODE_SIMPLE,
GB_FRAME_BLENDING_MODE_ACCURATE,
GB_FRAME_BLENDING_MODE_ACCURATE_EVEN = GB_FRAME_BLENDING_MODE_ACCURATE,
GB_FRAME_BLENDING_MODE_ACCURATE_ODD,
} GB_frame_blending_mode_t;
@interface GBView : NSView<JOYListener>
2016-03-30 20:07:55 +00:00
- (void) flip;
- (uint32_t *) pixels;
2021-01-13 18:59:28 +00:00
@property (nonatomic, weak) IBOutlet Document *document;
@property (nonatomic) GB_gameboy_t *gb;
2020-03-26 18:54:18 +00:00
@property (nonatomic) GB_frame_blending_mode_t frameBlendingMode;
2021-10-23 10:36:58 +00:00
@property (nonatomic, getter=isMouseHidingEnabled) bool mouseHidingEnabled;
2021-01-13 18:59:28 +00:00
@property (nonatomic) bool isRewinding;
@property (nonatomic, strong) NSView *internalView;
2021-05-30 17:55:04 +00:00
@property (weak) GBOSDView *osdView;
- (void) createInternalView;
- (uint32_t *)currentBuffer;
- (uint32_t *)previousBuffer;
- (void)screenSizeChanged;
2020-04-29 13:05:31 +00:00
- (void)setRumble: (double)amp;
2021-10-23 10:26:44 +00:00
- (NSImage *)renderToImage;
2016-03-30 20:07:55 +00:00
@end