summaryrefslogtreecommitdiff
path: root/indra/llwindow/llwindowmacosx-objc.h
diff options
context:
space:
mode:
authorGeenz <geenz@geenzo.com>2013-01-01 11:32:53 -0500
committerGeenz <geenz@geenzo.com>2013-01-01 11:32:53 -0500
commitddb48d51d996b18063b111faa3b7e709160074d9 (patch)
treef64cab16299cec07756dea34823ab3749b4d1ec3 /indra/llwindow/llwindowmacosx-objc.h
parent7a1593c083a7ed6e3d6589d5dd656354d748b8ce (diff)
More things in this commit:
- Removed the callback system in favor of simply defining functions in a header to later be implemented in whichever file is most convenient for what we want to do (i.e., calling LLWindow callbacks within LLWindowMacOSX, setting cursors in llwindowmacosx-objc.mm, etc.) - Viewer shutdown now works appropriately - Added a bit of debugging code to test if a key has been handled by the UI or not (useful for tracking down the mystery of the enter key not being handled) - Setup a cocoa quit handler within the application delegate that intercepts any termination requests
Diffstat (limited to 'indra/llwindow/llwindowmacosx-objc.h')
-rw-r--r--indra/llwindow/llwindowmacosx-objc.h38
1 files changed, 25 insertions, 13 deletions
diff --git a/indra/llwindow/llwindowmacosx-objc.h b/indra/llwindow/llwindowmacosx-objc.h
index abaeda1f91..655d63ac12 100644
--- a/indra/llwindow/llwindowmacosx-objc.h
+++ b/indra/llwindow/llwindowmacosx-objc.h
@@ -65,21 +65,33 @@ void getCursorPos(NSWindowRef window, float* pos);
void makeWindowOrderFront(NSWindowRef window);
void convertScreenToWindow(NSWindowRef window, float *coord);
void convertWindowToScreen(NSWindowRef window, float *coord);
+void convertScreenToView(NSWindowRef window, float *coord);
void setWindowPos(NSWindowRef window, float* pos);
+void closeWindow(NSWindowRef window);
+void removeGLView(GLViewRef view);
+
+// These are all implemented in llwindowmacosx.cpp.
+// This is largely for easier interop between Obj-C and C++ (at least in the viewer's case due to the BOOL vs. BOOL conflict)
+void callKeyUp(unsigned short key, unsigned int mask);
+void callKeyDown(unsigned short key, unsigned int mask);
+void callUnicodeCallback(wchar_t character, unsigned int mask);
+void callRightMouseDown(float *pos, unsigned int mask);
+void callRightMouseUp(float *pos, unsigned int mask);
+void callLeftMouseDown(float *pos, unsigned int mask);
+void callLeftMouseUp(float *pos, unsigned int mask);
+void callDoubleClick(float *pos, unsigned int mask);
+void callResize(unsigned int width, unsigned int height);
+void callMouseMoved(float *pos, unsigned int mask);
+void callScrollMoved(float delta);
+void callMouseExit();
+void callWindowFocus();
+void callWindowUnfocus();
+void callDeltaUpdate(float *delta, unsigned int mask);
+void callMiddleMouseDown(float *pos, unsigned int mask);
+void callMiddleMouseUp(float *pos, unsigned int mask);
+void callFocus();
+void callFocusLost();
-void registerKeyUpCallback(NSWindowRef window, KeyCallback callback);
-void registerKeyDownCallback(NSWindowRef window, KeyCallback callback);
-void registerUnicodeCallback(NSWindowRef window, UnicodeCallback callback);
-void registerMouseUpCallback(NSWindowRef window, MouseCallback callback);
-void registerMouseDownCallback(NSWindowRef window, MouseCallback callback);
-void registerRightMouseUpCallback(NSWindowRef window, MouseCallback callback);
-void registerRightMouseDownCallback(NSWindowRef window, MouseCallback callback);
-void registerDoubleClickCallback(NSWindowRef window, MouseCallback callback);
-void registerResizeEventCallback(GLViewRef window, ResizeCallback callback);
-void registerMouseMovedCallback(NSWindowRef window, MouseCallback callback);
-void registerScrollCallback(NSWindowRef window, ScrollWheelCallback callback);
-void registerMouseExitCallback(NSWindowRef window, VoidCallback callback);
-void registerDeltaUpdateCallback(NSWindowRef window, MouseCallback callback);
NSWindowRef getMainAppWindow();
GLViewRef getGLView(NSWindowRef window);