/* This extension is not dynamically loaded, instead it's linked statically, which is why we shouldn't use the unspecific 'Jim_OnLoad' name */ int Jim_EventLoopOnLoad(Jim_Interp *interp) { Jim_EventLoop *eventLoop; Jim_InitExtension(interp); if (Jim_PackageProvide(interp, "eventloop", "1.0", JIM_ERRMSG) != JIM_OK) return JIM_ERR; eventLoop = Jim_Alloc(sizeof(*eventLoop)); eventLoop->fileEventHead = NULL; eventLoop->timeEventHead = NULL; eventLoop->timeEventNextId = 1; Jim_SetAssocData(interp, "eventloop", JimELAssocDataDeleProc, eventLoop); Jim_CreateCommand(interp, "vwait", JimELVwaitCommand, NULL, NULL); Jim_CreateCommand(interp, "after", JimELAfterCommand, NULL, NULL); /* Export events API */ Jim_RegisterApi(interp, "Jim_CreateFileHandler", Jim_CreateFileHandler); Jim_RegisterApi(interp, "Jim_DeleteFileHandler", Jim_DeleteFileHandler); Jim_RegisterApi(interp, "Jim_CreateTimeHandler", Jim_CreateTimeHandler); Jim_RegisterApi(interp, "Jim_DeleteTimeHandler", Jim_DeleteTimeHandler); Jim_RegisterApi(interp, "Jim_ProcessEvents", Jim_ProcessEvents); return JIM_OK; }
int Jim_OnLoad(Jim_Interp *interp) { Jim_InitExtension(interp); if (Jim_PackageProvide(interp, "readdir", "1.0", JIM_ERRMSG) != JIM_OK) { return JIM_ERR; } Jim_CreateCommand(interp, "readdir", Jim_ReaddirCmd, NULL, NULL); return JIM_OK; }
int Jim_AioInit(Jim_Interp *interp) #endif { #ifndef JIM_STATICEXT Jim_InitExtension(interp); #endif if (Jim_PackageProvide(interp, "aio", "1.0", JIM_ERRMSG) != JIM_OK) return JIM_ERR; Jim_CreateCommand(interp, "aio.open", JimAioOpenCommand, NULL, NULL); return JIM_OK; }
Jim_AioInit(Jim_Interp *interp) #endif { #ifndef JIM_STATICEXT Jim_InitExtension(interp); // Jim_ImportEventloopAPI(interp); // Johnicholas comments this out #endif if (Jim_PackageProvide(interp, "aio", "1.0", JIM_ERRMSG) != JIM_OK) return JIM_ERR; Jim_CreateCommand(interp, "aio.open", JimAioOpenCommand, NULL, NULL); Jim_CreateCommand(interp, "aio.socket", JimAioSockCommand, NULL, NULL); return JIM_OK; }
int Jim_OnLoad(Jim_Interp *interp) { Jim_InitExtension(interp); if (Jim_PackageProvide(interp, "sdl", "1.0", JIM_ERRMSG) != JIM_OK) return JIM_ERR; if (SDL_Init(SDL_INIT_VIDEO) < 0) { JimSdlSetError(interp); return JIM_ERR; } atexit(SDL_Quit); Jim_CreateCommand(interp, "sdl.screen", JimSdlSurfaceCommand, NULL, NULL); return JIM_OK; }
// end added int Jim_OnLoad(Jim_Interp *interp) { Jim_InitExtension(interp); if (Jim_PackageProvide(interp, "posix", "1.0", JIM_ERRMSG) != JIM_OK) return JIM_ERR; Jim_CreateCommand(interp, "os.fork", Jim_PosixForkCommand, NULL, NULL); Jim_CreateCommand(interp, "os.sleep", Jim_PosixSleepCommand, NULL, NULL); Jim_CreateCommand(interp, "os.getids", Jim_PosixGetidsCommand, NULL, NULL); Jim_CreateCommand(interp, "os.gethostname", Jim_PosixGethostnameCommand, NULL, NULL); Jim_CreateCommand(interp, "os.sethostname", Jim_PosixSethostnameCommand, NULL, NULL); Jim_CreateCommand(interp, "os.usleep", Jim_LinuxUSleepCommand, NULL, NULL); Jim_CreateCommand(interp, "os.signal", Jim_PosixSignalCommand, NULL, NULL); Jim_CreateCommand(interp, "pit", Jim_PointInTimeCommand, NULL, NULL); Jim_CreateCommand(interp, "Jpit", Jim_PointInTimeJulianCommand, NULL, NULL); return JIM_OK; }
DLLEXPORT int Jim_OnLoad(Jim_Interp *interp) { HMODULE hLib; Jim_InitExtension(interp); if (Jim_PackageProvide(interp, "win32", "1.0", JIM_ERRMSG) != JIM_OK) return JIM_ERR; #define CMD(name) \ Jim_CreateCommand(interp, "win32." #name , Win32_ ## name , NULL, NULL) CMD(ShellExecute); CMD(RegisterClass); CMD(CreateWindow); CMD(FindWindow); CMD(CloseWindow); CMD(ShowWindow); CMD(MoveWindow); CMD(UpdateWindow); CMD(DestroyWindow); CMD(GetActiveWindow); CMD(SetActiveWindow); CMD(SetForegroundWindow); CMD(GetCursorPos); CMD(SetCursorPos); CMD(GetCursor); CMD(SetCursor); CMD(LoadCursor); CMD(Beep); CMD(GetComputerName); CMD(SetComputerName); CMD(GetUserName); CMD(GetModuleFileName); CMD(GetVersion); CMD(GetTickCount); CMD(GetSystemTime); CMD(GetSystemInfo); CMD(GetModuleHandle); CMD(LoadLibrary); CMD(FreeLibrary); CMD(CreateDirectory); CMD(RemoveDirectory); #if WINVER >= 0x0500 CMD(GetCursorInfo); CMD(AnimateWindow); #endif /* Check that this DLL is available before creating the command. */ hLib = LoadLibrary(_T("psapi")); if (hLib != NULL) { Jim_CreateCommand(interp, "win32.GetPerformanceInfo", Win32_GetPerformanceInfo, hLib, Win32_ReleasePrivLib); } #if WINVER >= 0x0500 hLib = LoadLibrary(_T("user32")); if (hLib != NULL) { Jim_CreateCommand(interp, "win32.GetLastInputInfo", Win32_GetLastInputInfo, hLib, Win32_ReleasePrivLib); } #endif /* WINVER >= 0x0500 */ return JIM_OK; }