andlabs-ui/new/main_darwin.m

35 lines
688 B
Mathematica
Raw Normal View History

// 6 april 2015
#import "uipriv_darwin.h"
// TODO merge with init_darwin.m?
void uiMain(void)
{
[NSApp run];
}
void uiQuit(void)
{
NSEvent *e;
[NSApp stop:NSApp];
// stop: won't register until another event has passed; let's synthesize one
e = [NSEvent otherEventWithType:NSApplicationDefined
location:NSZeroPoint
modifierFlags:0
timestamp:[[NSProcessInfo processInfo] systemUptime]
windowNumber:0
context:[NSGraphicsContext currentContext]
subtype:0
data1:0
data2:0];
[NSApp postEvent:e atStart:NO]; // let pending events take priority
// TODO really wait?
}
// TODO move somewhere else
uintptr_t uiControlHandle(uiControl *c)
{
return (*(c->handle))(c);
}