From 2817d6c67d65bee9cae8f0d77e229ccf8eaa286f Mon Sep 17 00:00:00 2001 From: Andrey Lihatskiy Date: Sun, 18 Feb 2024 15:53:54 +0200 Subject: viewer#831 Xcode buildfix --- indra/llwindow/llwindowmacosx-objc.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/llwindow/llwindowmacosx-objc.h') diff --git a/indra/llwindow/llwindowmacosx-objc.h b/indra/llwindow/llwindowmacosx-objc.h index 77024d3a9c..f9a7a098cb 100644 --- a/indra/llwindow/llwindowmacosx-objc.h +++ b/indra/llwindow/llwindowmacosx-objc.h @@ -37,7 +37,7 @@ typedef std::vector > segment_t; typedef std::vector segment_lengths; -typedef std::vector segment_standouts; +typedef std::vector segment_standouts; struct attributedStringInfo { segment_lengths seg_lengths; -- cgit v1.2.3 From 88f168f33bcf2bea7ea4769233793cf67d2cf37e Mon Sep 17 00:00:00 2001 From: Andrey Lihatskiy Date: Mon, 19 Feb 2024 18:41:18 +0200 Subject: viewer#836 Xcode buildfix --- indra/llwindow/llwindowmacosx-objc.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'indra/llwindow/llwindowmacosx-objc.h') diff --git a/indra/llwindow/llwindowmacosx-objc.h b/indra/llwindow/llwindowmacosx-objc.h index f9a7a098cb..e406f7dd19 100644 --- a/indra/llwindow/llwindowmacosx-objc.h +++ b/indra/llwindow/llwindowmacosx-objc.h @@ -30,6 +30,7 @@ #include #include +#include //fir CGSize #include @@ -37,7 +38,7 @@ typedef std::vector > segment_t; typedef std::vector segment_lengths; -typedef std::vector segment_standouts; +typedef std::deque segment_standouts; struct attributedStringInfo { segment_lengths seg_lengths; -- cgit v1.2.3 From e2e37cced861b98de8c1a7c9c0d3a50d2d90e433 Mon Sep 17 00:00:00 2001 From: Ansariel Date: Wed, 22 May 2024 21:25:21 +0200 Subject: Fix line endlings --- indra/llwindow/llwindowmacosx-objc.h | 372 +++++++++++++++++------------------ 1 file changed, 186 insertions(+), 186 deletions(-) (limited to 'indra/llwindow/llwindowmacosx-objc.h') diff --git a/indra/llwindow/llwindowmacosx-objc.h b/indra/llwindow/llwindowmacosx-objc.h index 609a441d66..d9d8bfce1f 100644 --- a/indra/llwindow/llwindowmacosx-objc.h +++ b/indra/llwindow/llwindowmacosx-objc.h @@ -1,186 +1,186 @@ -/** - * @file llwindowmacosx-objc.h - * @brief Prototypes for functions shared between llwindowmacosx.cpp - * and llwindowmacosx-objc.mm. - * - * $LicenseInfo:firstyear=2006&license=viewerlgpl$ - * Second Life Viewer Source Code - * Copyright (C) 2010, Linden Research, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; - * version 2.1 of the License only. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA - * $/LicenseInfo$ - */ - -#ifndef LL_LLWINDOWMACOSX_OBJC_H -#define LL_LLWINDOWMACOSX_OBJC_H - -#include -#include -#include - -//fir CGSize -#include - -typedef std::vector > segment_t; - -typedef std::vector segment_lengths; -typedef std::deque segment_standouts; - -struct attributedStringInfo { - segment_lengths seg_lengths; - segment_standouts seg_standouts; -}; - -// This will actually hold an NSCursor*, but that type is only available in objective C. -typedef void *CursorRef; -typedef void *NSWindowRef; -typedef void *GLViewRef; - - -struct NativeKeyEventData { - enum EventType { - KEYUNKNOWN, - KEYUP, - KEYDOWN, - KEYCHAR - }; - - EventType mKeyEvent = KEYUNKNOWN; - uint32_t mEventType = 0; - uint32_t mEventModifiers = 0; - uint32_t mEventKeyCode = 0; - uint32_t mEventChars = 0; - uint32_t mEventUnmodChars = 0; - bool mEventRepeat = false; -}; - -typedef const NativeKeyEventData * NSKeyEventRef; - -// These are defined in llappviewermacosx.cpp. -bool initViewer(); -void handleQuit(); -bool pumpMainLoop(); -void initMainLoop(); -void cleanupViewer(); -void handleUrl(const char* url); -void dispatchUrl(std::string url); - -/* Defined in llwindowmacosx-objc.mm: */ -int createNSApp(int argc, const char **argv); -void setupCocoa(); -bool pasteBoardAvailable(); -bool copyToPBoard(const unsigned short *str, unsigned int len); -unsigned short *copyFromPBoard(); -CursorRef createImageCursor(const char *fullpath, int hotspotX, int hotspotY); -short releaseImageCursor(CursorRef ref); -short setImageCursor(CursorRef ref); -void setArrowCursor(); -void setIBeamCursor(); -void setPointingHandCursor(); -void setCopyCursor(); -void setCrossCursor(); -void setNotAllowedCursor(); -void hideNSCursor(); -void showNSCursor(); -bool isCGCursorVisible(); -void hideNSCursorTillMove(bool hide); -void requestUserAttention(); -long showAlert(std::string title, std::string text, int type); -void setResizeMode(bool oldresize, void* glview); - -NSWindowRef createNSWindow(int x, int y, int width, int height); - -#include - -GLViewRef createOpenGLView(NSWindowRef window, unsigned int samples, bool vsync); -void glSwapBuffers(void* context); -CGLContextObj getCGLContextObj(GLViewRef view); -unsigned long getVramSize(GLViewRef view); -float getDeviceUnitSize(GLViewRef view); -CGPoint getContentViewBoundsPosition(NSWindowRef window); -CGSize getContentViewBoundsSize(NSWindowRef window); -CGSize getDeviceContentViewSize(NSWindowRef window, GLViewRef view); -void getWindowSize(NSWindowRef window, float* size); -void setWindowSize(NSWindowRef window, int width, int height); -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 convertRectToScreen(NSWindowRef window, float *coord); -void convertRectFromScreen(NSWindowRef window, float *coord); -void setWindowPos(NSWindowRef window, float* pos); -void closeWindow(NSWindowRef window); -void removeGLView(GLViewRef view); -void makeFirstResponder(NSWindowRef window, GLViewRef view); -void setupInputWindow(NSWindowRef window, 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) -bool callKeyUp(NSKeyEventRef event, unsigned short key, unsigned int mask); -bool callKeyDown(NSKeyEventRef event, unsigned short key, unsigned int mask, wchar_t character); -void callResetKeys(); -bool 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 callMouseDragged(float *pos, unsigned int mask); -void callScrollMoved(float deltaX, float deltaY); -void callMouseExit(); -void callWindowFocus(); -void callWindowUnfocus(); -void callWindowHide(); -void callWindowUnhide(); -void callWindowDidChangeScreen(); -void callDeltaUpdate(float *delta, unsigned int mask); -void callOtherMouseDown(float *pos, unsigned int mask, int button); -void callOtherMouseUp(float *pos, unsigned int mask, int button); -void callFocus(); -void callFocusLost(); -void callModifier(unsigned int mask); -void callQuitHandler(); -void commitCurrentPreedit(GLViewRef glView); - -#include -void callHandleDragEntered(std::string url); -void callHandleDragExited(std::string url); -void callHandleDragUpdated(std::string url); -void callHandleDragDropped(std::string url); - -// LLPreeditor C bindings. -std::basic_string getPreeditString(); -void getPreeditSelectionRange(int *position, int *length); -void getPreeditMarkedRange(int *position, int *length); -bool handleUnicodeCharacter(wchar_t c); -void updatePreeditor(unsigned short *str); -void setPreeditMarkedRange(int position, int length); -void resetPreedit(); -int wstring_length(const std::basic_string & wstr, const int woffset, const int utf16_length, int *unaligned); -void setMarkedText(unsigned short *text, unsigned int *selectedRange, unsigned int *replacementRange, long text_len, attributedStringInfo segments); -void getPreeditLocation(float *location, unsigned int length); -void allowDirectMarkedTextInput(bool allow, GLViewRef glView); - -NSWindowRef getMainAppWindow(); -GLViewRef getGLView(); - -unsigned int getModifiers(); - -#endif // LL_LLWINDOWMACOSX_OBJC_H +/** + * @file llwindowmacosx-objc.h + * @brief Prototypes for functions shared between llwindowmacosx.cpp + * and llwindowmacosx-objc.mm. + * + * $LicenseInfo:firstyear=2006&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2010, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA + * $/LicenseInfo$ + */ + +#ifndef LL_LLWINDOWMACOSX_OBJC_H +#define LL_LLWINDOWMACOSX_OBJC_H + +#include +#include +#include + +//fir CGSize +#include + +typedef std::vector > segment_t; + +typedef std::vector segment_lengths; +typedef std::deque segment_standouts; + +struct attributedStringInfo { + segment_lengths seg_lengths; + segment_standouts seg_standouts; +}; + +// This will actually hold an NSCursor*, but that type is only available in objective C. +typedef void *CursorRef; +typedef void *NSWindowRef; +typedef void *GLViewRef; + + +struct NativeKeyEventData { + enum EventType { + KEYUNKNOWN, + KEYUP, + KEYDOWN, + KEYCHAR + }; + + EventType mKeyEvent = KEYUNKNOWN; + uint32_t mEventType = 0; + uint32_t mEventModifiers = 0; + uint32_t mEventKeyCode = 0; + uint32_t mEventChars = 0; + uint32_t mEventUnmodChars = 0; + bool mEventRepeat = false; +}; + +typedef const NativeKeyEventData * NSKeyEventRef; + +// These are defined in llappviewermacosx.cpp. +bool initViewer(); +void handleQuit(); +bool pumpMainLoop(); +void initMainLoop(); +void cleanupViewer(); +void handleUrl(const char* url); +void dispatchUrl(std::string url); + +/* Defined in llwindowmacosx-objc.mm: */ +int createNSApp(int argc, const char **argv); +void setupCocoa(); +bool pasteBoardAvailable(); +bool copyToPBoard(const unsigned short *str, unsigned int len); +unsigned short *copyFromPBoard(); +CursorRef createImageCursor(const char *fullpath, int hotspotX, int hotspotY); +short releaseImageCursor(CursorRef ref); +short setImageCursor(CursorRef ref); +void setArrowCursor(); +void setIBeamCursor(); +void setPointingHandCursor(); +void setCopyCursor(); +void setCrossCursor(); +void setNotAllowedCursor(); +void hideNSCursor(); +void showNSCursor(); +bool isCGCursorVisible(); +void hideNSCursorTillMove(bool hide); +void requestUserAttention(); +long showAlert(std::string title, std::string text, int type); +void setResizeMode(bool oldresize, void* glview); + +NSWindowRef createNSWindow(int x, int y, int width, int height); + +#include + +GLViewRef createOpenGLView(NSWindowRef window, unsigned int samples, bool vsync); +void glSwapBuffers(void* context); +CGLContextObj getCGLContextObj(GLViewRef view); +unsigned long getVramSize(GLViewRef view); +float getDeviceUnitSize(GLViewRef view); +CGPoint getContentViewBoundsPosition(NSWindowRef window); +CGSize getContentViewBoundsSize(NSWindowRef window); +CGSize getDeviceContentViewSize(NSWindowRef window, GLViewRef view); +void getWindowSize(NSWindowRef window, float* size); +void setWindowSize(NSWindowRef window, int width, int height); +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 convertRectToScreen(NSWindowRef window, float *coord); +void convertRectFromScreen(NSWindowRef window, float *coord); +void setWindowPos(NSWindowRef window, float* pos); +void closeWindow(NSWindowRef window); +void removeGLView(GLViewRef view); +void makeFirstResponder(NSWindowRef window, GLViewRef view); +void setupInputWindow(NSWindowRef window, 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) +bool callKeyUp(NSKeyEventRef event, unsigned short key, unsigned int mask); +bool callKeyDown(NSKeyEventRef event, unsigned short key, unsigned int mask, wchar_t character); +void callResetKeys(); +bool 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 callMouseDragged(float *pos, unsigned int mask); +void callScrollMoved(float deltaX, float deltaY); +void callMouseExit(); +void callWindowFocus(); +void callWindowUnfocus(); +void callWindowHide(); +void callWindowUnhide(); +void callWindowDidChangeScreen(); +void callDeltaUpdate(float *delta, unsigned int mask); +void callOtherMouseDown(float *pos, unsigned int mask, int button); +void callOtherMouseUp(float *pos, unsigned int mask, int button); +void callFocus(); +void callFocusLost(); +void callModifier(unsigned int mask); +void callQuitHandler(); +void commitCurrentPreedit(GLViewRef glView); + +#include +void callHandleDragEntered(std::string url); +void callHandleDragExited(std::string url); +void callHandleDragUpdated(std::string url); +void callHandleDragDropped(std::string url); + +// LLPreeditor C bindings. +std::basic_string getPreeditString(); +void getPreeditSelectionRange(int *position, int *length); +void getPreeditMarkedRange(int *position, int *length); +bool handleUnicodeCharacter(wchar_t c); +void updatePreeditor(unsigned short *str); +void setPreeditMarkedRange(int position, int length); +void resetPreedit(); +int wstring_length(const std::basic_string & wstr, const int woffset, const int utf16_length, int *unaligned); +void setMarkedText(unsigned short *text, unsigned int *selectedRange, unsigned int *replacementRange, long text_len, attributedStringInfo segments); +void getPreeditLocation(float *location, unsigned int length); +void allowDirectMarkedTextInput(bool allow, GLViewRef glView); + +NSWindowRef getMainAppWindow(); +GLViewRef getGLView(); + +unsigned int getModifiers(); + +#endif // LL_LLWINDOWMACOSX_OBJC_H -- cgit v1.2.3