cleanup
This commit is contained in:
@@ -296,187 +296,122 @@ static CVReturn MyDisplayLinkCallback(CVDisplayLinkRef displayLink, const CVTime
|
||||
}
|
||||
- (void)mouseDown:(NSEvent *)theEvent
|
||||
{
|
||||
// CGLLockContext([[self openGLContext] CGLContextObj]);
|
||||
auto mouseLoc = [self convertPoint:[theEvent locationInWindow] fromView:nil];
|
||||
// App::I.mouse_down(0, mouseLoc.x, App::I.height - mouseLoc.y - 1, theEvent.pressure, kEventSource::Mouse);
|
||||
// CGLUnlockContext([[self openGLContext] CGLContextObj]);
|
||||
{
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([mouseLoc,p=theEvent.pressure] {
|
||||
App::I.mouse_down(0, mouseLoc.x, App::I.height - mouseLoc.y - 1, p, kEventSource::Mouse);
|
||||
});
|
||||
}
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([mouseLoc,p=theEvent.pressure] {
|
||||
App::I.mouse_down(0, mouseLoc.x, App::I.height - mouseLoc.y - 1, p, kEventSource::Mouse);
|
||||
});
|
||||
}
|
||||
- (void)rightMouseDown:(NSEvent *)theEvent
|
||||
{
|
||||
// CGLLockContext([[self openGLContext] CGLContextObj]);
|
||||
auto mouseLoc = [self convertPoint:[theEvent locationInWindow] fromView:nil];
|
||||
// App::I.mouse_down(1, mouseLoc.x, App::I.height - mouseLoc.y - 1, theEvent.pressure, kEventSource::Mouse);
|
||||
// CGLUnlockContext([[self openGLContext] CGLContextObj]);
|
||||
{
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([mouseLoc,p=theEvent.pressure] {
|
||||
App::I.mouse_down(1, mouseLoc.x, App::I.height - mouseLoc.y - 1, p, kEventSource::Mouse);
|
||||
});
|
||||
}
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([mouseLoc,p=theEvent.pressure] {
|
||||
App::I.mouse_down(1, mouseLoc.x, App::I.height - mouseLoc.y - 1, p, kEventSource::Mouse);
|
||||
});
|
||||
}
|
||||
- (void)mouseUp:(NSEvent *)theEvent
|
||||
{
|
||||
// CGLLockContext([[self openGLContext] CGLContextObj]);
|
||||
auto mouseLoc = [self convertPoint:[theEvent locationInWindow] fromView:nil];
|
||||
// App::I.mouse_up(0, mouseLoc.x, App::I.height - mouseLoc.y - 1, kEventSource::Mouse);
|
||||
// CGLUnlockContext([[self openGLContext] CGLContextObj]);
|
||||
{
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([mouseLoc] {
|
||||
App::I.mouse_up(0, mouseLoc.x, App::I.height - mouseLoc.y - 1, kEventSource::Mouse);
|
||||
});
|
||||
}
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([mouseLoc] {
|
||||
App::I.mouse_up(0, mouseLoc.x, App::I.height - mouseLoc.y - 1, kEventSource::Mouse);
|
||||
});
|
||||
}
|
||||
- (void)rightMouseUp:(NSEvent *)theEvent
|
||||
{
|
||||
// CGLLockContext([[self openGLContext] CGLContextObj]);
|
||||
auto mouseLoc = [self convertPoint:[theEvent locationInWindow] fromView:nil];
|
||||
// App::I.mouse_up(1, mouseLoc.x, App::I.height - mouseLoc.y - 1, kEventSource::Mouse);
|
||||
// CGLUnlockContext([[self openGLContext] CGLContextObj]);
|
||||
{
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([mouseLoc] {
|
||||
App::I.mouse_up(1, mouseLoc.x, App::I.height - mouseLoc.y - 1, kEventSource::Mouse);
|
||||
});
|
||||
}
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([mouseLoc] {
|
||||
App::I.mouse_up(1, mouseLoc.x, App::I.height - mouseLoc.y - 1, kEventSource::Mouse);
|
||||
});
|
||||
}
|
||||
- (void)mouseMoved:(NSEvent *)theEvent
|
||||
{
|
||||
// CGLLockContext([[self openGLContext] CGLContextObj]);
|
||||
auto mouseLoc = [self convertPoint:[theEvent locationInWindow] fromView:nil];
|
||||
// App::I.mouse_move(mouseLoc.x, App::I.height - mouseLoc.y - 1, theEvent.pressure, kEventSource::Mouse);
|
||||
// CGLUnlockContext([[self openGLContext] CGLContextObj]);
|
||||
{
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([mouseLoc,p=theEvent.pressure] {
|
||||
App::I.mouse_move(mouseLoc.x, App::I.height - mouseLoc.y - 1, p, kEventSource::Mouse);
|
||||
});
|
||||
}
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([mouseLoc,p=theEvent.pressure] {
|
||||
App::I.mouse_move(mouseLoc.x, App::I.height - mouseLoc.y - 1, p, kEventSource::Mouse);
|
||||
});
|
||||
}
|
||||
-(void)mouseDragged:(NSEvent *)theEvent
|
||||
{
|
||||
// CGLLockContext([[self openGLContext] CGLContextObj]);
|
||||
auto mouseLoc = [self convertPoint:[theEvent locationInWindow] fromView:nil];
|
||||
// App::I.mouse_move(mouseLoc.x, App::I.height - mouseLoc.y - 1, theEvent.pressure, kEventSource::Mouse);
|
||||
// CGLUnlockContext([[self openGLContext] CGLContextObj]);
|
||||
{
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([mouseLoc,p=theEvent.pressure] {
|
||||
App::I.mouse_move(mouseLoc.x, App::I.height - mouseLoc.y - 1, p, kEventSource::Mouse);
|
||||
});
|
||||
}
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([mouseLoc,p=theEvent.pressure] {
|
||||
App::I.mouse_move(mouseLoc.x, App::I.height - mouseLoc.y - 1, p, kEventSource::Mouse);
|
||||
});
|
||||
}
|
||||
- (void)rightMouseDragged:(NSEvent *)theEvent
|
||||
{
|
||||
// CGLLockContext([[self openGLContext] CGLContextObj]);
|
||||
auto mouseLoc = [self convertPoint:[theEvent locationInWindow] fromView:nil];
|
||||
// App::I.mouse_move(mouseLoc.x, App::I.height - mouseLoc.y - 1, theEvent.pressure, kEventSource::Mouse);
|
||||
// CGLUnlockContext([[self openGLContext] CGLContextObj]);
|
||||
{
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([mouseLoc,p=theEvent.pressure] {
|
||||
App::I.mouse_move(mouseLoc.x, App::I.height - mouseLoc.y - 1, p, kEventSource::Mouse);
|
||||
});
|
||||
}
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([mouseLoc,p=theEvent.pressure] {
|
||||
App::I.mouse_move(mouseLoc.x, App::I.height - mouseLoc.y - 1, p, kEventSource::Mouse);
|
||||
});
|
||||
}
|
||||
- (void)scrollWheel:(NSEvent *)theEvent
|
||||
{
|
||||
// CGLLockContext([[self openGLContext] CGLContextObj]);
|
||||
auto mouseLoc = [self convertPoint:[theEvent locationInWindow] fromView:nil];
|
||||
// App::I.mouse_scroll(mouseLoc.x, App::I.height - mouseLoc.y - 1, [theEvent deltaY]);
|
||||
// CGLUnlockContext([[self openGLContext] CGLContextObj]);
|
||||
{
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([mouseLoc,d=[theEvent deltaY]] {
|
||||
App::I.mouse_scroll(mouseLoc.x, App::I.height - mouseLoc.y - 1, d);
|
||||
});
|
||||
}
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([mouseLoc,d=[theEvent deltaY]] {
|
||||
App::I.mouse_scroll(mouseLoc.x, App::I.height - mouseLoc.y - 1, d);
|
||||
});
|
||||
}
|
||||
- (void)keyDown:(NSEvent *)theEvent
|
||||
{
|
||||
// CGLLockContext([[self openGLContext] CGLContextObj]);
|
||||
auto keyCode = [theEvent keyCode];
|
||||
auto chars = [theEvent characters];
|
||||
// if (App::I.keys[(int)kKey::KeyCtrl])
|
||||
// {
|
||||
// App::I.key_down(convert_key(keyCode));
|
||||
// App::I.key_up(convert_key(keyCode));
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// App::I.key_down(convert_key(keyCode));
|
||||
// if (const char* cstr = [chars cStringUsingEncoding:NSASCIIStringEncoding])
|
||||
// App::I.key_char(cstr[0]);
|
||||
// }
|
||||
// CGLUnlockContext([[self openGLContext] CGLContextObj]);
|
||||
std::string s = [chars cStringUsingEncoding:NSASCIIStringEncoding];
|
||||
{
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([keyCode, s] {
|
||||
if (App::I.keys[(int)kKey::KeyCtrl])
|
||||
{
|
||||
App::I.key_down(convert_key(keyCode));
|
||||
App::I.key_up(convert_key(keyCode));
|
||||
}
|
||||
else
|
||||
{
|
||||
App::I.key_down(convert_key(keyCode));
|
||||
if (!s.empty())
|
||||
App::I.key_char(s[0]);
|
||||
}
|
||||
});
|
||||
}
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([keyCode, s] {
|
||||
if (App::I.keys[(int)kKey::KeyCtrl])
|
||||
{
|
||||
App::I.key_down(convert_key(keyCode));
|
||||
App::I.key_up(convert_key(keyCode));
|
||||
}
|
||||
else
|
||||
{
|
||||
App::I.key_down(convert_key(keyCode));
|
||||
if (!s.empty())
|
||||
App::I.key_char(s[0]);
|
||||
}
|
||||
});
|
||||
}
|
||||
- (void)keyUp:(NSEvent *)theEvent
|
||||
{
|
||||
// CGLLockContext([[self openGLContext] CGLContextObj]);
|
||||
auto keyCode = [theEvent keyCode];
|
||||
// App::I.key_up(convert_key(keyCode));
|
||||
// CGLUnlockContext([[self openGLContext] CGLContextObj]);
|
||||
{
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([keyCode] {
|
||||
App::I.key_up(convert_key(keyCode));
|
||||
});
|
||||
}
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([keyCode] {
|
||||
App::I.key_up(convert_key(keyCode));
|
||||
});
|
||||
}
|
||||
- (void)flagsChanged:(NSEvent *)event
|
||||
{
|
||||
[super flagsChanged:event];
|
||||
|
||||
// CGLLockContext([[self openGLContext] CGLContextObj]);
|
||||
auto flags = [event modifierFlags];
|
||||
{
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([flags] {
|
||||
static bool pressed_shift = false;
|
||||
if (pressed_shift != (flags & NSShiftKeyMask))
|
||||
{
|
||||
pressed_shift = (flags & NSShiftKeyMask);
|
||||
pressed_shift ? App::I.key_down(kKey::KeyShift) : App::I.key_up(kKey::KeyShift);
|
||||
}
|
||||
static bool pressed_alt = false;
|
||||
if (pressed_alt != (flags & NSAlternateKeyMask))
|
||||
{
|
||||
pressed_alt = (flags & NSAlternateKeyMask);
|
||||
pressed_alt ? App::I.key_down(kKey::KeyAlt) : App::I.key_up(kKey::KeyAlt);
|
||||
}
|
||||
static bool pressed_cmd = false;
|
||||
if (pressed_cmd != (flags & NSCommandKeyMask))
|
||||
{
|
||||
pressed_cmd = (flags & NSCommandKeyMask);
|
||||
pressed_cmd ? App::I.key_down(kKey::KeyCtrl) : App::I.key_up(kKey::KeyCtrl);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// CGLUnlockContext([[self openGLContext] CGLContextObj]);
|
||||
std::lock_guard<std::mutex> lock(task_mutex);
|
||||
tasklist.emplace_back([flags] {
|
||||
static bool pressed_shift = false;
|
||||
if (pressed_shift != (flags & NSShiftKeyMask))
|
||||
{
|
||||
pressed_shift = (flags & NSShiftKeyMask);
|
||||
pressed_shift ? App::I.key_down(kKey::KeyShift) : App::I.key_up(kKey::KeyShift);
|
||||
}
|
||||
static bool pressed_alt = false;
|
||||
if (pressed_alt != (flags & NSAlternateKeyMask))
|
||||
{
|
||||
pressed_alt = (flags & NSAlternateKeyMask);
|
||||
pressed_alt ? App::I.key_down(kKey::KeyAlt) : App::I.key_up(kKey::KeyAlt);
|
||||
}
|
||||
static bool pressed_cmd = false;
|
||||
if (pressed_cmd != (flags & NSCommandKeyMask))
|
||||
{
|
||||
pressed_cmd = (flags & NSCommandKeyMask);
|
||||
pressed_cmd ? App::I.key_down(kKey::KeyCtrl) : App::I.key_up(kKey::KeyCtrl);
|
||||
}
|
||||
});
|
||||
}
|
||||
@end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user