the j
This commit is contained in:
parent
00084ddb11
commit
63a4eb8a62
|
|
@ -118,7 +118,9 @@ elseif (NOT SUPPORT_GESTURES_SYSTEM)
|
|||
list(REMOVE_ITEM example_sources ${CMAKE_CURRENT_SOURCE_DIR}/core/core_basic_screen_manager.c)
|
||||
list(REMOVE_ITEM example_sources ${CMAKE_CURRENT_SOURCE_DIR}/core/core_input_gestures_web.c)
|
||||
list(REMOVE_ITEM example_sources ${CMAKE_CURRENT_SOURCE_DIR}/core/core_input_gestures.c)
|
||||
|
||||
elseif ("${PLATFORM}" STREQUAL "None" OR "${PLATFORM}" STREQUAL "Offscreen")
|
||||
# for some reason i get an error when trying to compile this one from any platform? oh well we'll just stick it here
|
||||
list(REMOVE_ITEM example_sources ${CMAKE_CURRENT_SOURCE_DIR}/others/raylib_opengl_interop.c)
|
||||
endif ()
|
||||
|
||||
# The rlgl_standalone example only targets desktop, without shared libraries.
|
||||
|
|
|
|||
|
|
@ -25,7 +25,13 @@
|
|||
const int screenWidth = 800;
|
||||
const int screenHeight = 450;
|
||||
GLFWwindow *window;
|
||||
|
||||
|
||||
|
||||
|
||||
bool CustomWindowShouldClose(void) {
|
||||
return glfwWindowShouldClose(window);
|
||||
}
|
||||
|
||||
int CustomInitPlatform(void) {
|
||||
if (!glfwInit())
|
||||
{
|
||||
|
|
@ -89,10 +95,14 @@ void CustomClosePlatform(void) {
|
|||
int main(void)
|
||||
{
|
||||
union OverridableFunctionPointer funcs;
|
||||
funcs.InitPlatform = CustomInitPlatform;
|
||||
funcs.ClosePlatform = CustomClosePlatform;
|
||||
funcs.WindowShouldClose = CustomWindowShouldClose;
|
||||
CustomInitPlatform();
|
||||
|
||||
OverrideInternalFunction("InitPlatform",&funcs);
|
||||
//OverrideInternalFunction("InitPlatform",&funcs);
|
||||
OverrideInternalFunction("ClosePlatform",&funcs);
|
||||
OverrideInternalFunction("WindowShouldClose",&funcs);
|
||||
|
||||
RenderTexture2D fb = LoadRenderTexture(80,24);
|
||||
|
||||
|
|
@ -114,6 +124,6 @@ int main(void)
|
|||
glfwPollEvents();
|
||||
}
|
||||
|
||||
CustomClosePlatform();
|
||||
//CustomClosePlatform();
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -251,7 +251,6 @@ static const KeyboardKey mapKeycode[KEYCODE_MAP_SIZE] = {
|
|||
//----------------------------------------------------------------------------------
|
||||
int InitPlatform(void); // Initialize platform (graphics, inputs and more)
|
||||
void ClosePlatform(void); // Close platform
|
||||
void OverrideInternalFunction(const char * funcName, union OverridableFunctionPointer * func);
|
||||
|
||||
static void AndroidCommandCallback(struct android_app *app, int32_t cmd); // Process Android activity lifecycle commands
|
||||
static int32_t AndroidInputCallback(struct android_app *app, AInputEvent *event); // Process Android inputs
|
||||
|
|
@ -1337,9 +1336,5 @@ static int32_t AndroidInputCallback(struct android_app *app, AInputEvent *event)
|
|||
return 0;
|
||||
}
|
||||
|
||||
// Override an internal platform function with your own (PLATFORM_OFFSCREEN and PLATFORM_NONE only)
|
||||
void OverrideInternalFunction(const char * funcName, union OverridableFunctionPointer * func); {
|
||||
TraceLog(LOG_WARNING, "OverrideInternalFunction called on unsupported platform");
|
||||
};
|
||||
|
||||
// EOF
|
||||
|
|
|
|||
|
|
@ -103,7 +103,6 @@ static PlatformData platform = { 0 }; // Platform specific data
|
|||
//----------------------------------------------------------------------------------
|
||||
int InitPlatform(void); // Initialize platform (graphics, inputs and more)
|
||||
void ClosePlatform(void); // Close platform
|
||||
void OverrideInternalFunction(const char * funcName, union OverridableFunctionPointer * func);
|
||||
|
||||
// Error callback event
|
||||
static void ErrorCallback(int error, const char *description); // GLFW3 Error Callback, runs on GLFW3 error
|
||||
|
|
@ -1899,9 +1898,5 @@ static void JoystickCallback(int jid, int event)
|
|||
}
|
||||
}
|
||||
|
||||
// Override an internal platform function with your own (PLATFORM_OFFSCREEN and PLATFORM_NONE only)
|
||||
void OverrideInternalFunction(const char * funcName, union OverridableFunctionPointer * func); {
|
||||
TraceLog(LOG_WARNING, "OverrideInternalFunction called on unsupported platform");
|
||||
};
|
||||
|
||||
// EOF
|
||||
|
|
|
|||
|
|
@ -220,7 +220,6 @@ static const unsigned short keyMappingRGFW[] = {
|
|||
//----------------------------------------------------------------------------------
|
||||
int InitPlatform(void); // Initialize platform (graphics, inputs and more)
|
||||
bool InitGraphicsDevice(void); // Initialize graphics device
|
||||
void OverrideInternalFunction(const char * funcName, union OverridableFunctionPointer * func);
|
||||
|
||||
//----------------------------------------------------------------------------------
|
||||
// Module Functions Declaration
|
||||
|
|
@ -1355,8 +1354,4 @@ static KeyboardKey ConvertScancodeToKey(u32 keycode)
|
|||
return keyMappingRGFW[keycode];
|
||||
}
|
||||
|
||||
// Override an internal platform function with your own (PLATFORM_OFFSCREEN and PLATFORM_NONE only)
|
||||
void OverrideInternalFunction(const char * funcName, union OverridableFunctionPointer * func); {
|
||||
TraceLog(LOG_WARNING, "OverrideInternalFunction called on unsupported platform");
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -225,7 +225,6 @@ static const int CursorsLUT[] = {
|
|||
//----------------------------------------------------------------------------------
|
||||
int InitPlatform(void); // Initialize platform (graphics, inputs and more)
|
||||
void ClosePlatform(void); // Close platform
|
||||
void OverrideInternalFunction(const char * funcName, union OverridableFunctionPointer * func);
|
||||
|
||||
static KeyboardKey ConvertScancodeToKey(SDL_Scancode sdlScancode); // Help convert SDL scancodes to raylib key
|
||||
|
||||
|
|
@ -1620,9 +1619,5 @@ static KeyboardKey ConvertScancodeToKey(SDL_Scancode sdlScancode)
|
|||
}
|
||||
|
||||
|
||||
// Override an internal platform function with your own (PLATFORM_OFFSCREEN and PLATFORM_NONE only)
|
||||
void OverrideInternalFunction(const char * funcName, union OverridableFunctionPointer * func); {
|
||||
TraceLog(LOG_WARNING, "OverrideInternalFunction called on unsupported platform");
|
||||
};
|
||||
|
||||
// EOF
|
||||
|
|
|
|||
|
|
@ -219,7 +219,6 @@ static const short linuxToRaylibMap[KEYMAP_SIZE] = {
|
|||
//----------------------------------------------------------------------------------
|
||||
int InitPlatform(void); // Initialize platform (graphics, inputs and more)
|
||||
void ClosePlatform(void); // Close platform
|
||||
void OverrideInternalFunction(const char * funcName, union OverridableFunctionPointer * func);
|
||||
|
||||
#if defined(SUPPORT_SSH_KEYBOARD_RPI)
|
||||
static void InitKeyboard(void); // Initialize raw keyboard system
|
||||
|
|
@ -1939,9 +1938,5 @@ static int FindNearestConnectorMode(const drmModeConnector *connector, uint widt
|
|||
return nearestIndex;
|
||||
}
|
||||
|
||||
// Override an internal platform function with your own (PLATFORM_OFFSCREEN and PLATFORM_NONE only)
|
||||
void OverrideInternalFunction(const char * funcName, union OverridableFunctionPointer * func); {
|
||||
TraceLog(LOG_WARNING, "OverrideInternalFunction called on unsupported platform");
|
||||
};
|
||||
|
||||
// EOF
|
||||
|
|
|
|||
|
|
@ -91,6 +91,16 @@ GEN_CALLBACK_BODY_VOID(OpenURL, (const char *url), (url))
|
|||
// Note that there is no responsibility here for the Raylib maintainers to keep a stable API for core functions
|
||||
void OverrideInternalFunction(const char * funcName, union OverridableFunctionPointer * func) {
|
||||
GEN_CASE(InitPlatform)
|
||||
GEN_CASE(WindowShouldClose)
|
||||
GEN_CASE(GetMonitorCount)
|
||||
GEN_CASE(GetCurrentMonitor)
|
||||
GEN_CASE(ShowCursor)
|
||||
GEN_CASE(HideCursor)
|
||||
GEN_CASE(SetWindowState)
|
||||
GEN_CASE(ClearWindowState)
|
||||
GEN_CASE(SetWindowMinSize)
|
||||
GEN_CASE(SetWindowMaxSize)
|
||||
GEN_CASE(SetWindowSize)
|
||||
GEN_CASE(ClosePlatform)
|
||||
GEN_CASE(ToggleFullscreen)
|
||||
GEN_CASE(ToggleBorderlessWindowed)
|
||||
|
|
@ -139,7 +149,6 @@ CoreData * GetCore() {
|
|||
int InitPlatform(void) {
|
||||
CHECK_AND_CALL(InitPlatform, ());
|
||||
CORE.Window.ready = true;
|
||||
TRACELOG(LOG_WARNING, "InitPlatform was called but not overriden by the user");
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -144,6 +144,16 @@ GEN_CALLBACK_HEAD_VOID(SetWindowSize, (int width, int height), (width,height))
|
|||
// The fields are only accessible when compiling with PLATFORM_NONE or PLATFORM_OFFSCREEN
|
||||
union OverridableFunctionPointer {
|
||||
GEN_FIELD(InitPlatform)
|
||||
GEN_FIELD(WindowShouldClose)
|
||||
GEN_FIELD(GetMonitorCount)
|
||||
GEN_FIELD(GetCurrentMonitor)
|
||||
GEN_FIELD(ShowCursor)
|
||||
GEN_FIELD(HideCursor)
|
||||
GEN_FIELD(SetWindowState)
|
||||
GEN_FIELD(ClearWindowState)
|
||||
GEN_FIELD(SetWindowMinSize)
|
||||
GEN_FIELD(SetWindowMaxSize)
|
||||
GEN_FIELD(SetWindowSize)
|
||||
GEN_FIELD(ClosePlatform)
|
||||
GEN_FIELD(ToggleFullscreen)
|
||||
GEN_FIELD(ToggleBorderlessWindowed)
|
||||
|
|
|
|||
|
|
@ -73,7 +73,6 @@ static PlatformData platform = { 0 }; // Platform specific data
|
|||
//----------------------------------------------------------------------------------
|
||||
int InitPlatform(void); // Initialize platform (graphics, inputs and more)
|
||||
bool InitGraphicsDevice(void); // Initialize graphics device
|
||||
void OverrideInternalFunction(const char * funcName, union OverridableFunctionPointer * func);
|
||||
|
||||
//----------------------------------------------------------------------------------
|
||||
// Module Functions Declaration
|
||||
|
|
@ -596,9 +595,5 @@ void ClosePlatform(void)
|
|||
// TODO: De-initialize graphics, inputs and more
|
||||
}
|
||||
|
||||
// Override an internal platform function with your own (PLATFORM_OFFSCREEN and PLATFORM_NONE only)
|
||||
void OverrideInternalFunction(const char * funcName, union OverridableFunctionPointer * func); {
|
||||
TraceLog(LOG_WARNING, "OverrideInternalFunction called on unsupported platform");
|
||||
};
|
||||
|
||||
// EOF
|
||||
|
|
|
|||
|
|
@ -107,7 +107,6 @@ Vector2 lockedMousePos = { 0 };
|
|||
//----------------------------------------------------------------------------------
|
||||
int InitPlatform(void); // Initialize platform (graphics, inputs and more)
|
||||
void ClosePlatform(void); // Close platform
|
||||
void OverrideInternalFunction(const char * funcName, union OverridableFunctionPointer * func);
|
||||
|
||||
// Error callback event
|
||||
static void ErrorCallback(int error, const char *description); // GLFW3 Error Callback, runs on GLFW3 error
|
||||
|
|
@ -1730,9 +1729,5 @@ static EM_BOOL EmscriptenTouchCallback(int eventType, const EmscriptenTouchEvent
|
|||
return 1; // The event was consumed by the callback handler
|
||||
}
|
||||
|
||||
// Override an internal platform function with your own (PLATFORM_OFFSCREEN and PLATFORM_NONE only)
|
||||
void OverrideInternalFunction(const char * funcName, union OverridableFunctionPointer * func); {
|
||||
TraceLog(LOG_WARNING, "OverrideInternalFunction called on unsupported platform");
|
||||
};
|
||||
|
||||
// EOF
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user