Sha256: 3a5fd0d80e2b31af6d66c6dabf917d817cc1773325a0fd07a9fce147c449badc

Contents?: true

Size: 1.11 KB

Versions: 2

Compression:

Stored size: 1.11 KB

Contents

/* -*- mode: objc -*- */

#import <Cocoa/Cocoa.h>

#include "mo.h"

struct say_event;
struct say_image;

void say_osx_flip_pool();

@class SayWindow;

@interface SayContext : NSObject {
  NSOpenGLContext *context;
  SayWindow *win;
}

+ (NSOpenGLPixelFormat*)format;

- (id)initWithShared:(SayContext*)shared;
- (void)setWindow:(SayWindow*)win;

- (void)update;
- (void)makeCurrent;

@property (readonly) NSOpenGLContext *context;

@end

@interface SayWindow : NSResponder<NSWindowDelegate> {
  NSWindow *window;
  NSOpenGLView *view;

  mo_array events;

  BOOL allow_close;

  NSTrackingRectTag track;

  uint8_t modifiers;

  GLint real_w, real_h, screen_w, screen_h;
}

- (BOOL)openWithTitle:(const char*)title
                width:(size_t)w
               height:(size_t)h
                style:(uint8_t)style;
- (void)close;

- (void)updateContext:(NSOpenGLContext*)context;

- (void)setIcon:(struct say_image*)img;
- (void)setTitle:(const char*)title;
- (void)resizeToWidth:(size_t)w height:(size_t)h;

- (BOOL)pollEvent:(struct say_event*)ev;
- (void)waitEvent:(struct say_event*)ev;

@property (readonly) NSOpenGLView *view;

@end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
ray-0.2.1 ext/say_osx.h
ray-0.2.0 ext/say_osx.h