You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
dws/ui/ui_darwin.m

41 lines
977 B
Objective-C

#import <Cocoa/Cocoa.h>
#import "AppDelegate.h"
#import "EventBridge.h"
#import "ui_darwin.h"
id defaultAutoreleasePool;
id appDelegate;
void ui_init() {
defaultAutoreleasePool = [NSAutoreleasePool new];
[NSApplication sharedApplication];
[NSApp setDelegate: [[AppDelegate new] autorelease]];
[NSApp setActivationPolicy:NSApplicationActivationPolicyRegular];
}
int ui_run() {
[NSApp run];
[defaultAutoreleasePool drain];
return 0;
}
void bg_shutdown() {
[[NSApplication sharedApplication] terminate:nil];
}
void bg_set_root(char *path) {
id listener = [[EventBridge shared] listener];
[listener serverDidSetRoot:[NSString stringWithUTF8String:path]];
free(path);
}
void bg_received_request(RequestMeta *meta) {
id listener = [[EventBridge shared] listener];
[listener serverDidReceiveRequest:meta];
}
void bg_sent_response(ResponseMeta *meta) {
id listener = [[EventBridge shared] listener];
[listener serverDidWriteResponse:meta];
}