summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorErik Kundiman <erik@megapahit.org>2023-06-04 14:06:09 +0800
committerErik Kundiman <erik@megapahit.org>2023-07-19 12:42:28 +0800
commit71167486f2a22717c9d30161960b6a263dfc658f (patch)
tree2fa70010410231a5af966a195984b9daa17467ae
parentfe29edcff99d5e69bb4cf401870f7503089cf69c (diff)
Stubs for missing implementations that use SDL
in order to get rid of this: error: invalid new-expression of abstract class type ‘LLWindowSDL’ fullscreen, clearBg, enable_vsync, use_gl, ignore_pixel_depth, fsaa_samples); note: because the following virtual functions are pure within ‘LLWindowSDL’: class LLWindowSDL : public LLWindow ^~~~~~~~~~~ virtual void* createSharedContext() = 0; ^~~~~~~~~~~~~~~~~~~ virtual void makeContextCurrent(void* context) = 0; ^~~~~~~~~~~~~~~~~~ virtual void destroySharedContext(void* context) = 0; ^~~~~~~~~~~~~~~~~~~~ virtual void toggleVSync(bool enable_vsync) = 0; ^~~~~~~~~~~ The window has been relying on some, mostly GL context related, methods. These methods are declared abstract, so for now they're implemented using member functions that do nothing, return nothing.
-rw-r--r--indra/llwindow/llwindowsdl.cpp21
-rw-r--r--indra/llwindow/llwindowsdl.h4
2 files changed, 25 insertions, 0 deletions
diff --git a/indra/llwindow/llwindowsdl.cpp b/indra/llwindow/llwindowsdl.cpp
index 7ea87f5884..8d55e0dc79 100644
--- a/indra/llwindow/llwindowsdl.cpp
+++ b/indra/llwindow/llwindowsdl.cpp
@@ -1035,6 +1035,27 @@ void LLWindowSDL::setMinSize(U32 min_width, U32 min_height, bool enforce_immedia
#endif
}
+void *LLWindowSDL::createSharedContext()
+{
+ // *FIX: What to do with SDL?
+ return nullptr;
+}
+
+void LLWindowSDL::makeContextCurrent(void* context)
+{
+ // *FIX: What to do with SDL?
+}
+
+void LLWindowSDL::destroySharedContext(void* context)
+{
+ // *FIX: What to do with SDL?
+}
+
+void LLWindowSDL::toggleVSync(bool enable_vsync)
+{
+ // *FIX: What to do with SDL?
+}
+
BOOL LLWindowSDL::setCursorPosition(const LLCoordWindow position)
{
BOOL result = TRUE;
diff --git a/indra/llwindow/llwindowsdl.h b/indra/llwindow/llwindowsdl.h
index 7193e6f45a..57885907b4 100644
--- a/indra/llwindow/llwindowsdl.h
+++ b/indra/llwindow/llwindowsdl.h
@@ -66,6 +66,10 @@ public:
/*virtual*/ BOOL setSizeImpl(LLCoordScreen size);
/*virtual*/ BOOL setSizeImpl(LLCoordWindow size);
/*virtual*/ BOOL switchContext(BOOL fullscreen, const LLCoordScreen &size, BOOL disable_vsync, const LLCoordScreen * const posp = NULL);
+ /*virtual*/ void *createSharedContext();
+ /*virtual*/ void makeContextCurrent(void* context);
+ /*virtual*/ void destroySharedContext(void* context);
+ /*virtual*/ void toggleVSync(bool enable_vsync);
/*virtual*/ BOOL setCursorPosition(LLCoordWindow position);
/*virtual*/ BOOL getCursorPosition(LLCoordWindow *position);
/*virtual*/ void showCursor();