From 46a1c45d70bbfb6654a9c13e26949a4543d17e80 Mon Sep 17 00:00:00 2001 From: Eugene Sandulenko Date: Sat, 31 Jul 2004 23:33:14 +0000 Subject: Extended CVAR_RegisterFunc with callback object parameter. Got rid of static structure in animation.cpp svn-id: r14397 --- saga/saga.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'saga/saga.cpp') diff --git a/saga/saga.cpp b/saga/saga.cpp index 7433e294a7..5afe5d3b7a 100644 --- a/saga/saga.cpp +++ b/saga/saga.cpp @@ -82,8 +82,8 @@ struct R_MAIN_DATA { int music_enabled; }; -static void CF_quitfunc(int argc, char *argv[]); -static void CF_testfunc(int argc, char *argv[]); +static void CF_quitfunc(int argc, char *argv[], void *refCon); +static void CF_testfunc(int argc, char *argv[], void *refCon); static R_MAIN_DATA MainData; @@ -128,13 +128,13 @@ void SagaEngine::go() { MainData.sound_enabled = 1; MainData.music_enabled = 1; - CVAR_RegisterFunc(CF_testfunc, "testfunc", "foo [ optional foo ]", R_CVAR_NONE, 0, -1); + CVAR_RegisterFunc(CF_testfunc, "testfunc", "foo [ optional foo ]", R_CVAR_NONE, 0, -1, this); CVAR_Register_I(&MainData.sound_enabled, "sound", NULL, R_CVAR_CFG, 0, 1); CVAR_Register_I(&MainData.music_enabled, "music", NULL, R_CVAR_CFG, 0, 1); - CVAR_RegisterFunc(CF_quitfunc, "quit", NULL, R_CVAR_NONE, 0, 0); + CVAR_RegisterFunc(CF_quitfunc, "quit", NULL, R_CVAR_NONE, 0, 0, this); // Process config file // FIXME @@ -254,12 +254,12 @@ void SagaEngine::shutdown() { _system->quit(); } -static void CF_quitfunc(int argc, char *argv[]) { - _vm->shutdown(); +static void CF_quitfunc(int argc, char *argv[], void *refCon) { + ((SagaEngine *)refCon)->shutdown(); exit(0); } -static void CF_testfunc(int argc, char *argv[]) { +static void CF_testfunc(int argc, char *argv[], void *refCon) { int i; CON_Print("Test function invoked: Got %d arguments.", argc); -- cgit v1.2.3