diff options
author | antirez <antirez> | 2005-02-28 12:29:13 +0000 |
---|---|---|
committer | antirez <antirez> | 2005-02-28 12:29:13 +0000 |
commit | 0e96cfdad61e208cd00eb555c2ecd6e7ae34a35e (patch) | |
tree | b7a95c034c86e65614441e8c49b773c3fddfb9e6 | |
parent | ad1c5c7318baba1ba395c3ce23413cbd6f607c1e (diff) | |
download | jimtcl-0e96cfdad61e208cd00eb555c2ecd6e7ae34a35e.zip jimtcl-0e96cfdad61e208cd00eb555c2ecd6e7ae34a35e.tar.gz jimtcl-0e96cfdad61e208cd00eb555c2ecd6e7ae34a35e.tar.bz2 |
win32.CloseWindow added, ctype.h included in jim-win32.c
-rw-r--r-- | jim-win32.c | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/jim-win32.c b/jim-win32.c index c62ced6..ee55c09 100644 --- a/jim-win32.c +++ b/jim-win32.c @@ -63,7 +63,7 @@ Win32ErrorObj(Jim_Interp *interp, const char * szPrefix, DWORD dwError) return msgObj; } -/* shellexec verb file args */ +/* win32.ShellExecute verb file args */ static int Win32_ShellExecute(Jim_Interp *interp, int objc, Jim_Obj **objv) { @@ -87,7 +87,7 @@ Win32_ShellExecute(Jim_Interp *interp, int objc, Jim_Obj **objv) } -/* win32.findwindow title ?class? */ +/* win32.FindWindow title ?class? */ static int Win32_FindWindow(Jim_Interp *interp, int objc, Jim_Obj **objv) { @@ -113,6 +113,25 @@ Win32_FindWindow(Jim_Interp *interp, int objc, Jim_Obj **objv) return r; } +/* win32.CloseWindow windowHandle */ +static int +Win32_CloseWindow(Jim_Interp *interp, int objc, Jim_Obj **objv) +{ + long hwnd; + + if (objc != 2) { + Jim_WrongNumArgs(interp, 1, objv, "?windowHandle?"); + return JIM_ERR; + } + if (Jim_GetLong(interp, objv[1], &hwnd) != JIM_OK) + return JIM_ERR; + if (!CloseWindow((HWND)hwnd)) { + Jim_SetResult(interp, + Win32ErrorObj(interp, "closewindow", GetLastError()));^M + return JIM_ERR; + } + return JIM_OK; +} /* ---------------------------------------------------------------------- */ int @@ -121,5 +140,6 @@ Jim_OnLoad(Jim_Interp *interp) Jim_InitExtension(interp, "1.0"); Jim_CreateCommand(interp, "win32.ShellExecute", Win32_ShellExecute, NULL); Jim_CreateCommand(interp, "win32.FindWindow", Win32_FindWindow, NULL); + Jim_CreateCommand(interp, "win32.CloseWindow", Win32_CloseWindow, NULL); return JIM_OK; } |