aboutsummaryrefslogtreecommitdiff
path: root/saga/saga.cpp
diff options
context:
space:
mode:
authorEugene Sandulenko2004-07-31 23:33:14 +0000
committerEugene Sandulenko2004-07-31 23:33:14 +0000
commit46a1c45d70bbfb6654a9c13e26949a4543d17e80 (patch)
tree69cc31d24d4fce500a388ce2ba992a4c51365ce7 /saga/saga.cpp
parentf0d6fd8c5ac3bf144eef93f146e9c056321e11db (diff)
downloadscummvm-rg350-46a1c45d70bbfb6654a9c13e26949a4543d17e80.tar.gz
scummvm-rg350-46a1c45d70bbfb6654a9c13e26949a4543d17e80.tar.bz2
scummvm-rg350-46a1c45d70bbfb6654a9c13e26949a4543d17e80.zip
Extended CVAR_RegisterFunc with callback object parameter.
Got rid of static structure in animation.cpp svn-id: r14397
Diffstat (limited to 'saga/saga.cpp')
-rw-r--r--saga/saga.cpp14
1 files changed, 7 insertions, 7 deletions
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);