X-Git-Url: http://cvs.zerfleddert.de/cgi-bin/gitweb.cgi/micropolis/blobdiff_plain/6f214ac0ef5899987197c2e4c9baa0b51a04c197..refs/heads/legacy:/src/sim/w_tk.c diff --git a/src/sim/w_tk.c b/src/sim/w_tk.c index 3ae9037..686c7e8 100644 --- a/src/sim/w_tk.c +++ b/src/sim/w_tk.c @@ -114,8 +114,8 @@ int DoMapCmd(CLIENT_ARGS); int GraphViewCmd(CLIENT_ARGS); int DoGraphCmd(CLIENT_ARGS); int SpriteCmd(CLIENT_ARGS); -extern int Tk_PieMenuCmd(); -extern int Tk_IntervalCmd(); +extern int Tk_PieMenuCmd(CLIENT_ARGS); +extern int Tk_IntervalCmd(CLIENT_ARGS); int @@ -163,7 +163,7 @@ TileViewCmd(CLIENT_ARGS) PointerMotionMask, TileViewEventProc, (ClientData) view); Tcl_CreateCommand(interp, Tk_PathName(view->tkwin), - DoEditorCmd, (ClientData) view, (void (*)()) NULL); + DoEditorCmd, (ClientData) view, (void (*)(int *)) NULL); } else { Tk_SetClass(view->tkwin, "MapView"); @@ -176,7 +176,7 @@ TileViewCmd(CLIENT_ARGS) PointerMotionMask */ , TileViewEventProc, (ClientData) view); Tcl_CreateCommand(interp, Tk_PathName(view->tkwin), - DoMapCmd, (ClientData) view, (void (*)()) NULL); + DoMapCmd, (ClientData) view, (void (*)(int *)) NULL); } Tk_MakeWindowExist(view->tkwin); @@ -703,7 +703,7 @@ DoEarthQuake(void) if (earthquake_timer_set) { Tk_DeleteTimerHandler(earthquake_timer_token); } - Tk_CreateTimerHandler(earthquake_delay, (void (*)())StopEarthquake, (ClientData) 0); + Tk_CreateTimerHandler(earthquake_delay, (void (*)(int *))StopEarthquake, (ClientData) 0); earthquake_timer_set = 1; } @@ -787,13 +787,25 @@ void tk_main(void) #endif Tcl_CreateCommand(tk_mainInterp, "piemenu", Tk_PieMenuCmd, - (ClientData)MainWindow, (void (*)()) NULL); + (ClientData)MainWindow, (void (*)(int *)) NULL); Tcl_CreateCommand(tk_mainInterp, "interval", Tk_IntervalCmd, - (ClientData)MainWindow, (void (*)()) NULL); + (ClientData)MainWindow, (void (*)(int *)) NULL); sim = MakeNewSim(); - sprintf(initCmd, "source %s/micropolis.tcl", ResourceDir); + sprintf(initCmd, "%s/simcity.tcl", ResourceDir); + if (access(initCmd, R_OK) == 0) { + printf("Found %s, entering legacy mode.\n", initCmd); + LegacyMode = 1; + SugarMode = 0; + Eval("winfo-setlegacy"); + } + + if (!LegacyMode) { + sprintf(initCmd, "source %s/micropolis.tcl", ResourceDir); + } else { + sprintf(initCmd, "source %s/simcity.tcl", ResourceDir); + } filename2UNIX(initCmd); if (Eval(initCmd)) { sim_exit(1); // Just sets tkMustExit and ExitReturn @@ -810,8 +822,13 @@ void tk_main(void) { char buf[1024]; - sprintf(buf, "UIStartMicropolis {%s} {%s} {%s}", - HomeDir, ResourceDir, HostName); + if (!LegacyMode) { + sprintf(buf, "UIStartMicropolis {%s} {%s} {%s}", + HomeDir, ResourceDir, HostName); + } else { + sprintf(buf, "UIStartSimCity {%s} {%s} {} {%s}", + HomeDir, ResourceDir, HostName); + } filename2UNIX(buf); if (Eval(buf) != TCL_OK) { sim_exit(1); // Just sets tkMustExit and ExitReturn