diff options
64 files changed, 479 insertions, 456 deletions
diff --git a/.github/workflows/linux-build.yml b/.github/workflows/linux-build.yml index ee5d2e7..6294bb9 100644 --- a/.github/workflows/linux-build.yml +++ b/.github/workflows/linux-build.yml @@ -39,7 +39,7 @@ jobs: uses: actions/checkout@v4 with: repository: tcltk/tcl - ref: main + ref: tip-626 path: tcl - name: Setup Environment (compiler=${{ matrix.compiler }}) run: | @@ -143,7 +143,7 @@ jobs: uses: actions/checkout@v4 with: repository: tcltk/tcl - ref: main + ref: tip-626 path: tcl - name: Setup Environment (compiler=${{ matrix.compiler }}) run: | diff --git a/.github/workflows/linux-with-tcl8-build.yml b/.github/workflows/linux-with-tcl8-build.yml index 557b0e9..606b7a6 100644 --- a/.github/workflows/linux-with-tcl8-build.yml +++ b/.github/workflows/linux-with-tcl8-build.yml @@ -175,4 +175,3 @@ jobs: echo "::error::Failure during Test" exit 1 } - timeout-minutes: 15 diff --git a/.github/workflows/linux-with-tcl91-build.yml b/.github/workflows/linux-with-tcl9-build.yml index 4672b54..7a31a0e 100644 --- a/.github/workflows/linux-with-tcl91-build.yml +++ b/.github/workflows/linux-with-tcl9-build.yml @@ -1,4 +1,4 @@ -name: Linux (with Tcl 9.1) +name: Linux (with Tcl 9.0) on: push: branches: @@ -39,7 +39,7 @@ jobs: uses: actions/checkout@v4 with: repository: tcltk/tcl - ref: tip-626 + ref: main path: tcl - name: Setup Environment (compiler=${{ matrix.compiler }}) run: | @@ -124,7 +124,7 @@ jobs: uses: actions/checkout@v4 with: repository: tcltk/tcl - ref: tip-626 + ref: main path: tcl - name: Setup Environment (compiler=${{ matrix.compiler }}) run: | @@ -175,4 +175,3 @@ jobs: echo "::error::Failure during Test" exit 1 } - timeout-minutes: 15 diff --git a/.github/workflows/mac-build.yml b/.github/workflows/mac-build.yml index 2e14ab6..aba54a3 100644 --- a/.github/workflows/mac-build.yml +++ b/.github/workflows/mac-build.yml @@ -23,11 +23,11 @@ jobs: uses: actions/checkout@v4 with: path: tk - - name: Check out Tcl 9.0 + - name: Check out Tcl 8.7 uses: actions/checkout@v4 with: repository: tcltk/tcl - ref: main + ref: tip-626 path: tcl - name: Prepare checked out repositories run: | @@ -75,11 +75,11 @@ jobs: uses: actions/checkout@v4 with: path: tk - - name: Check out Tcl 9.0 + - name: Check out Tcl 8.7 uses: actions/checkout@v4 with: repository: tcltk/tcl - ref: main + ref: tip-626 path: tcl - name: Prepare checked out repositories env: diff --git a/.github/workflows/onefiledist.yml b/.github/workflows/onefiledist.yml index 680fbdf..ad32849 100644 --- a/.github/workflows/onefiledist.yml +++ b/.github/workflows/onefiledist.yml @@ -24,11 +24,11 @@ jobs: uses: actions/checkout@v4 with: path: tk - - name: Checkout Tcl 9.0 + - name: Checkout Tcl 9.1 uses: actions/checkout@v4 with: repository: tcltk/tcl - ref: main + ref: tip-626 path: tcl - name: Setup Environment run: | @@ -58,7 +58,7 @@ jobs: # TODO: need the Tk version separately for distro naming below - name: Package run: | - cp bin/wish9.0 ${BUILD_NAME} + cp bin/wish9.1 ${BUILD_NAME} chmod +x ${BUILD_NAME} tar -cf ${BUILD_NAME}.tar ${BUILD_NAME} working-directory: ${{ env.INST_DIR }} @@ -88,11 +88,11 @@ jobs: uses: actions/checkout@v4 with: path: tk - - name: Checkout Tcl 9.0 + - name: Checkout Tcl 9.1 uses: actions/checkout@v4 with: repository: tcltk/tcl - ref: main + ref: tip-626 path: tcl - name: Checkout create-dmg uses: actions/checkout@v4 @@ -176,11 +176,11 @@ jobs: uses: actions/checkout@v4 with: path: tk - - name: Checkout Tcl 9.0 + - name: Checkout Tcl 9.1 uses: actions/checkout@v4 with: repository: tcltk/tcl - ref: main + ref: tip-626 path: tcl - name: Setup Environment run: | diff --git a/.github/workflows/win-build.yml b/.github/workflows/win-build.yml index 8e90256..8ff2444 100644 --- a/.github/workflows/win-build.yml +++ b/.github/workflows/win-build.yml @@ -30,11 +30,11 @@ jobs: uses: actions/checkout@v4 with: path: tk - - name: Checkout Tcl 9.0 + - name: Checkout Tcl 9.1 uses: actions/checkout@v4 with: repository: tcltk/tcl - ref: main + ref: tip-626 path: tcl - name: Init MSVC uses: ilammy/msvc-dev-cmd@v1 @@ -120,11 +120,11 @@ jobs: install: git mingw-w64-x86_64-toolchain make zip - name: Checkout Tk uses: actions/checkout@v4 - - name: Checkout Tcl 9.0 + - name: Checkout Tcl 9.1 uses: actions/checkout@v4 with: repository: tcltk/tcl - ref: main + ref: tip-626 path: tcl - name: Prepare run: | diff --git a/generic/tkBind.c b/generic/tkBind.c index 555437b..7e1f3bd 100644 --- a/generic/tkBind.c +++ b/generic/tkBind.c @@ -3357,10 +3357,11 @@ int Tk_EventObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { - int index, i; + int index; + Tcl_Size i; char *name; const char *event; Tk_Window tkwin; diff --git a/generic/tkButton.c b/generic/tkButton.c index c27bf4f..a401158 100644 --- a/generic/tkButton.c +++ b/generic/tkButton.c @@ -533,7 +533,7 @@ static char * ButtonTextVarProc(void *clientData, static char * ButtonVarProc(void *clientData, Tcl_Interp *interp, const char *name1, const char *name2, int flags); -static Tcl_ObjCmdProc ButtonWidgetObjCmd; +static Tcl_ObjCmdProc2 ButtonWidgetObjCmd; static int ConfigureButton(Tcl_Interp *interp, TkButton *butPtr, Tcl_Size objc, Tcl_Obj *const objv[]); static void DestroyButton(TkButton *butPtr); @@ -561,7 +561,7 @@ int Tk_ButtonObjCmd( void *clientData, /* Either NULL or pointer to option table. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument values. */ { return ButtonCreate(clientData, interp, objc, objv, TYPE_BUTTON); @@ -571,7 +571,7 @@ int Tk_CheckbuttonObjCmd( void *clientData, /* Either NULL or pointer to option table. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument values. */ { return ButtonCreate(clientData, interp, objc, objv, TYPE_CHECK_BUTTON); @@ -581,7 +581,7 @@ int Tk_LabelObjCmd( void *clientData, /* Either NULL or pointer to option table. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument values. */ { return ButtonCreate(clientData, interp, objc, objv, TYPE_LABEL); @@ -591,7 +591,7 @@ int Tk_RadiobuttonObjCmd( void *clientData, /* Either NULL or pointer to option table. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument values. */ { return ButtonCreate(clientData, interp, objc, objv, TYPE_RADIO_BUTTON); @@ -670,7 +670,7 @@ ButtonCreate( butPtr->tkwin = tkwin; butPtr->display = Tk_Display(tkwin); butPtr->interp = interp; - butPtr->widgetCmd = Tcl_CreateObjCommand(interp, Tk_PathName(tkwin), + butPtr->widgetCmd = Tcl_CreateObjCommand2(interp, Tk_PathName(tkwin), ButtonWidgetObjCmd, butPtr, ButtonCmdDeletedProc); butPtr->type = type; butPtr->optionTable = optionTable; @@ -767,7 +767,7 @@ static int ButtonWidgetObjCmd( void *clientData, /* Information about button widget. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument values. */ { TkButton *butPtr = (TkButton *)clientData; diff --git a/generic/tkCanvLine.c b/generic/tkCanvLine.c index 7c01d9f..0b04353 100644 --- a/generic/tkCanvLine.c +++ b/generic/tkCanvLine.c @@ -421,7 +421,7 @@ LineCoords( linePtr->numPoints = numPoints; } coordPtr = linePtr->coordPtr; - for (i = 0; i < objc ; i++) { + for (i = 0; i < (Tcl_Size)objc ; i++) { if (Tk_CanvasGetCoordFromObj(interp, canvas, objv[i], coordPtr++) != TCL_OK) { return TCL_ERROR; @@ -724,7 +724,7 @@ ComputeLineBbox( coordPtr = linePtr->firstArrowPtr; } } - if (tsoffset->flags > (linePtr->numPoints * 2)) { + if (tsoffset->flags > (int)(linePtr->numPoints * 2)) { coordPtr = linePtr->coordPtr + (linePtr->numPoints * 2); if ((linePtr->arrow == ARROWS_LAST) || (linePtr->arrow == ARROWS_BOTH)) { diff --git a/generic/tkCanvas.c b/generic/tkCanvas.c index 05f549e..3cb66fe 100644 --- a/generic/tkCanvas.c +++ b/generic/tkCanvas.c @@ -237,7 +237,7 @@ static void CanvasSetOrigin(TkCanvas *canvasPtr, int xOrigin, int yOrigin); static void CanvasUpdateScrollbars(TkCanvas *canvasPtr); static int CanvasWidgetCmd(void *clientData, - Tcl_Interp *interp, int objc, + Tcl_Interp *interp, Tcl_Size objc, Tcl_Obj *const *objv); static void CanvasWorldChanged(void *instanceData); static int ConfigureCanvas(Tcl_Interp *interp, @@ -642,7 +642,7 @@ int Tk_CanvasObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tk_Window tkwin = (Tk_Window)clientData; @@ -673,7 +673,7 @@ Tk_CanvasObjCmd( canvasPtr->tkwin = newWin; canvasPtr->display = Tk_Display(newWin); canvasPtr->interp = interp; - canvasPtr->widgetCmd = Tcl_CreateObjCommand(interp, + canvasPtr->widgetCmd = Tcl_CreateObjCommand2(interp, Tk_PathName(canvasPtr->tkwin), CanvasWidgetCmd, canvasPtr, CanvasCmdDeletedProc); canvasPtr->firstItemPtr = NULL; @@ -793,7 +793,7 @@ static int CanvasWidgetCmd( void *clientData, /* Information about canvas widget. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { TkCanvas *canvasPtr = (TkCanvas *)clientData; @@ -1970,7 +1970,7 @@ CanvasWidgetCmd( goto done; } if (canvasPtr->textInfo.selItemPtr == itemPtr) { - if (index + 1 <= ((canvasPtr->textInfo.selectFirst + if ((Tcl_Size)index + 1 <= ((canvasPtr->textInfo.selectFirst + canvasPtr->textInfo.selectLast)/2)) { canvasPtr->textInfo.selectAnchor = canvasPtr->textInfo.selectLast + 1; diff --git a/generic/tkClipboard.c b/generic/tkClipboard.c index 3bbfe12..a336028 100644 --- a/generic/tkClipboard.c +++ b/generic/tkClipboard.c @@ -420,7 +420,7 @@ int Tk_ClipboardObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument strings. */ { Tk_Window tkwin = (Tk_Window)clientData; @@ -428,7 +428,8 @@ Tk_ClipboardObjCmd( Atom selection; static const char *const optionStrings[] = { "append", "clear", "get", NULL }; enum options { CLIPBOARD_APPEND, CLIPBOARD_CLEAR, CLIPBOARD_GET }; - int index, i; + int index; + Tcl_Size i; if (objc < 2) { Tcl_WrongNumArgs(interp, 1, objv, "option ?arg ...?"); diff --git a/generic/tkCmds.c b/generic/tkCmds.c index d9de4c2..d8532f7 100644 --- a/generic/tkCmds.c +++ b/generic/tkCmds.c @@ -92,7 +92,7 @@ int Tk_BellObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { static const char *const bellOptions[] = { @@ -161,7 +161,7 @@ int Tk_BindObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tk_Window tkwin = (Tk_Window)clientData; @@ -345,7 +345,7 @@ int Tk_BindtagsObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tk_Window tkwin = (Tk_Window)clientData; @@ -485,7 +485,7 @@ int Tk_DestroyObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tk_Window window; @@ -532,7 +532,7 @@ int Tk_LowerObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tk_Window mainwin = (Tk_Window)clientData; @@ -591,7 +591,7 @@ int Tk_RaiseObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tk_Window mainwin = (Tk_Window)clientData; @@ -1013,7 +1013,7 @@ int Tk_TkwaitObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tk_Window tkwin = (Tk_Window)clientData; @@ -1200,7 +1200,7 @@ int Tk_UpdateObjCmd( TCL_UNUSED(void *), /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { static const char *const updateOptions[] = {"idletasks", NULL}; @@ -1298,7 +1298,7 @@ int Tk_WinfoObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { int index, x, y, width, height, useX, useY, c_class; @@ -1586,7 +1586,7 @@ Tk_WinfoObjCmd( case WIN_ATOM: skip = TkGetDisplayOf(interp, objc - 2, objv + 2, &tkwin); - if (skip < 0) { + if (skip == TCL_INDEX_NONE) { return TCL_ERROR; } if (objc != 3 + skip) { @@ -1603,7 +1603,7 @@ Tk_WinfoObjCmd( Tcl_WideInt id; skip = TkGetDisplayOf(interp, objc - 2, objv + 2, &tkwin); - if (skip < 0) { + if (skip == TCL_INDEX_NONE) { return TCL_ERROR; } if (objc != 3 + skip) { @@ -1627,7 +1627,7 @@ Tk_WinfoObjCmd( } case WIN_CONTAINING: skip = TkGetDisplayOf(interp, objc - 2, objv + 2, &tkwin); - if (skip < 0) { + if (skip == TCL_INDEX_NONE) { return TCL_ERROR; } if (objc != 4 + skip) { @@ -1651,7 +1651,7 @@ Tk_WinfoObjCmd( break; case WIN_INTERPS: skip = TkGetDisplayOf(interp, objc - 2, objv + 2, &tkwin); - if (skip < 0) { + if (skip == TCL_INDEX_NONE) { return TCL_ERROR; } if (objc != 2 + skip) { @@ -1663,7 +1663,7 @@ Tk_WinfoObjCmd( Window id; skip = TkGetDisplayOf(interp, objc - 2, objv + 2, &tkwin); - if (skip < 0) { + if (skip == TCL_INDEX_NONE) { return TCL_ERROR; } if (objc != 3 + skip) { @@ -1932,7 +1932,7 @@ int TkDeadAppObjCmd( TCL_UNUSED(void *), Tcl_Interp *interp, /* Current interpreter. */ - TCL_UNUSED(int), /* Number of arguments. */ + TCL_UNUSED(Tcl_Size), /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument strings. */ { Tcl_SetObjResult(interp, Tcl_ObjPrintf( diff --git a/generic/tkConsole.c b/generic/tkConsole.c index ec0da18..4b36501 100644 --- a/generic/tkConsole.c +++ b/generic/tkConsole.c @@ -51,13 +51,13 @@ static int ConsoleHandle(void *instanceData, int direction, void **handlePtr); static int ConsoleInput(void *instanceData, char *buf, int toRead, int *errorCode); -static Tcl_ObjCmdProc ConsoleObjCmd; +static Tcl_ObjCmdProc2 ConsoleObjCmd; static int ConsoleOutput(void *instanceData, const char *buf, int toWrite, int *errorCode); static void ConsoleWatch(void *instanceData, int mask); static void DeleteConsoleInterp(void *clientData); static void InterpDeleteProc(void *clientData, Tcl_Interp *interp); -static Tcl_ObjCmdProc InterpreterObjCmd; +static Tcl_ObjCmdProc2 InterpreterObjCmd; /* * This structure describes the channel type structure for file based IO: @@ -421,7 +421,7 @@ Tk_CreateConsoleWindow( * Add console commands to the interp */ - token = Tcl_CreateObjCommand(interp, "console", ConsoleObjCmd, info, + token = Tcl_CreateObjCommand2(interp, "console", ConsoleObjCmd, info, ConsoleDeleteProc); info->refCount++; @@ -430,7 +430,7 @@ Tk_CreateConsoleWindow( * in the consoleInterp. The ref held by the consoleInterp delete * handler takes care of us. */ - Tcl_CreateObjCommand(consoleInterp, "consoleinterp", InterpreterObjCmd, + Tcl_CreateObjCommand2(consoleInterp, "consoleinterp", InterpreterObjCmd, info, NULL); mainWindow = Tk_MainWindow(interp); @@ -692,7 +692,7 @@ static int ConsoleObjCmd( void *clientData, /* Access to the console interp */ Tcl_Interp *interp, /* Current interpreter */ - int objc, /* Number of arguments */ + Tcl_Size objc, /* Number of arguments */ Tcl_Obj *const objv[]) /* Argument objects */ { int index, result; @@ -784,7 +784,7 @@ static int InterpreterObjCmd( void *clientData, /* */ Tcl_Interp *interp, /* Current interpreter */ - int objc, /* Number of arguments */ + Tcl_Size objc, /* Number of arguments */ Tcl_Obj *const objv[]) /* Argument objects */ { int index, result = TCL_OK; diff --git a/generic/tkEntry.c b/generic/tkEntry.c index 9be8fc5..120a524 100644 --- a/generic/tkEntry.c +++ b/generic/tkEntry.c @@ -434,7 +434,7 @@ static int EntryValueChanged(Entry *entryPtr, const char *newValue); static void EntryVisibleRange(Entry *entryPtr, double *firstPtr, double *lastPtr); -static Tcl_ObjCmdProc EntryWidgetObjCmd; +static Tcl_ObjCmdProc2 EntryWidgetObjCmd; static void EntryWorldChanged(void *instanceData); static int GetEntryIndex(Tcl_Interp *interp, Entry *entryPtr, Tcl_Obj *indexObj, Tcl_Size *indexPtr); @@ -444,7 +444,7 @@ static int InsertChars(Entry *entryPtr, Tcl_Size index, const char *string); * These forward declarations are the spinbox specific ones: */ -static Tcl_ObjCmdProc SpinboxWidgetObjCmd; +static Tcl_ObjCmdProc2 SpinboxWidgetObjCmd; static int GetSpinboxElement(Spinbox *sbPtr, int x, int y); static int SpinboxInvoke(Tcl_Interp *interp, Spinbox *sbPtr, int element); @@ -483,7 +483,7 @@ int Tk_EntryObjCmd( TCL_UNUSED(void *), Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Entry *entryPtr; @@ -522,7 +522,7 @@ Tk_EntryObjCmd( entryPtr->tkwin = tkwin; entryPtr->display = Tk_Display(tkwin); entryPtr->interp = interp; - entryPtr->widgetCmd = Tcl_CreateObjCommand(interp, + entryPtr->widgetCmd = Tcl_CreateObjCommand2(interp, Tk_PathName(entryPtr->tkwin), EntryWidgetObjCmd, entryPtr, EntryCmdDeletedProc); entryPtr->optionTable = optionTable; @@ -596,7 +596,7 @@ static int EntryWidgetObjCmd( void *clientData, /* Information about entry widget. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Entry *entryPtr = (Entry *)clientData; @@ -3734,7 +3734,7 @@ int Tk_SpinboxObjCmd( TCL_UNUSED(void *), Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Entry *entryPtr; @@ -3775,7 +3775,7 @@ Tk_SpinboxObjCmd( entryPtr->tkwin = tkwin; entryPtr->display = Tk_Display(tkwin); entryPtr->interp = interp; - entryPtr->widgetCmd = Tcl_CreateObjCommand(interp, + entryPtr->widgetCmd = Tcl_CreateObjCommand2(interp, Tk_PathName(entryPtr->tkwin), SpinboxWidgetObjCmd, sbPtr, EntryCmdDeletedProc); entryPtr->optionTable = optionTable; @@ -3867,7 +3867,7 @@ static int SpinboxWidgetObjCmd( void *clientData, /* Information about spinbox widget. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Entry *entryPtr = (Entry *)clientData; diff --git a/generic/tkFocus.c b/generic/tkFocus.c index 9ea7321..b27b3af 100644 --- a/generic/tkFocus.c +++ b/generic/tkFocus.c @@ -107,7 +107,7 @@ int Tk_FocusObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { static const char *const focusOptions[] = { diff --git a/generic/tkFont.c b/generic/tkFont.c index 35936c5..ab080e1 100644 --- a/generic/tkFont.c +++ b/generic/tkFont.c @@ -479,7 +479,7 @@ int Tk_FontObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { int index; @@ -506,7 +506,8 @@ Tk_FontObjCmd( switch ((enum options) index) { case FONT_ACTUAL: { - int skip, result, n; + int result; + Tcl_Size skip, n; const char *s; Tk_Font tkfont; Tcl_Obj *optPtr, *charPtr, *resultPtr; @@ -520,7 +521,7 @@ Tk_FontObjCmd( */ skip = TkGetDisplayOf(interp, objc - 3, objv + 3, &tkwin); - if (skip < 0) { + if (skip == TCL_INDEX_NONE) { return TCL_ERROR; } @@ -691,7 +692,8 @@ Tk_FontObjCmd( break; } case FONT_DELETE: { - int i, result = TCL_OK; + Tcl_Size i; + int result = TCL_OK; const char *string; /* @@ -710,9 +712,9 @@ Tk_FontObjCmd( return result; } case FONT_FAMILIES: { - int skip = TkGetDisplayOf(interp, objc - 2, objv + 2, &tkwin); + Tcl_Size skip = TkGetDisplayOf(interp, objc - 2, objv + 2, &tkwin); - if (skip < 0) { + if (skip == TCL_INDEX_NONE) { return TCL_ERROR; } if (objc != 2 + skip) { @@ -726,11 +728,11 @@ Tk_FontObjCmd( const char *string; Tk_Font tkfont; Tcl_Size length = 0; - int skip = 0; + Tcl_Size skip = 0; if (objc > 4) { skip = TkGetDisplayOf(interp, objc - 3, objv + 3, &tkwin); - if (skip < 0) { + if (skip == TCL_INDEX_NONE) { return TCL_ERROR; } } @@ -751,14 +753,15 @@ Tk_FontObjCmd( } case FONT_METRICS: { Tk_Font tkfont; - int skip, i; + Tcl_Size skip; + int i; const TkFontMetrics *fmPtr; static const char *const switches[] = { "-ascent", "-descent", "-fixed", "-linespace", NULL }; skip = TkGetDisplayOf(interp, objc - 3, objv + 3, &tkwin); - if (skip < 0) { + if (skip == TCL_INDEX_NONE) { return TCL_ERROR; } if ((objc < 3) || (objc > 4 + skip)) { diff --git a/generic/tkFrame.c b/generic/tkFrame.c index 01c7075..27dab9d 100644 --- a/generic/tkFrame.c +++ b/generic/tkFrame.c @@ -339,7 +339,7 @@ static void FrameRequestProc(void *clientData, Tk_Window tkwin); static void FrameStructureProc(void *clientData, XEvent *eventPtr); -static Tcl_ObjCmdProc FrameWidgetObjCmd; +static Tcl_ObjCmdProc2 FrameWidgetObjCmd; static void FrameWorldChanged(void *instanceData); static void MapFrame(void *clientData); @@ -389,7 +389,7 @@ int Tk_FrameObjCmd( void *clientData, /* Either NULL or pointer to option table. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { return TkCreateFrame(clientData, interp, objc, objv, TYPE_FRAME, NULL); @@ -399,7 +399,7 @@ int Tk_ToplevelObjCmd( void *clientData, /* Either NULL or pointer to option table. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { return TkCreateFrame(clientData, interp, objc, objv, TYPE_TOPLEVEL, NULL); @@ -409,7 +409,7 @@ int Tk_LabelframeObjCmd( void *clientData, /* Either NULL or pointer to option table. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { return TkCreateFrame(clientData, interp, objc, objv, TYPE_LABELFRAME, NULL); @@ -621,7 +621,7 @@ TkCreateFrame( framePtr->tkwin = newWin; framePtr->display = Tk_Display(newWin); framePtr->interp = interp; - framePtr->widgetCmd = Tcl_CreateObjCommand(interp, Tk_PathName(newWin), + framePtr->widgetCmd = Tcl_CreateObjCommand2(interp, Tk_PathName(newWin), FrameWidgetObjCmd, framePtr, FrameCmdDeletedProc); framePtr->optionTable = optionTable; framePtr->type = type; @@ -697,7 +697,7 @@ static int FrameWidgetObjCmd( void *clientData, /* Information about frame widget. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { static const char *const frameOptions[] = { @@ -2102,10 +2102,14 @@ TkToplevelWindowForCommand( if (Tcl_GetCommandInfo(interp, cmdName, &cmdInfo) == 0) { return NULL; } - if (cmdInfo.objProc != FrameWidgetObjCmd) { - return NULL; + if (cmdInfo.isNativeObjectProc == 2) { + if (cmdInfo.objProc2 != FrameWidgetObjCmd) { + return NULL; + } + framePtr = (Frame *)cmdInfo.objClientData2; + } else { + framePtr = (Frame *)cmdInfo.objClientData; } - framePtr = (Frame *)cmdInfo.objClientData; if (framePtr->type != TYPE_TOPLEVEL) { return NULL; } diff --git a/generic/tkGrab.c b/generic/tkGrab.c index f131e83..f234161 100644 --- a/generic/tkGrab.c +++ b/generic/tkGrab.c @@ -172,7 +172,7 @@ int Tk_GrabObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { int globalGrab; diff --git a/generic/tkGrid.c b/generic/tkGrid.c index 7890b03..3496ab7 100644 --- a/generic/tkGrid.c +++ b/generic/tkGrid.c @@ -332,7 +332,7 @@ int Tk_GridObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tk_Window tkwin = (Tk_Window)clientData; @@ -1184,7 +1184,7 @@ GridRowColumnConfigureCommand( contentPtr->numCols : contentPtr->numRows); } - for (slot = first; slot <= last; slot++) { + for (slot = first; (Tcl_Size)slot <= last; slot++) { ok = CheckSlotData(containerPtr, slot, slotType, /*checkOnly*/ 0); if (ok != TCL_OK) { Tcl_SetObjResult(interp, Tcl_ObjPrintf( @@ -1382,8 +1382,8 @@ GridContentCommand( Tk_Window container; Gridder *containerPtr; /* container grid record */ Gridder *contentPtr; - int i, value, index; - int row = -1, column = -1; + Tcl_Size i; + int row = -1, column = -1, value, index; static const char *const optionStrings[] = { "-column", "-row", NULL }; @@ -2987,9 +2987,8 @@ ConfigureContent( Gridder *contentPtr; Tk_Window other, content, parent, ancestor; TkWindow *container; - int i, j, tmp; - int numWindows; - int width; + Tcl_Size i, j, numWindows; + int width, tmp; int defaultRow = -1; int defaultColumn = 0; /* Default column number */ int defaultColumnSpan = 1; /* Default number of columns */ diff --git a/generic/tkIcu.c b/generic/tkIcu.c index 84c78d5..0239912 100644 --- a/generic/tkIcu.c +++ b/generic/tkIcu.c @@ -65,7 +65,7 @@ static int startEndOfCmd( void *clientData, Tcl_Interp *interp, - int objc, + Tcl_Size objc, Tcl_Obj *const objv[]) { Tcl_DString ds; @@ -78,7 +78,7 @@ startEndOfCmd( const uint16_t *ustr; const char *locale = NULL; - if ((unsigned)(objc - 3) > 1) { + if ((size_t)(objc - 3) > 1) { Tcl_WrongNumArgs(interp, 1 , objv, "str start ?locale?"); return TCL_ERROR; } @@ -297,15 +297,15 @@ Icu_Init( Tcl_MutexUnlock(&icu_mutex); if (icu_fns.lib != NULL) { - Tcl_CreateObjCommand(interp, "::tk::startOfCluster", startEndOfCmd, + Tcl_CreateObjCommand2(interp, "::tk::startOfCluster", startEndOfCmd, INT2PTR(0), icuCleanup); - Tcl_CreateObjCommand(interp, "::tk::startOfNextWord", startEndOfCmd, + Tcl_CreateObjCommand2(interp, "::tk::startOfNextWord", startEndOfCmd, INT2PTR(FLAG_WORD|FLAG_FOLLOWING), icuCleanup); - Tcl_CreateObjCommand(interp, "::tk::startOfPreviousWord", startEndOfCmd, + Tcl_CreateObjCommand2(interp, "::tk::startOfPreviousWord", startEndOfCmd, INT2PTR(FLAG_WORD), icuCleanup); - Tcl_CreateObjCommand(interp, "::tk::endOfCluster", startEndOfCmd, + Tcl_CreateObjCommand2(interp, "::tk::endOfCluster", startEndOfCmd, INT2PTR(FLAG_FOLLOWING), icuCleanup); - Tcl_CreateObjCommand(interp, "::tk::endOfWord", startEndOfCmd, + Tcl_CreateObjCommand2(interp, "::tk::endOfWord", startEndOfCmd, INT2PTR(FLAG_WORD|FLAG_FOLLOWING|FLAG_SPACE), icuCleanup); icu_fns.nopen += 5; } diff --git a/generic/tkImage.c b/generic/tkImage.c index 9512cb9..646f2a3 100644 --- a/generic/tkImage.c +++ b/generic/tkImage.c @@ -189,7 +189,7 @@ int Tk_ImageObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument strings. */ { static const char *const imageOptions[] = { @@ -201,7 +201,8 @@ Tk_ImageObjCmd( IMAGE_TYPE, IMAGE_TYPES, IMAGE_WIDTH }; TkWindow *winPtr = (TkWindow *)clientData; - int i, isNew, firstOption, index; + Tcl_Size i, firstOption; + int isNew, index; Tk_ImageType *typePtr; ImageModel *modelPtr; Image *imagePtr; diff --git a/generic/tkImgBmap.c b/generic/tkImgBmap.c index 7abc5d3..969c6e7 100644 --- a/generic/tkImgBmap.c +++ b/generic/tkImgBmap.c @@ -146,7 +146,7 @@ typedef struct ParseInfo { */ static int ImgBmapCmd(void *clientData, Tcl_Interp *interp, - int objc, Tcl_Obj *const objv[]); + Tcl_Size objc, Tcl_Obj *const objv[]); static void ImgBmapCmdDeletedProc(void *clientData); static void ImgBmapConfigureInstance(BitmapInstance *instancePtr); static int ImgBmapConfigureModel(BitmapModel *modelPtr, @@ -187,7 +187,7 @@ ImgBmapCreate( modelPtr->tkModel = model; modelPtr->interp = interp; - modelPtr->imageCmd = Tcl_CreateObjCommand(interp, name, ImgBmapCmd, + modelPtr->imageCmd = Tcl_CreateObjCommand2(interp, name, ImgBmapCmd, modelPtr, ImgBmapCmdDeletedProc); modelPtr->width = modelPtr->height = 0; modelPtr->data = NULL; @@ -742,7 +742,7 @@ static int ImgBmapCmd( void *clientData, /* Information about the image model. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { static const char *const bmapOptions[] = {"cget", "configure", NULL}; diff --git a/generic/tkImgPhoto.c b/generic/tkImgPhoto.c index 91cfc5a..2fa0494 100644 --- a/generic/tkImgPhoto.c +++ b/generic/tkImgPhoto.c @@ -186,7 +186,7 @@ static const Tk_ConfigSpec configSpecs[] = { static void PhotoFormatThreadExitProc(void *clientData); static int ImgPhotoCmd(void *clientData, Tcl_Interp *interp, - int objc, Tcl_Obj *const objv[]); + Tcl_Size objc, Tcl_Obj *const objv[]); static int ParseSubcommandOptions( struct SubcommandOptions *optPtr, Tcl_Interp *interp, int allowedOptions, @@ -370,7 +370,7 @@ ImgPhotoCreate( memset(modelPtr, 0, sizeof(PhotoModel)); modelPtr->tkModel = model; modelPtr->interp = interp; - modelPtr->imageCmd = Tcl_CreateObjCommand(interp, name, ImgPhotoCmd, + modelPtr->imageCmd = Tcl_CreateObjCommand2(interp, name, ImgPhotoCmd, modelPtr, ImgPhotoCmdDeletedProc); modelPtr->palette = NULL; modelPtr->pix32 = NULL; @@ -412,7 +412,7 @@ static int ImgPhotoCmd( void *clientData, /* Information about photo model. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { static const char *const photoOptions[] = { diff --git a/generic/tkInt.h b/generic/tkInt.h index 3c29bfd..d5888da 100644 --- a/generic/tkInt.h +++ b/generic/tkInt.h @@ -75,6 +75,7 @@ # endif #endif + #if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L) # define TKFLEXARRAY #elif defined(__GNUC__) && (__GNUC__ > 2) @@ -687,7 +688,7 @@ typedef struct TkMainInfo { struct TkMainInfo *nextPtr; /* Next in list of all main windows managed by * this process. */ Tcl_HashTable busyTable; /* Information used by [tk busy] command. */ - Tcl_ObjCmdProc *tclUpdateObjProc; + Tcl_ObjCmdProc2 *tclUpdateObjProc; /* Saved Tcl [update] command, used to restore * Tcl's version of [update] after Tk is shut * down */ @@ -1155,52 +1156,52 @@ MODULE_SCOPE void Ttk_TkDestroyedHandler(Tcl_Interp *interp); * world: */ -MODULE_SCOPE Tcl_ObjCmdProc Tk_BellObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_BindObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_BindtagsObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_BellObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_BindObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_BindtagsObjCmd; MODULE_SCOPE Tcl_ObjCmdProc2 Tk_BusyObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_ButtonObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_CanvasObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_CheckbuttonObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_ClipboardObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_ChooseColorObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_ChooseDirectoryObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_DestroyObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_EntryObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_EventObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_FrameObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_FocusObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_FontObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_GetOpenFileObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_GetSaveFileObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_GrabObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_GridObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_ImageObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_LabelObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_LabelframeObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_ListboxObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_LowerObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_MenuObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_MenubuttonObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_MessageBoxObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_MessageObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_PanedWindowObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_OptionObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_PackObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_PlaceObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_RadiobuttonObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_RaiseObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_ScaleObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_ScrollbarObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_SelectionObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_SendObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_SpinboxObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_TextObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_TkwaitObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_ToplevelObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_UpdateObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_WinfoObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc Tk_WmObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_ButtonObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_CanvasObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_CheckbuttonObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_ClipboardObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_ChooseColorObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_ChooseDirectoryObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_DestroyObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_EntryObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_EventObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_FrameObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_FocusObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_FontObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_GetOpenFileObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_GetSaveFileObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_GrabObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_GridObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_ImageObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_LabelObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_LabelframeObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_ListboxObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_LowerObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_MenuObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_MenubuttonObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_MessageBoxObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_MessageObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_PanedWindowObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_OptionObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_PackObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_PlaceObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_RadiobuttonObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_RaiseObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_ScaleObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_ScrollbarObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_SelectionObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_SendObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_SpinboxObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_TextObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_TkwaitObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_ToplevelObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_UpdateObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_WinfoObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 Tk_WmObjCmd; MODULE_SCOPE int TkSetGeometryContainer(Tcl_Interp *interp, Tk_Window tkwin, const char *name); @@ -1209,7 +1210,7 @@ MODULE_SCOPE void TkFreeGeometryContainer(Tk_Window tkwin, MODULE_SCOPE void TkEventInit(void); MODULE_SCOPE void TkRegisterObjTypes(void); -MODULE_SCOPE Tcl_ObjCmdProc TkDeadAppObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 TkDeadAppObjCmd; MODULE_SCOPE int TkCanvasGetCoordObj(Tcl_Interp *interp, Tk_Canvas canvas, Tcl_Obj *obj, double *doublePtr); @@ -1340,12 +1341,12 @@ MODULE_SCOPE void Icu_Init(Tcl_Interp* interp); * Unsupported commands. */ -MODULE_SCOPE Tcl_ObjCmdProc TkUnsupported1ObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 TkUnsupported1ObjCmd; /* * For Tktest. */ -MODULE_SCOPE Tcl_ObjCmdProc SquareObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 SquareObjCmd; #if !(defined(_WIN32) || defined(MAC_OSX_TK)) #define TkplatformtestInit(x) TCL_OK #else diff --git a/generic/tkListbox.c b/generic/tkListbox.c index be602d9..059d482 100644 --- a/generic/tkListbox.c +++ b/generic/tkListbox.c @@ -409,7 +409,7 @@ static int ListboxSelect(Listbox *listPtr, int first, int last, int select); static void ListboxUpdateHScrollbar(Listbox *listPtr); static void ListboxUpdateVScrollbar(Listbox *listPtr); -static Tcl_ObjCmdProc ListboxWidgetObjCmd; +static Tcl_ObjCmdProc2 ListboxWidgetObjCmd; static int ListboxBboxSubCmd(Tcl_Interp *interp, Listbox *listPtr, int index); static int ListboxSelectionSubCmd(Tcl_Interp *interp, @@ -462,7 +462,7 @@ int Tk_ListboxObjCmd( TCL_UNUSED(void *), Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Listbox *listPtr; @@ -519,7 +519,7 @@ Tk_ListboxObjCmd( listPtr->tkwin = tkwin; listPtr->display = Tk_Display(tkwin); listPtr->interp = interp; - listPtr->widgetCmd = Tcl_CreateObjCommand(interp, + listPtr->widgetCmd = Tcl_CreateObjCommand2(interp, Tk_PathName(listPtr->tkwin), ListboxWidgetObjCmd, listPtr, ListboxCmdDeletedProc); listPtr->optionTable = optionTables->listboxOptionTable; @@ -591,7 +591,7 @@ static int ListboxWidgetObjCmd( void *clientData, /* Information about listbox widget. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Arguments as Tcl_Obj's. */ { Listbox *listPtr = (Listbox *)clientData; diff --git a/generic/tkMenu.c b/generic/tkMenu.c index fb02a35..9066e68 100644 --- a/generic/tkMenu.c +++ b/generic/tkMenu.c @@ -349,7 +349,7 @@ static TkMenuEntry * MenuNewEntry(TkMenu *menuPtr, Tcl_Size index, int type); static char * MenuVarProc(void *clientData, Tcl_Interp *interp, const char *name1, const char *name2, int flags); -static Tcl_ObjCmdProc MenuWidgetObjCmd; +static Tcl_ObjCmdProc2 MenuWidgetObjCmd; static void MenuWorldChanged(void *instanceData); static int PostProcessEntry(TkMenuEntry *mePtr); static void RecursivelyDeleteMenu(TkMenu *menuPtr); @@ -392,7 +392,7 @@ int Tk_MenuObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument strings. */ { Tk_Window tkwin = (Tk_Window)clientData; @@ -443,7 +443,7 @@ Tk_MenuObjCmd( menuPtr->tkwin = newWin; menuPtr->display = Tk_Display(newWin); menuPtr->interp = interp; - menuPtr->widgetCmd = Tcl_CreateObjCommand(interp, + menuPtr->widgetCmd = Tcl_CreateObjCommand2(interp, Tk_PathName(menuPtr->tkwin), MenuWidgetObjCmd, menuPtr, MenuCmdDeletedProc); menuPtr->active = TCL_INDEX_NONE; @@ -608,7 +608,7 @@ static int MenuWidgetObjCmd( void *clientData, /* Information about menu widget. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument strings. */ { TkMenu *menuPtr = (TkMenu *)clientData; diff --git a/generic/tkMenubutton.c b/generic/tkMenubutton.c index 7096ea1..ba6b7da 100644 --- a/generic/tkMenubutton.c +++ b/generic/tkMenubutton.c @@ -164,9 +164,9 @@ static void MenuButtonImageProc(void *clientData, static char * MenuButtonTextVarProc(void *clientData, Tcl_Interp *interp, const char *name1, const char *name2, int flags); -static Tcl_ObjCmdProc MenuButtonWidgetObjCmd; +static Tcl_ObjCmdProc2 MenuButtonWidgetObjCmd; static int ConfigureMenuButton(Tcl_Interp *interp, - TkMenuButton *mbPtr, int objc, + TkMenuButton *mbPtr, Tcl_Size objc, Tcl_Obj *const objv[]); static void DestroyMenuButton(void *memPtr); @@ -192,7 +192,7 @@ int Tk_MenubuttonObjCmd( TCL_UNUSED(void *), Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { TkMenuButton *mbPtr; @@ -233,7 +233,7 @@ Tk_MenubuttonObjCmd( mbPtr->tkwin = tkwin; mbPtr->display = Tk_Display(tkwin); mbPtr->interp = interp; - mbPtr->widgetCmd = Tcl_CreateObjCommand(interp, + mbPtr->widgetCmd = Tcl_CreateObjCommand2(interp, Tk_PathName(mbPtr->tkwin), MenuButtonWidgetObjCmd, mbPtr, MenuButtonCmdDeletedProc); mbPtr->optionTable = optionTable; @@ -327,7 +327,7 @@ static int MenuButtonWidgetObjCmd( void *clientData, /* Information about button widget. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { TkMenuButton *mbPtr = (TkMenuButton *)clientData; @@ -476,7 +476,7 @@ ConfigureMenuButton( TkMenuButton *mbPtr, /* Information about widget; may or may not * already have values for some fields. */ - int objc, /* Number of valid entries in objv. */ + Tcl_Size objc, /* Number of valid entries in objv. */ Tcl_Obj *const objv[]) /* Arguments. */ { Tk_SavedOptions savedOptions; diff --git a/generic/tkMessage.c b/generic/tkMessage.c index 42a4868..9bb9fab 100644 --- a/generic/tkMessage.c +++ b/generic/tkMessage.c @@ -170,11 +170,11 @@ static void MessageEventProc(void *clientData, static char * MessageTextVarProc(void *clientData, Tcl_Interp *interp, const char *name1, const char *name2, int flags); -static Tcl_ObjCmdProc MessageWidgetObjCmd; +static Tcl_ObjCmdProc2 MessageWidgetObjCmd; static void MessageWorldChanged(void *instanceData); static void ComputeMessageGeometry(Message *msgPtr); static int ConfigureMessage(Tcl_Interp *interp, Message *msgPtr, - int objc, Tcl_Obj *const objv[], int flags); + Tcl_Size objc, Tcl_Obj *const objv[], int flags); static void DestroyMessage(void *memPtr); static void DisplayMessage(void *clientData); @@ -211,7 +211,7 @@ int Tk_MessageObjCmd( TCL_UNUSED(void *), Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument strings. */ { Message *msgPtr; @@ -246,7 +246,7 @@ Tk_MessageObjCmd( msgPtr->tkwin = tkwin; msgPtr->display = Tk_Display(tkwin); msgPtr->interp = interp; - msgPtr->widgetCmd = Tcl_CreateObjCommand(interp, + msgPtr->widgetCmd = Tcl_CreateObjCommand2(interp, Tk_PathName(msgPtr->tkwin), MessageWidgetObjCmd, msgPtr, MessageCmdDeletedProc); msgPtr->optionTable = optionTable; @@ -298,7 +298,7 @@ static int MessageWidgetObjCmd( void *clientData, /* Information about message widget. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument strings. */ { Message *msgPtr = (Message *)clientData; @@ -434,7 +434,7 @@ ConfigureMessage( Tcl_Interp *interp, /* Used for error reporting. */ Message *msgPtr, /* Information about widget; may or may not * already have values for some fields. */ - int objc, /* Number of valid entries in argv. */ + Tcl_Size objc, /* Number of valid entries in argv. */ Tcl_Obj *const objv[], /* Arguments. */ TCL_UNUSED(int)) /* Flags to pass to Tk_ConfigureWidget. */ { diff --git a/generic/tkOption.c b/generic/tkOption.c index f6976bd..3d905bb 100644 --- a/generic/tkOption.c +++ b/generic/tkOption.c @@ -612,7 +612,7 @@ int Tk_OptionObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of Tcl_Obj arguments. */ + Tcl_Size objc, /* Number of Tcl_Obj arguments. */ Tcl_Obj *const objv[]) /* Tcl_Obj arguments. */ { Tk_Window tkwin = (Tk_Window)clientData; diff --git a/generic/tkPack.c b/generic/tkPack.c index d017507..63e03a3 100644 --- a/generic/tkPack.c +++ b/generic/tkPack.c @@ -119,7 +119,7 @@ static const Tk_GeomMgr packerType = { static void ArrangePacking(void *clientData); static int ConfigureContent(Tcl_Interp *interp, Tk_Window tkwin, - int objc, Tcl_Obj *const objv[]); + Tcl_Size objc, Tcl_Obj *const objv[]); static Tcl_FreeProc DestroyPacker; static Packer * GetPacker(Tk_Window tkwin); static void PackStructureProc(void *clientData, @@ -189,7 +189,7 @@ int Tk_PackObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tk_Window tkwin = (Tk_Window)clientData; @@ -240,7 +240,7 @@ Tk_PackObjCmd( case PACK_FORGET: { Tk_Window content; Packer *contentPtr; - int i; + Tcl_Size i; for (i = 2; i < objc; i++) { if (TkGetWindowFromObj(interp, tkwin, objv[i], &content) != TCL_OK) { @@ -1205,7 +1205,7 @@ ConfigureContent( Tcl_Interp *interp, /* Interpreter for error reporting. */ Tk_Window tkwin, /* Any window in application containing * content. Used to look up content names. */ - int objc, /* Number of elements in argv. */ + Tcl_Size objc, /* Number of elements in argv. */ Tcl_Obj *const objv[]) /* Argument objects: contains one or more * window names followed by any number of * "option value" pairs. Caller must make sure @@ -1214,7 +1214,8 @@ ConfigureContent( Packer *containerPtr, *contentPtr, *prevPtr, *otherPtr; Tk_Window other, content, parent, ancestor; TkWindow *container; - int i, j, numWindows, tmp, positionGiven; + int tmp, positionGiven; + Tcl_Size i, j, numWindows; const char *string; static const char *const optionStrings[] = { "-after", "-anchor", "-before", "-expand", "-fill", diff --git a/generic/tkPanedWindow.c b/generic/tkPanedWindow.c index aab335e..0a2c6f8 100644 --- a/generic/tkPanedWindow.c +++ b/generic/tkPanedWindow.c @@ -191,7 +191,7 @@ typedef struct PanedWindow { static void PanedWindowCmdDeletedProc(void *clientData); static int ConfigurePanedWindow(Tcl_Interp *interp, - PanedWindow *pwPtr, int objc, + PanedWindow *pwPtr, Tcl_Size objc, Tcl_Obj *const objv[]); static void DestroyPanedWindow(PanedWindow *pwPtr); static void DisplayPanedWindow(void *clientData); @@ -202,7 +202,7 @@ static void ProxyWindowEventProc(void *clientData, static void DisplayProxyWindow(void *clientData); static void PanedWindowWorldChanged(void *instanceData); static int PanedWindowWidgetObjCmd(void *clientData, - Tcl_Interp *, int objc, Tcl_Obj * const objv[]); + Tcl_Interp *, Tcl_Size objc, Tcl_Obj * const objv[]); static void PanedWindowLostPaneProc(void *clientData, Tk_Window tkwin); static void PanedWindowReqProc(void *clientData, @@ -215,14 +215,14 @@ static void GetFirstLastVisiblePane(PanedWindow *pwPtr, static void PaneStructureProc(void *clientData, XEvent *eventPtr); static int PanedWindowSashCommand(PanedWindow *pwPtr, - Tcl_Interp *interp, int objc, + Tcl_Interp *interp, Tcl_Size objc, Tcl_Obj * const objv[]); static int PanedWindowProxyCommand(PanedWindow *pwPtr, - Tcl_Interp *interp, int objc, + Tcl_Interp *interp, Tcl_Size objc, Tcl_Obj * const objv[]); static void ComputeGeometry(PanedWindow *pwPtr); static int ConfigurePanes(PanedWindow *pwPtr, - Tcl_Interp *interp, int objc, + Tcl_Interp *interp, Tcl_Size objc, Tcl_Obj * const objv[]); static void DestroyOptionTables(void *clientData, Tcl_Interp *interp); @@ -388,7 +388,7 @@ int Tk_PanedWindowObjCmd( TCL_UNUSED(void *), /* NULL. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj * const objv[]) /* Argument objects. */ { PanedWindow *pwPtr; @@ -445,7 +445,7 @@ Tk_PanedWindowObjCmd( pwPtr->tkwin = tkwin; pwPtr->display = Tk_Display(tkwin); pwPtr->interp = interp; - pwPtr->widgetCmd = Tcl_CreateObjCommand(interp, + pwPtr->widgetCmd = Tcl_CreateObjCommand2(interp, Tk_PathName(pwPtr->tkwin), PanedWindowWidgetObjCmd, pwPtr, PanedWindowCmdDeletedProc); pwPtr->optionTable = pwOpts->pwOptions; @@ -535,7 +535,7 @@ static int PanedWindowWidgetObjCmd( void *clientData, /* Information about square widget. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj * const objv[]) /* Argument objects. */ { PanedWindow *pwPtr = (PanedWindow *)clientData; @@ -617,7 +617,7 @@ PanedWindowWidgetObjCmd( /* * Clean up each window named in the arg list. */ - for (count = 0, i = 2; i < objc; i++) { + for (count = 0, i = 2; i < (int)objc; i++) { Tk_Window pane = Tk_NameToWindow(interp, Tcl_GetString(objv[i]), pwPtr->tkwin); @@ -769,10 +769,11 @@ static int ConfigurePanes( PanedWindow *pwPtr, /* Information about paned window. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { - int i, firstOptionArg, j, found, doubleBw, index, numNewPanes, haveLoc; + int firstOptionArg, j, found, doubleBw, index, numNewPanes, haveLoc; + Tcl_Size i; int insertIndex; Tk_Window tkwin = NULL, ancestor, parent; Pane *panePtr, **inserts, **newPanes; @@ -867,7 +868,7 @@ ConfigurePanes( if (options.after != NULL) { tkwin = options.after; haveLoc = 1; - for (i = 0; i < pwPtr->numPanes; i++) { + for (i = 0; i < (Tcl_Size)pwPtr->numPanes; i++) { if (options.after == pwPtr->panes[i]->tkwin) { index = i + 1; break; @@ -876,7 +877,7 @@ ConfigurePanes( } else if (options.before != NULL) { tkwin = options.before; haveLoc = 1; - for (i = 0; i < pwPtr->numPanes; i++) { + for (i = 0; i < (Tcl_Size)pwPtr->numPanes; i++) { if (options.before == pwPtr->panes[i]->tkwin) { index = i; break; @@ -915,7 +916,7 @@ ConfigurePanes( * pre-existing pane structures). */ - for (i = 0, numNewPanes = 0; i < firstOptionArg - 2; i++) { + for (i = 0, numNewPanes = 0; i < (Tcl_Size)firstOptionArg - 2; i++) { /* * We don't check that tkwin is NULL here, because the pre-pass above * guarantees that the input at this stage is good. @@ -1037,7 +1038,7 @@ ConfigurePanes( * array. */ - for (i = 0, j = 0; i < index; i++) { + for (i = 0, j = 0; i < (Tcl_Size)index; i++) { if (pwPtr->panes[i] != NULL) { newPanes[j] = pwPtr->panes[i]; j++; @@ -1047,7 +1048,7 @@ ConfigurePanes( memcpy(&newPanes[j], inserts, sizeof(Pane *)*insertIndex); j += firstOptionArg - 2; - for (i = index; i < pwPtr->numPanes; i++) { + for (i = index; i < (Tcl_Size)pwPtr->numPanes; i++) { if (pwPtr->panes[i] != NULL) { newPanes[j] = pwPtr->panes[i]; j++; @@ -1096,7 +1097,7 @@ static int PanedWindowSashCommand( PanedWindow *pwPtr, /* Pointer to paned window information. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { static const char *const sashOptionStrings[] = { @@ -1249,7 +1250,7 @@ static int ConfigurePanedWindow( Tcl_Interp *interp, /* Used for error reporting. */ PanedWindow *pwPtr, /* Information about widget. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument values. */ { Tk_SavedOptions savedOptions; @@ -2853,7 +2854,7 @@ static int PanedWindowProxyCommand( PanedWindow *pwPtr, /* Pointer to paned window information. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { static const char *const optionStrings[] = { diff --git a/generic/tkPlace.c b/generic/tkPlace.c index 013c531..03a937c 100644 --- a/generic/tkPlace.c +++ b/generic/tkPlace.c @@ -155,7 +155,7 @@ static const Tk_GeomMgr placerType = { static void ContentStructureProc(void *clientData, XEvent *eventPtr); static int ConfigureContent(Tcl_Interp *interp, Tk_Window tkwin, - Tk_OptionTable table, int objc, + Tk_OptionTable table, Tcl_Size objc, Tcl_Obj *const objv[]); static int PlaceInfoCommand(Tcl_Interp *interp, Tk_Window tkwin); static Content * CreateContent(Tk_Window tkwin, Tk_OptionTable table); @@ -189,7 +189,7 @@ int Tk_PlaceObjCmd( void *clientData, /* Interpreter main window. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tk_Window main_win = (Tk_Window)clientData; @@ -612,7 +612,7 @@ ConfigureContent( Tcl_Interp *interp, /* Used for error reporting. */ Tk_Window tkwin, /* Token for the window to manipulate. */ Tk_OptionTable table, /* Token for option table. */ - int objc, /* Number of config arguments. */ + Tcl_Size objc, /* Number of config arguments. */ Tcl_Obj *const objv[]) /* Object values for arguments. */ { Container *containerPtr; diff --git a/generic/tkScale.c b/generic/tkScale.c index 37950bb..e6aa7c7 100644 --- a/generic/tkScale.c +++ b/generic/tkScale.c @@ -151,7 +151,7 @@ enum command { static void ComputeFormat(TkScale *scalePtr, int forTicks); static void ComputeScaleGeometry(TkScale *scalePtr); static int ConfigureScale(Tcl_Interp *interp, TkScale *scalePtr, - int objc, Tcl_Obj *const objv[]); + Tcl_Size objc, Tcl_Obj *const objv[]); static void DestroyScale(void *memPtr); static double MaxTickRoundingError(TkScale *scalePtr, double tickResolution); @@ -161,7 +161,7 @@ static void ScaleEventProc(void *clientData, static char * ScaleVarProc(void *clientData, Tcl_Interp *interp, const char *name1, const char *name2, int flags); -static Tcl_ObjCmdProc ScaleWidgetObjCmd; +static Tcl_ObjCmdProc2 ScaleWidgetObjCmd; static void ScaleWorldChanged(void *instanceData); static void ScaleSetVariable(TkScale *scalePtr); @@ -239,7 +239,7 @@ int Tk_ScaleObjCmd( TCL_UNUSED(void *), Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument values. */ { TkScale *scalePtr; @@ -276,7 +276,7 @@ Tk_ScaleObjCmd( scalePtr->tkwin = tkwin; scalePtr->display = Tk_Display(tkwin); scalePtr->interp = interp; - scalePtr->widgetCmd = Tcl_CreateObjCommand(interp, + scalePtr->widgetCmd = Tcl_CreateObjCommand2(interp, Tk_PathName(scalePtr->tkwin), ScaleWidgetObjCmd, scalePtr, ScaleCmdDeletedProc); scalePtr->optionTable = optionTable; @@ -372,7 +372,7 @@ static int ScaleWidgetObjCmd( void *clientData, /* Information about scale widget. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument strings. */ { TkScale *scalePtr = (TkScale *)clientData; @@ -593,7 +593,7 @@ ConfigureScale( Tcl_Interp *interp, /* Used for error reporting. */ TkScale *scalePtr, /* Information about widget; may or may not * already have values for some fields. */ - int objc, /* Number of valid entries in objv. */ + Tcl_Size objc, /* Number of valid entries in objv. */ Tcl_Obj *const objv[]) /* Argument values. */ { Tk_SavedOptions savedOptions; diff --git a/generic/tkScrollbar.c b/generic/tkScrollbar.c index 848e1c6..6ae686a 100644 --- a/generic/tkScrollbar.c +++ b/generic/tkScrollbar.c @@ -100,7 +100,7 @@ static int ConfigureScrollbar(Tcl_Interp *interp, TkScrollbar *scrollPtr, Tcl_Size objc, Tcl_Obj *const objv[], int flags); static void ScrollbarCmdDeletedProc(void *clientData); -static Tcl_ObjCmdProc ScrollbarWidgetObjCmd; +static Tcl_ObjCmdProc2 ScrollbarWidgetObjCmd; /* *-------------------------------------------------------------- @@ -123,7 +123,7 @@ int Tk_ScrollbarObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument strings. */ { Tk_Window tkwin = (Tk_Window)clientData; @@ -154,7 +154,7 @@ Tk_ScrollbarObjCmd( scrollPtr->tkwin = newWin; scrollPtr->display = Tk_Display(newWin); scrollPtr->interp = interp; - scrollPtr->widgetCmd = Tcl_CreateObjCommand(interp, + scrollPtr->widgetCmd = Tcl_CreateObjCommand2(interp, Tk_PathName(scrollPtr->tkwin), ScrollbarWidgetObjCmd, scrollPtr, ScrollbarCmdDeletedProc); scrollPtr->vertical = 0; @@ -214,7 +214,7 @@ static int ScrollbarWidgetObjCmd( void *clientData, /* Information about scrollbar widget. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument strings. */ { TkScrollbar *scrollPtr = (TkScrollbar *)clientData; diff --git a/generic/tkSelect.c b/generic/tkSelect.c index 752b5ea..851fad6 100644 --- a/generic/tkSelect.c +++ b/generic/tkSelect.c @@ -671,7 +671,7 @@ Tk_SelectionObjCmd( void *clientData, /* Main window associated with * interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tk_Window tkwin = (Tk_Window)clientData; @@ -679,7 +679,8 @@ Tk_SelectionObjCmd( Atom selection; const char *selName = NULL; const char *string; - int count, index; + Tcl_Size count; + int index; Tcl_Obj *const *objs; static const char *const optionStrings[] = { "clear", "get", "handle", "own", NULL diff --git a/generic/tkSquare.c b/generic/tkSquare.c index 2c58e3f..ac9f6a5 100644 --- a/generic/tkSquare.c +++ b/generic/tkSquare.c @@ -103,7 +103,7 @@ static void SquareDisplay(void *clientData); static void KeepInWindow(Square *squarePtr); static void SquareObjEventProc(void *clientData, XEvent *eventPtr); -static Tcl_ObjCmdProc SquareWidgetObjCmd; +static Tcl_ObjCmdProc2 SquareWidgetObjCmd; /* *-------------------------------------------------------------- @@ -126,7 +126,7 @@ int SquareObjCmd( TCL_UNUSED(void *), Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Square *squarePtr; @@ -165,7 +165,7 @@ SquareObjCmd( squarePtr->tkwin = tkwin; squarePtr->display = Tk_Display(tkwin); squarePtr->interp = interp; - squarePtr->widgetCmd = Tcl_CreateObjCommand(interp, + squarePtr->widgetCmd = Tcl_CreateObjCommand2(interp, Tk_PathName(squarePtr->tkwin), SquareWidgetObjCmd, squarePtr, SquareDeletedProc); squarePtr->gc = NULL; @@ -219,7 +219,7 @@ static int SquareWidgetObjCmd( void *clientData, /* Information about square widget. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj * const objv[]) /* Argument objects. */ { Square *squarePtr = (Square *)clientData; diff --git a/generic/tkTest.c b/generic/tkTest.c index 71b1791..518bd10 100644 --- a/generic/tkTest.c +++ b/generic/tkTest.c @@ -155,35 +155,35 @@ typedef struct TrivialCommandHeader { * Forward declarations for functions defined later in this file: */ -static Tcl_ObjCmdProc ImageObjCmd; -static Tcl_ObjCmdProc TestbitmapObjCmd; -static Tcl_ObjCmdProc TestborderObjCmd; -static Tcl_ObjCmdProc TestcolorObjCmd; -static Tcl_ObjCmdProc TestcursorObjCmd; -static Tcl_ObjCmdProc TestdeleteappsObjCmd; -static Tcl_ObjCmdProc TestfontObjCmd; -static Tcl_ObjCmdProc TestmakeexistObjCmd; +static Tcl_ObjCmdProc2 ImageObjCmd; +static Tcl_ObjCmdProc2 TestbitmapObjCmd; +static Tcl_ObjCmdProc2 TestborderObjCmd; +static Tcl_ObjCmdProc2 TestcolorObjCmd; +static Tcl_ObjCmdProc2 TestcursorObjCmd; +static Tcl_ObjCmdProc2 TestdeleteappsObjCmd; +static Tcl_ObjCmdProc2 TestfontObjCmd; +static Tcl_ObjCmdProc2 TestmakeexistObjCmd; #if !(defined(_WIN32) || defined(MAC_OSX_TK) || defined(__CYGWIN__)) -static Tcl_ObjCmdProc TestmenubarObjCmd; +static Tcl_ObjCmdProc2 TestmenubarObjCmd; #endif #if defined(_WIN32) -static Tcl_ObjCmdProc TestmetricsObjCmd; +static Tcl_ObjCmdProc2 TestmetricsObjCmd; #endif -static Tcl_ObjCmdProc TestobjconfigObjCmd; +static Tcl_ObjCmdProc2 TestobjconfigObjCmd; static Tk_CustomOptionSetProc CustomOptionSet; static Tk_CustomOptionGetProc CustomOptionGet; static Tk_CustomOptionRestoreProc CustomOptionRestore; static Tk_CustomOptionFreeProc CustomOptionFree; -static Tcl_ObjCmdProc TestpropObjCmd; -static Tcl_ObjCmdProc TestprintfObjCmd; +static Tcl_ObjCmdProc2 TestpropObjCmd; +static Tcl_ObjCmdProc2 TestprintfObjCmd; #if !(defined(_WIN32) || defined(MAC_OSX_TK) || defined(__CYGWIN__)) -static Tcl_ObjCmdProc TestwrapperObjCmd; +static Tcl_ObjCmdProc2 TestwrapperObjCmd; #endif static void TrivialCmdDeletedProc(void *clientData); -static Tcl_ObjCmdProc TrivialConfigObjCmd; +static Tcl_ObjCmdProc2 TrivialConfigObjCmd; static void TrivialEventProc(void *clientData, XEvent *eventPtr); -static Tcl_ObjCmdProc TestPhotoStringMatchCmd; +static Tcl_ObjCmdProc2 TestPhotoStringMatchCmd; /* *---------------------------------------------------------------------- @@ -223,43 +223,43 @@ Tktest_Init( return TCL_ERROR; } - Tcl_CreateObjCommand(interp, "square", SquareObjCmd, NULL, NULL); - Tcl_CreateObjCommand(interp, "testbitmap", TestbitmapObjCmd, + Tcl_CreateObjCommand2(interp, "square", SquareObjCmd, NULL, NULL); + Tcl_CreateObjCommand2(interp, "testbitmap", TestbitmapObjCmd, Tk_MainWindow(interp), NULL); - Tcl_CreateObjCommand(interp, "testborder", TestborderObjCmd, + Tcl_CreateObjCommand2(interp, "testborder", TestborderObjCmd, Tk_MainWindow(interp), NULL); - Tcl_CreateObjCommand(interp, "testcolor", TestcolorObjCmd, + Tcl_CreateObjCommand2(interp, "testcolor", TestcolorObjCmd, Tk_MainWindow(interp), NULL); - Tcl_CreateObjCommand(interp, "testcursor", TestcursorObjCmd, + Tcl_CreateObjCommand2(interp, "testcursor", TestcursorObjCmd, Tk_MainWindow(interp), NULL); - Tcl_CreateObjCommand(interp, "testdeleteapps", TestdeleteappsObjCmd, + Tcl_CreateObjCommand2(interp, "testdeleteapps", TestdeleteappsObjCmd, Tk_MainWindow(interp), NULL); Tcl_CreateObjCommand2(interp, "testembed", TkpTestembedCmd, Tk_MainWindow(interp), NULL); - Tcl_CreateObjCommand(interp, "testobjconfig", TestobjconfigObjCmd, + Tcl_CreateObjCommand2(interp, "testobjconfig", TestobjconfigObjCmd, Tk_MainWindow(interp), NULL); - Tcl_CreateObjCommand(interp, "testfont", TestfontObjCmd, + Tcl_CreateObjCommand2(interp, "testfont", TestfontObjCmd, Tk_MainWindow(interp), NULL); - Tcl_CreateObjCommand(interp, "testmakeexist", TestmakeexistObjCmd, + Tcl_CreateObjCommand2(interp, "testmakeexist", TestmakeexistObjCmd, Tk_MainWindow(interp), NULL); - Tcl_CreateObjCommand(interp, "testprop", TestpropObjCmd, + Tcl_CreateObjCommand2(interp, "testprop", TestpropObjCmd, Tk_MainWindow(interp), NULL); - Tcl_CreateObjCommand(interp, "testprintf", TestprintfObjCmd, NULL, NULL); + Tcl_CreateObjCommand2(interp, "testprintf", TestprintfObjCmd, NULL, NULL); Tcl_CreateObjCommand2(interp, "testtext", TkpTesttextCmd, Tk_MainWindow(interp), NULL); - Tcl_CreateObjCommand(interp, "testphotostringmatch", + Tcl_CreateObjCommand2(interp, "testphotostringmatch", TestPhotoStringMatchCmd, Tk_MainWindow(interp), NULL); #if defined(_WIN32) - Tcl_CreateObjCommand(interp, "testmetrics", TestmetricsObjCmd, + Tcl_CreateObjCommand2(interp, "testmetrics", TestmetricsObjCmd, Tk_MainWindow(interp), NULL); #elif !defined(__CYGWIN__) && !defined(MAC_OSX_TK) - Tcl_CreateObjCommand(interp, "testmenubar", TestmenubarObjCmd, + Tcl_CreateObjCommand2(interp, "testmenubar", TestmenubarObjCmd, Tk_MainWindow(interp), NULL); Tcl_CreateObjCommand2(interp, "testsend", TkpTestsendCmd, Tk_MainWindow(interp), NULL); - Tcl_CreateObjCommand(interp, "testwrapper", TestwrapperObjCmd, + Tcl_CreateObjCommand2(interp, "testwrapper", TestwrapperObjCmd, Tk_MainWindow(interp), NULL); #endif /* _WIN32 */ @@ -300,7 +300,7 @@ static int TestbitmapObjCmd( TCL_UNUSED(void *), /* Main window for application. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { if (objc < 2) { @@ -333,7 +333,7 @@ static int TestborderObjCmd( TCL_UNUSED(void *), /* Main window for application. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { if (objc < 2) { @@ -366,7 +366,7 @@ static int TestcolorObjCmd( TCL_UNUSED(void *), /* Main window for application. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { if (objc < 2) { @@ -399,7 +399,7 @@ static int TestcursorObjCmd( TCL_UNUSED(void *), /* Main window for application. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { if (objc < 2) { @@ -433,7 +433,7 @@ static int TestdeleteappsObjCmd( TCL_UNUSED(void *), /* Main window for application. */ TCL_UNUSED(Tcl_Interp *), /* Current interpreter. */ - TCL_UNUSED(int), /* Number of arguments. */ + TCL_UNUSED(Tcl_Size), /* Number of arguments. */ TCL_UNUSED(Tcl_Obj *const *)) /* Argument strings. */ { NewApp *nextPtr; @@ -469,7 +469,7 @@ static int TestobjconfigObjCmd( void *clientData, /* Main window for application. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { static const char *const options[] = { @@ -645,7 +645,7 @@ TestobjconfigObjCmd( result = Tk_InitOptions(interp, recordPtr, optionTable, tkwin); if (result == TCL_OK) { - recordPtr->header.widgetCmd = Tcl_CreateObjCommand(interp, + recordPtr->header.widgetCmd = Tcl_CreateObjCommand2(interp, Tcl_GetString(objv[2]), TrivialConfigObjCmd, recordPtr, TrivialCmdDeletedProc); Tk_CreateEventHandler(tkwin, StructureNotifyMask, @@ -693,7 +693,7 @@ TestobjconfigObjCmd( } } if (result == TCL_OK) { - recordPtr->header.widgetCmd = Tcl_CreateObjCommand(interp, + recordPtr->header.widgetCmd = Tcl_CreateObjCommand2(interp, Tcl_GetString(objv[2]), TrivialConfigObjCmd, recordPtr, TrivialCmdDeletedProc); Tk_CreateEventHandler(tkwin, StructureNotifyMask, @@ -746,7 +746,7 @@ TestobjconfigObjCmd( } } if (result == TCL_OK) { - recordPtr->header.widgetCmd = Tcl_CreateObjCommand(interp, + recordPtr->header.widgetCmd = Tcl_CreateObjCommand2(interp, Tcl_GetString(objv[2]), TrivialConfigObjCmd, recordPtr, TrivialCmdDeletedProc); Tk_CreateEventHandler(tkwin, StructureNotifyMask, @@ -921,7 +921,7 @@ TestobjconfigObjCmd( result = Tk_InitOptions(interp, recordPtr, optionTable, tkwin); if (result == TCL_OK) { - recordPtr->header.widgetCmd = Tcl_CreateObjCommand(interp, + recordPtr->header.widgetCmd = Tcl_CreateObjCommand2(interp, Tcl_GetString(objv[2]), TrivialConfigObjCmd, recordPtr, TrivialCmdDeletedProc); Tk_CreateEventHandler(tkwin, StructureNotifyMask, @@ -986,7 +986,7 @@ TestobjconfigObjCmd( recordPtr->header.optionTable, objc - 3, objv + 3, (Tk_Window) NULL, NULL, NULL); if (result == TCL_OK) { - recordPtr->header.widgetCmd = Tcl_CreateObjCommand(interp, + recordPtr->header.widgetCmd = Tcl_CreateObjCommand2(interp, Tcl_GetString(objv[2]), TrivialConfigObjCmd, recordPtr, TrivialCmdDeletedProc); } else { @@ -1064,7 +1064,7 @@ TestobjconfigObjCmd( recordPtr->header.optionTable, objc - 3, objv + 3, tkwin, NULL, NULL); if (result == TCL_OK) { - recordPtr->header.widgetCmd = Tcl_CreateObjCommand(interp, + recordPtr->header.widgetCmd = Tcl_CreateObjCommand2(interp, Tcl_GetString(objv[2]), TrivialConfigObjCmd, recordPtr, TrivialCmdDeletedProc); Tk_CreateEventHandler(tkwin, StructureNotifyMask, @@ -1106,7 +1106,7 @@ static int TrivialConfigObjCmd( void *clientData, /* Main window for application. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { int result = TCL_OK; @@ -1288,7 +1288,7 @@ static int TestfontObjCmd( void *clientData, /* Main window for application. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { static const char *const options[] = {"counts", "subfonts", NULL}; @@ -1385,7 +1385,7 @@ ImageCreate( strcpy(timPtr->imageName, name); timPtr->varName = (char *)ckalloc(strlen(varName) + 1); strcpy(timPtr->varName, varName); - Tcl_CreateObjCommand(interp, name, ImageObjCmd, timPtr, NULL); + Tcl_CreateObjCommand2(interp, name, ImageObjCmd, timPtr, NULL); *clientDataPtr = timPtr; Tk_ImageChanged(model, 0, 0, 30, 15, 30, 15); return TCL_OK; @@ -1412,7 +1412,7 @@ static int ImageObjCmd( void *clientData, /* Main window for application. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument strings. */ { TImageModel *timPtr = (TImageModel *)clientData; @@ -1671,11 +1671,11 @@ static int TestmakeexistObjCmd( void *clientData, /* Main window for application. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument strings. */ { Tk_Window mainWin = (Tk_Window)clientData; - int i; + Tcl_Size i; Tk_Window tkwin; for (i = 1; i < objc; i++) { @@ -1712,7 +1712,7 @@ static int TestmenubarObjCmd( void *clientData, /* Main window for application. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument strings. */ { #ifdef __UNIX__ @@ -1778,7 +1778,7 @@ static int TestmetricsObjCmd( TCL_UNUSED(void *), /* Main window for application. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument strings. */ { char buf[TCL_INTEGER_SPACE]; @@ -1825,7 +1825,7 @@ static int TestpropObjCmd( void *clientData, /* Main window for application. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument strings. */ { Tk_Window mainWin = (Tk_Window)clientData; @@ -1901,7 +1901,7 @@ static int TestprintfObjCmd( TCL_UNUSED(void *), /* Not used */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument strings. */ { char buffer[256]; @@ -1952,7 +1952,7 @@ static int TestwrapperObjCmd( void *clientData, /* Main window for application. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument strings. */ { TkWindow *winPtr, *wrapperPtr; @@ -2122,7 +2122,7 @@ static int TestPhotoStringMatchCmd( TCL_UNUSED(void *), /* Main window for application. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument strings. */ { Tcl_Obj *dummy = NULL; diff --git a/generic/tkText.c b/generic/tkText.c index 20bebf7..f7cb5d4 100644 --- a/generic/tkText.c +++ b/generic/tkText.c @@ -364,7 +364,7 @@ static int TextSearchCmd(TkText *textPtr, Tcl_Interp *interp, Tcl_Size objc, Tcl_Obj *const objv[]); static int TextEditCmd(TkText *textPtr, Tcl_Interp *interp, Tcl_Size objc, Tcl_Obj *const objv[]); -static Tcl_ObjCmdProc TextWidgetObjCmd; +static Tcl_ObjCmdProc2 TextWidgetObjCmd; static Tcl_ObjCmdProc2 SharedTextObjCmd; static void TextWorldChangedCallback(void *instanceData); static void TextWorldChanged(TkText *textPtr, int mask); @@ -437,7 +437,7 @@ int Tk_TextObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tk_Window tkwin = (Tk_Window)clientData; @@ -508,7 +508,7 @@ CreateWidget( textPtr->tkwin = newWin; textPtr->display = Tk_Display(newWin); textPtr->interp = interp; - textPtr->widgetCmd = Tcl_CreateObjCommand(interp, + textPtr->widgetCmd = Tcl_CreateObjCommand2(interp, Tk_PathName(textPtr->tkwin), TextWidgetObjCmd, textPtr, TextCmdDeletedProc); @@ -672,7 +672,7 @@ static int TextWidgetObjCmd( void *clientData, /* Information about text widget. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { TkText *textPtr = (TkText *)clientData; @@ -6969,6 +6969,11 @@ TkpTesttextCmd( if (Tcl_GetCommandInfo(interp, Tcl_GetString(objv[1]), &info) == 0) { return TCL_ERROR; } +#if TCL_MAJOR_VERSION > 8 + if (info.isNativeObjectProc == 2) { + textPtr = (TkText *)info.objClientData2; + } else +#endif textPtr = (TkText *)info.objClientData; len = strlen(Tcl_GetString(objv[2])); if (strncmp(Tcl_GetString(objv[2]), "byteindex", len) == 0) { diff --git a/generic/tkWindow.c b/generic/tkWindow.c index 9d36e9f..633c065 100644 --- a/generic/tkWindow.c +++ b/generic/tkWindow.c @@ -99,7 +99,7 @@ static const XSetWindowAttributes defAtts= { typedef int (TkInitProc)(Tcl_Interp *interp, void *clientData); typedef struct { const char *name; /* Name of command. */ - Tcl_ObjCmdProc *objProc; /* Command's object- (or string-) based + Tcl_ObjCmdProc2 *objProc; /* Command's object- (or string-) based * function, or initProc. */ int flags; } TkCmd; @@ -126,7 +126,7 @@ static const TkCmd commands[] = { {"place", Tk_PlaceObjCmd, PASSMAINWINDOW|ISSAFE}, {"raise", Tk_RaiseObjCmd, PASSMAINWINDOW|ISSAFE}, {"selection", Tk_SelectionObjCmd, PASSMAINWINDOW}, - {"tk", (Tcl_ObjCmdProc *)(void *)TkInitTkCmd, USEINITPROC|PASSMAINWINDOW|ISSAFE}, + {"tk", (Tcl_ObjCmdProc2 *)(void *)TkInitTkCmd, USEINITPROC|PASSMAINWINDOW|ISSAFE}, {"tkwait", Tk_TkwaitObjCmd, PASSMAINWINDOW|ISSAFE}, {"update", Tk_UpdateObjCmd, PASSMAINWINDOW|ISSAFE|SAVEUPDATECMD}, {"winfo", Tk_WinfoObjCmd, PASSMAINWINDOW|ISSAFE}, @@ -966,16 +966,17 @@ TkCreateMainWindow( #if TCL_MAJOR_VERSION > 8 if ((cmdInfo.isNativeObjectProc == 2) && !cmdInfo.objClientData2) { mainPtr->tclUpdateObjProc2 = cmdInfo.objProc2; - } else -#endif + } +#else if (!cmdInfo.objClientData) { mainPtr->tclUpdateObjProc = cmdInfo.objProc; } +#endif } if (cmdPtr->flags & USEINITPROC) { ((TkInitProc *)(void *)cmdPtr->objProc)(interp, clientData); } else { - Tcl_CreateObjCommand(interp, cmdPtr->name, cmdPtr->objProc, + Tcl_CreateObjCommand2(interp, cmdPtr->name, cmdPtr->objProc, clientData, NULL); } if (isSafe && !(cmdPtr->flags & ISSAFE)) { @@ -1050,17 +1051,18 @@ TkCreateMainWindow( #endif #endif ; + if (info.isNativeObjectProc) { #if TCL_MAJOR_VERSION > 8 - if (info.isNativeObjectProc == 2) { Tcl_CreateObjCommand2(interp, "::tk::build-info", info.objProc2, (void *) version, NULL); - } else +#else + Tcl_CreateObjCommand(interp, "::tk::build-info", + info.objProc, (void *) + version, NULL); #endif - Tcl_CreateObjCommand(interp, "::tk::build-info", - info.objProc, (void *) - version, NULL); + } } /* @@ -1661,21 +1663,22 @@ Tk_DestroyWindow( cmdPtr->name, winPtr->mainPtr->tclUpdateObjProc2, NULL, NULL); - } else -#endif + } +#else if (winPtr->mainPtr->tclUpdateObjProc != NULL) { Tcl_CreateObjCommand(winPtr->mainPtr->interp, cmdPtr->name, winPtr->mainPtr->tclUpdateObjProc, NULL, NULL); } +#endif } else { - Tcl_CreateObjCommand(winPtr->mainPtr->interp, + Tcl_CreateObjCommand2(winPtr->mainPtr->interp, cmdPtr->name, TkDeadAppObjCmd, NULL, NULL); } } - Tcl_CreateObjCommand(winPtr->mainPtr->interp, "send", + Tcl_CreateObjCommand2(winPtr->mainPtr->interp, "send", TkDeadAppObjCmd, NULL, NULL); Tcl_UnlinkVar(winPtr->mainPtr->interp, "tk_strictMotif"); Tcl_UnlinkVar(winPtr->mainPtr->interp, diff --git a/generic/ttk/ttkTheme.c b/generic/ttk/ttkTheme.c index 2004e8c..bb85197 100644 --- a/generic/ttk/ttkTheme.c +++ b/generic/ttk/ttkTheme.c @@ -1200,7 +1200,7 @@ StyleMapCmd( Ttk_Theme theme = pkgPtr->currentTheme; const char *styleName; Style *stylePtr; - int i; + Tcl_Size i; if (objc < 3) { usage: @@ -1264,7 +1264,7 @@ static int StyleConfigureCmd( Ttk_Theme theme = pkgPtr->currentTheme; const char *styleName; Style *stylePtr; - int i; + Tcl_Size i; if (objc < 3) { usage: @@ -1400,7 +1400,7 @@ static int StyleThemeCreateCmd( Ttk_Theme parentTheme = pkgPtr->defaultTheme, newTheme; Tcl_Obj *settingsScript = NULL; const char *themeName; - int i; + Tcl_Size i; if (objc < 4 || objc % 2 != 0) { Tcl_WrongNumArgs(interp, 3, objv, "name ?-option value ...?"); @@ -1718,7 +1718,7 @@ static int StyleObjCmd( void *clientData, /* StylePackageData pointer */ Tcl_Interp *interp, /* Current interpreter */ - int objc, /* Number of arguments */ + Tcl_Size objc, /* Number of arguments */ Tcl_Obj *const objv[]) /* Argument objects */ { return Ttk_InvokeEnsemble(StyleEnsemble, 1, clientData,interp,objc,objv); @@ -1789,7 +1789,7 @@ void Ttk_StylePkgInit(Tcl_Interp *interp) /* * Register commands: */ - Tcl_CreateObjCommand(interp, "::ttk::style", StyleObjCmd, pkgPtr, 0); + Tcl_CreateObjCommand2(interp, "::ttk::style", StyleObjCmd, pkgPtr, 0); nsPtr = Tcl_FindNamespace(interp, "::ttk", NULL, TCL_LEAVE_ERR_MSG); Tcl_Export(interp, nsPtr, "style", 0 /* dontResetList */); diff --git a/generic/ttk/ttkWidget.c b/generic/ttk/ttkWidget.c index 242ada3..ecb7fd6 100644 --- a/generic/ttk/ttkWidget.c +++ b/generic/ttk/ttkWidget.c @@ -163,7 +163,7 @@ void TtkWidgetChangeState(WidgetCore *corePtr, */ static int WidgetInstanceObjCmd( - void *clientData, Tcl_Interp *interp, int objc, Tcl_Obj *const objv[]) + void *clientData, Tcl_Interp *interp, Tcl_Size objc, Tcl_Obj *const objv[]) { WidgetCore *corePtr = (WidgetCore *)clientData; const Ttk_Ensemble *commands = corePtr->widgetSpec->commands; @@ -380,7 +380,7 @@ int TtkWidgetConstructorObjCmd( corePtr->tkwin = tkwin; corePtr->interp = interp; corePtr->widgetSpec = widgetSpec; - corePtr->widgetCmd = Tcl_CreateObjCommand(interp, Tk_PathName(tkwin), + corePtr->widgetCmd = Tcl_CreateObjCommand2(interp, Tk_PathName(tkwin), WidgetInstanceObjCmd, recordPtr, WidgetInstanceObjCmdDeleted); corePtr->optionTable = optionTable; corePtr->layout = NULL; diff --git a/generic/ttk/ttkWidget.h b/generic/ttk/ttkWidget.h index 62a628d..a7a68e0 100644 --- a/generic/ttk/ttkWidget.h +++ b/generic/ttk/ttkWidget.h @@ -89,18 +89,12 @@ MODULE_SCOPE int TtkCoreConfigure(Tcl_Interp*, void *, int mask); /* Common widget commands: */ -MODULE_SCOPE int TtkWidgetCgetCommand( - void *,Tcl_Interp *, Tcl_Size, Tcl_Obj*const[]); -MODULE_SCOPE int TtkWidgetConfigureCommand( - void *,Tcl_Interp *, Tcl_Size, Tcl_Obj*const[]); -MODULE_SCOPE int TtkWidgetIdentifyCommand( - void *,Tcl_Interp *, Tcl_Size, Tcl_Obj*const[]); -MODULE_SCOPE int TtkWidgetInstateCommand( - void *,Tcl_Interp *, Tcl_Size, Tcl_Obj*const[]); -MODULE_SCOPE int TtkWidgetStateCommand( - void *,Tcl_Interp *, Tcl_Size, Tcl_Obj*const[]); -MODULE_SCOPE int TtkWidgetStyleCommand( - void *,Tcl_Interp *, Tcl_Size, Tcl_Obj*const[]); +MODULE_SCOPE Tcl_ObjCmdProc2 TtkWidgetCgetCommand; +MODULE_SCOPE Tcl_ObjCmdProc2 TtkWidgetConfigureCommand; +MODULE_SCOPE Tcl_ObjCmdProc2 TtkWidgetIdentifyCommand; +MODULE_SCOPE Tcl_ObjCmdProc2 TtkWidgetInstateCommand; +MODULE_SCOPE Tcl_ObjCmdProc2 TtkWidgetStateCommand; +MODULE_SCOPE Tcl_ObjCmdProc2 TtkWidgetStyleCommand; /* Widget constructor: */ @@ -112,7 +106,7 @@ MODULE_SCOPE Tcl_ObjCmdProc2 TtkWidgetConstructorObjCmd; TtkWidgetConstructorObjCmd, (void *)specPtr,NULL) #else #define RegisterWidget(interp, name, specPtr) \ - Tcl_CreateObjCommand(interp, name, \ + Tcl_CreateObjCommand2(interp, name, \ TtkWidgetConstructorObjCmd, (void *)specPtr,NULL) #endif diff --git a/macosx/tkMacOSXBitmap.c b/macosx/tkMacOSXBitmap.c index 39fd602..caccb14 100644 --- a/macosx/tkMacOSXBitmap.c +++ b/macosx/tkMacOSXBitmap.c @@ -343,7 +343,7 @@ int TkMacOSXIconBitmapObjCmd( TCL_UNUSED(void *), Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tcl_HashEntry *hPtr; diff --git a/macosx/tkMacOSXDialog.c b/macosx/tkMacOSXDialog.c index f2368ac..8ca605f 100644 --- a/macosx/tkMacOSXDialog.c +++ b/macosx/tkMacOSXDialog.c @@ -433,13 +433,13 @@ int Tk_ChooseColorObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { int result = TCL_ERROR; Tk_Window parent, tkwin = (Tk_Window)clientData; const char *title = NULL; - int i; + Tcl_Size i; NSColor *color = nil, *initialColor = nil; NSColorPanel *colorPanel; NSInteger returnCode, numberOfComponents = 0; @@ -689,12 +689,13 @@ int Tk_GetOpenFileObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tk_Window tkwin = (Tk_Window)clientData; char *str; - int i, result = TCL_ERROR, haveParentOption = 0; + Tcl_Size i; + int result = TCL_ERROR, haveParentOption = 0; int index, multiple = 0; Tcl_Size len; Tcl_Obj *cmdObj = NULL, *typeVariablePtr = NULL, *fileTypesPtr = NULL; @@ -961,12 +962,13 @@ int Tk_GetSaveFileObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tk_Window tkwin = (Tk_Window)clientData; char *str; - int i, result = TCL_ERROR, haveParentOption = 0; + Tcl_Size i; + int result = TCL_ERROR, haveParentOption = 0; int confirmOverwrite = 1; int index; Tcl_Size len; @@ -1204,14 +1206,15 @@ int Tk_ChooseDirectoryObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tk_Window tkwin = (Tk_Window)clientData; char *str; - int i, result = TCL_ERROR, haveParentOption = 0; + int result = TCL_ERROR, haveParentOption = 0; int index, mustexist = 0; Tcl_Size len; + Tcl_Size i; Tcl_Obj *cmdObj = NULL; NSString *directory = nil; NSString *message, *title; @@ -1354,7 +1357,7 @@ int TkMacOSXStandardAboutPanelObjCmd( TCL_UNUSED(void *), Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { if (objc > 1) { @@ -1385,12 +1388,13 @@ int Tk_MessageBoxObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tk_Window tkwin = (Tk_Window)clientData; char *str; - int i, result = TCL_ERROR, haveParentOption = 0; + Tcl_Size i; + int result = TCL_ERROR, haveParentOption = 0; int index, typeIndex, iconIndex, indexDefaultOption = 0; int defaultNativeButtonIndex = 1; /* 1, 2, 3: right to left */ Tcl_Obj *cmdObj = NULL; diff --git a/macosx/tkMacOSXFont.c b/macosx/tkMacOSXFont.c index ec8671b..9df184d 100644 --- a/macosx/tkMacOSXFont.c +++ b/macosx/tkMacOSXFont.c @@ -462,13 +462,13 @@ static int startOfClusterObjCmd( TCL_UNUSED(void *), Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { TKNSString *S; const char *stringArg; Tcl_Size len, idx; - if ((unsigned)(objc - 3) > 1) { + if ((size_t)(objc - 3) > 1) { Tcl_WrongNumArgs(interp, 1 , objv, "str start ?locale?"); return TCL_ERROR; } @@ -518,14 +518,14 @@ static int endOfClusterObjCmd( TCL_UNUSED(void *), Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { TKNSString *S; char *stringArg; Tcl_Size idx, len; - if ((unsigned)(objc - 3) > 1) { + if ((size_t)(objc - 3) > 1) { Tcl_WrongNumArgs(interp, 1 , objv, "str start ?locale?"); return TCL_ERROR; } @@ -667,8 +667,8 @@ TkpFontPkgInit( [cs release]; } [pool drain]; - Tcl_CreateObjCommand(interp, "::tk::startOfCluster", startOfClusterObjCmd, NULL, NULL); - Tcl_CreateObjCommand(interp, "::tk::endOfCluster", endOfClusterObjCmd, NULL, NULL); + Tcl_CreateObjCommand2(interp, "::tk::startOfCluster", startOfClusterObjCmd, NULL, NULL); + Tcl_CreateObjCommand2(interp, "::tk::endOfCluster", endOfClusterObjCmd, NULL, NULL); } /* diff --git a/macosx/tkMacOSXImage.c b/macosx/tkMacOSXImage.c index efd4d0a..580a112 100644 --- a/macosx/tkMacOSXImage.c +++ b/macosx/tkMacOSXImage.c @@ -1486,7 +1486,7 @@ int TkMacOSXNSImageObjCmd( void *clientData, /* Information about the image model. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { TkMacOSXNSImageModel *modelPtr = (TkMacOSXNSImageModel *)clientData; @@ -1603,7 +1603,7 @@ TkMacOSXNSImageCreate( TkMacOSXNSImageDelete(modelPtr); return TCL_ERROR; } - Tcl_CreateObjCommand(interp, name, TkMacOSXNSImageObjCmd, modelPtr, NULL); + Tcl_CreateObjCommand2(interp, name, TkMacOSXNSImageObjCmd, modelPtr, NULL); *clientDataPtr = modelPtr; return TCL_OK; } diff --git a/macosx/tkMacOSXInit.c b/macosx/tkMacOSXInit.c index ca3b90f..bcae214 100644 --- a/macosx/tkMacOSXInit.c +++ b/macosx/tkMacOSXInit.c @@ -34,8 +34,8 @@ static char scriptPath[PATH_MAX + 1] = ""; * Forward declarations... */ -static Tcl_ObjCmdProc TkMacOSXGetAppPathObjCmd; -static Tcl_ObjCmdProc TkMacOSVersionObjCmd; +static Tcl_ObjCmdProc2 TkMacOSXGetAppPathObjCmd; +static Tcl_ObjCmdProc2 TkMacOSVersionObjCmd; #pragma mark TKApplication(TKInit) @@ -686,15 +686,15 @@ TkpInit( Tcl_SetVar2(interp, "auto_path", NULL, scriptPath, TCL_GLOBAL_ONLY|TCL_LIST_ELEMENT|TCL_APPEND_VALUE); } - Tcl_CreateObjCommand(interp, "nsimage", + Tcl_CreateObjCommand2(interp, "nsimage", TkMacOSXNSImageObjCmd, NULL, NULL); - Tcl_CreateObjCommand(interp, "::tk::mac::standardAboutPanel", + Tcl_CreateObjCommand2(interp, "::tk::mac::standardAboutPanel", TkMacOSXStandardAboutPanelObjCmd, NULL, NULL); - Tcl_CreateObjCommand(interp, "::tk::mac::iconBitmap", + Tcl_CreateObjCommand2(interp, "::tk::mac::iconBitmap", TkMacOSXIconBitmapObjCmd, NULL, NULL); - Tcl_CreateObjCommand(interp, "::tk::mac::GetAppPath", + Tcl_CreateObjCommand2(interp, "::tk::mac::GetAppPath", TkMacOSXGetAppPathObjCmd, NULL, NULL); - Tcl_CreateObjCommand(interp, "::tk::mac::macOSVersion", + Tcl_CreateObjCommand2(interp, "::tk::mac::macOSVersion", TkMacOSVersionObjCmd, NULL, NULL); MacSystrayInit(interp); MacPrint_Init(interp); @@ -722,7 +722,7 @@ static int TkMacOSXGetAppPathObjCmd( TCL_UNUSED(void *), Tcl_Interp *interp, - int objc, + Tcl_Size objc, Tcl_Obj *const objv[]) { if (objc != 1) { @@ -810,7 +810,7 @@ static int TkMacOSVersionObjCmd( TCL_UNUSED(void *), Tcl_Interp *interp, - int objc, + Tcl_Size objc, Tcl_Obj *const objv[]) { static char version[16] = ""; diff --git a/macosx/tkMacOSXPrint.c b/macosx/tkMacOSXPrint.c index ac29714..a7eddb8 100644 --- a/macosx/tkMacOSXPrint.c +++ b/macosx/tkMacOSXPrint.c @@ -29,9 +29,9 @@ NSString * fileName = nil; CFStringRef urlFile = NULL; /*Forward declaration of functions.*/ -static Tcl_ObjCmdProc StartPrint; +static Tcl_ObjCmdProc2 StartPrint; static OSStatus FinishPrint(NSString *file, int buttonValue); -static Tcl_ObjCmdProc MakePDF; +static Tcl_ObjCmdProc2 MakePDF; int MacPrint_Init(Tcl_Interp * interp); /* Delegate class for print dialogs. */ @@ -80,7 +80,7 @@ int StartPrint( TCL_UNUSED(void *), Tcl_Interp * interp, - int objc, + Tcl_Size objc, Tcl_Obj *const objv[]) { NSPrintInfo * printInfo = [NSPrintInfo sharedPrintInfo]; @@ -345,7 +345,7 @@ FinishPrint( int MakePDF( TCL_UNUSED(void *), Tcl_Interp *ip, - int objc, + Tcl_Size objc, Tcl_Obj *const objv[]) { Tk_Window path; @@ -394,8 +394,8 @@ int MakePDF( int MacPrint_Init(Tcl_Interp * interp) { NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; - Tcl_CreateObjCommand(interp, "::tk::print::_print", StartPrint, NULL, NULL); - Tcl_CreateObjCommand(interp, "::tk::print::_printcanvas", MakePDF, NULL, NULL); + Tcl_CreateObjCommand2(interp, "::tk::print::_print", StartPrint, NULL, NULL); + Tcl_CreateObjCommand2(interp, "::tk::print::_printcanvas", MakePDF, NULL, NULL); [pool release]; return TCL_OK; } diff --git a/macosx/tkMacOSXPrivate.h b/macosx/tkMacOSXPrivate.h index c55c8ad..ec8525f 100644 --- a/macosx/tkMacOSXPrivate.h +++ b/macosx/tkMacOSXPrivate.h @@ -267,13 +267,12 @@ MODULE_SCOPE NSModalSession TkMacOSXGetModalSession(void); MODULE_SCOPE void TkMacOSXSelDeadWindow(TkWindow *winPtr); MODULE_SCOPE void TkMacOSXApplyWindowAttributes(TkWindow *winPtr, NSWindow *macWindow); -MODULE_SCOPE Tcl_ObjCmdProc TkMacOSXStandardAboutPanelObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc TkMacOSXIconBitmapObjCmd; -MODULE_SCOPE Tcl_ObjCmdProc TkMacOSXNSImageObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 TkMacOSXStandardAboutPanelObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 TkMacOSXIconBitmapObjCmd; +MODULE_SCOPE Tcl_ObjCmdProc2 TkMacOSXNSImageObjCmd; MODULE_SCOPE void TkMacOSXDrawSolidBorder(Tk_Window tkwin, GC gc, int inset, int thickness); MODULE_SCOPE int TkMacOSXServices_Init(Tcl_Interp *interp); -MODULE_SCOPE Tcl_ObjCmdProc TkMacOSXRegisterServiceWidgetObjCmd; MODULE_SCOPE unsigned TkMacOSXAddVirtual(unsigned int keycode); MODULE_SCOPE int TkMacOSXNSImage_Init(Tcl_Interp *interp); MODULE_SCOPE void TkMacOSXWinNSBounds(TkWindow *winPtr, NSView *view, diff --git a/macosx/tkMacOSXSend.c b/macosx/tkMacOSXSend.c index 9b18424..adff540 100644 --- a/macosx/tkMacOSXSend.c +++ b/macosx/tkMacOSXSend.c @@ -293,7 +293,7 @@ Tk_SetAppName( * TODO: DeleteProc */ - Tcl_CreateObjCommand(interp, "send", Tk_SendObjCmd, riPtr, NULL); + Tcl_CreateObjCommand2(interp, "send", Tk_SendObjCmd, riPtr, NULL); if (Tcl_IsSafe(interp)) { Tcl_HideCommand(interp, "send", "send"); } @@ -323,7 +323,7 @@ int Tk_SendObjCmd( TCL_UNUSED(void *), /* Not used */ Tcl_Interp *interp, /* The interp we are sending from */ - int objc, /* Number of arguments */ + Tcl_Size objc, /* Number of arguments */ Tcl_Obj *const objv[]) /* The arguments */ { enum { @@ -334,7 +334,8 @@ Tk_SendObjCmd( }; const char *stringRep, *destName; /*int async = 0;*/ - int i, firstArg, index; + Tcl_Size i, firstArg; + int index; RegisteredInterp *riPtr; Tcl_Obj *listObjPtr; int result = TCL_OK; @@ -397,7 +398,7 @@ Tk_SendObjCmd( Tcl_Preserve(riPtr); localInterp = riPtr->interp; Tcl_Preserve(localInterp); - if (firstArg == (objc - 1)) { + if (firstArg + 1 == objc) { /* * This might be one of those cases where the new parser is * faster. diff --git a/macosx/tkMacOSXSysTray.c b/macosx/tkMacOSXSysTray.c index 99ffc9b..2ba7238 100644 --- a/macosx/tkMacOSXSysTray.c +++ b/macosx/tkMacOSXSysTray.c @@ -194,7 +194,7 @@ static int MacSystrayObjCmd( void *clientData, Tcl_Interp * interp, - int objc, + Tcl_Size objc, Tcl_Obj *const *objv) { Tk_Image tk_image; @@ -400,7 +400,7 @@ MacSystrayObjCmd( static int SysNotifyObjCmd( TCL_UNUSED(void *), Tcl_Interp * interp, - int objc, + Tcl_Size objc, Tcl_Obj *const *objv) { if (objc < 3) { @@ -479,9 +479,9 @@ MacSystrayInit(Tcl_Interp *interp) StatusItemInfo info = (StatusItemInfo) ckalloc(sizeof(StatusItemInfo)); *info = 0; - Tcl_CreateObjCommand(interp, "::tk::systray::_systray", MacSystrayObjCmd, info, + Tcl_CreateObjCommand2(interp, "::tk::systray::_systray", MacSystrayObjCmd, info, MacSystrayDestroy); - Tcl_CreateObjCommand(interp, "::tk::sysnotify::_sysnotify", SysNotifyObjCmd, NULL, NULL); + Tcl_CreateObjCommand2(interp, "::tk::sysnotify::_sysnotify", SysNotifyObjCmd, NULL, NULL); return TCL_OK; } diff --git a/macosx/tkMacOSXTest.c b/macosx/tkMacOSXTest.c index 778ccd4..459c514 100644 --- a/macosx/tkMacOSXTest.c +++ b/macosx/tkMacOSXTest.c @@ -21,10 +21,10 @@ * Forward declarations of procedures defined later in this file: */ -static Tcl_ObjCmdProc PressButtonObjCmd; -static Tcl_ObjCmdProc MoveMouseObjCmd; -static Tcl_ObjCmdProc InjectKeyEventObjCmd; -static Tcl_ObjCmdProc MenuBarHeightObjCmd; +static Tcl_ObjCmdProc2 PressButtonObjCmd; +static Tcl_ObjCmdProc2 MoveMouseObjCmd; +static Tcl_ObjCmdProc2 InjectKeyEventObjCmd; +static Tcl_ObjCmdProc2 MenuBarHeightObjCmd; /* @@ -52,10 +52,10 @@ TkplatformtestInit( * Add commands for platform specific tests on MacOS here. */ - Tcl_CreateObjCommand(interp, "pressbutton", PressButtonObjCmd, NULL, NULL); - Tcl_CreateObjCommand(interp, "movemouse", MoveMouseObjCmd, NULL, NULL); - Tcl_CreateObjCommand(interp, "injectkeyevent", InjectKeyEventObjCmd, NULL, NULL); - Tcl_CreateObjCommand(interp, "menubarheight", MenuBarHeightObjCmd, NULL, NULL); + Tcl_CreateObjCommand2(interp, "pressbutton", PressButtonObjCmd, NULL, NULL); + Tcl_CreateObjCommand2(interp, "movemouse", MoveMouseObjCmd, NULL, NULL); + Tcl_CreateObjCommand2(interp, "injectkeyevent", InjectKeyEventObjCmd, NULL, NULL); + Tcl_CreateObjCommand2(interp, "menubarheight", MenuBarHeightObjCmd, NULL, NULL); return TCL_OK; } @@ -81,7 +81,7 @@ static int MenuBarHeightObjCmd( TCL_UNUSED(void *), /* Not used. */ Tcl_Interp *interp, /* Not used. */ - TCL_UNUSED(int), /* Not used. */ + TCL_UNUSED(Tcl_Size), /* Not used. */ TCL_UNUSED(Tcl_Obj *const *)) /* Not used. */ { static int height = 0; @@ -146,10 +146,11 @@ static int PressButtonObjCmd( TCL_UNUSED(void *), Tcl_Interp *interp, - int objc, + Tcl_Size objc, Tcl_Obj *const objv[]) { - int x = 0, y = 0, i, value; + int x = 0, y = 0, value; + Tcl_Size i; CGPoint pt; NSPoint loc; NSEvent *motion, *press, *release; @@ -245,10 +246,11 @@ static int MoveMouseObjCmd( TCL_UNUSED(void *), Tcl_Interp *interp, - int objc, + Tcl_Size objc, Tcl_Obj *const objv[]) { - int x = 0, y = 0, i, value; + int x = 0, y = 0, value; + Tcl_Size i; CGPoint pt; NSPoint loc; NSEvent *motion; @@ -305,7 +307,7 @@ static int InjectKeyEventObjCmd( TCL_UNUSED(void *), Tcl_Interp *interp, - int objc, + Tcl_Size objc, Tcl_Obj *const objv[]) { static const char *const optionStrings[] = { @@ -315,7 +317,8 @@ InjectKeyEventObjCmd( "-command", "-control", "-function", "-option", "-shift", "-x", "-y", NULL}; enum args {KEYEVENT_COMMAND, KEYEVENT_CONTROL, KEYEVENT_FUNCTION, KEYEVENT_OPTION, KEYEVENT_SHIFT, KEYEVENT_X, KEYEVENT_Y}; - int i, index, keysym, mods = 0, x = 0, y = 0; + Tcl_Size i; + int index, keysym, mods = 0, x = 0, y = 0; NSString *chars = nil, *unmod = nil, *upper, *lower; NSEvent *keyEvent; NSUInteger type; diff --git a/macosx/tkMacOSXWm.c b/macosx/tkMacOSXWm.c index 97a8940..8c1f508 100644 --- a/macosx/tkMacOSXWm.c +++ b/macosx/tkMacOSXWm.c @@ -1383,7 +1383,7 @@ int Tk_WmObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tk_Window tkwin = (Tk_Window)clientData; @@ -6243,7 +6243,7 @@ int TkUnsupported1ObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { static const char *const subcmds[] = { diff --git a/unix/tkUnixSend.c b/unix/tkUnixSend.c index eb73e14..a06d4af 100644 --- a/unix/tkUnixSend.c +++ b/unix/tkUnixSend.c @@ -837,7 +837,7 @@ Tk_SetAppName( riPtr->nextPtr = tsdPtr->interpListPtr; tsdPtr->interpListPtr = riPtr; riPtr->name = NULL; - Tcl_CreateObjCommand(interp, "send", Tk_SendObjCmd, riPtr, DeleteProc); + Tcl_CreateObjCommand2(interp, "send", Tk_SendObjCmd, riPtr, DeleteProc); if (Tcl_IsSafe(interp)) { Tcl_HideCommand(interp, "send", "send"); } @@ -947,7 +947,7 @@ Tk_SendObjCmd( TCL_UNUSED(void *), /* Information about sender (only dispPtr * field is used). */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument strings. */ { enum { @@ -961,7 +961,8 @@ Tk_SendObjCmd( Window commWindow; PendingCommand pending; RegisteredInterp *riPtr; - int result, async, i, firstArg, index; + int result, async, index; + Tcl_Size i, firstArg; Tk_RestrictProc *prevProc; void *prevArg; TkDisplay *dispPtr; diff --git a/unix/tkUnixSysNotify.c b/unix/tkUnixSysNotify.c index b9e635a..9a1fd73 100755 --- a/unix/tkUnixSysNotify.c +++ b/unix/tkUnixSysNotify.c @@ -47,7 +47,7 @@ TCL_DECLARE_MUTEX(ln_mutex); */ static Tcl_CmdDeleteProc SysNotifyDeleteCmd; -static Tcl_ObjCmdProc SysNotifyCmd; +static Tcl_ObjCmdProc2 SysNotifyCmd; /* *---------------------------------------------------------------------- @@ -102,7 +102,7 @@ static int SysNotifyCmd( TCL_UNUSED(void *), Tcl_Interp *interp, - int objc, + Tcl_Size objc, Tcl_Obj *const *objv) { const char *title; @@ -218,7 +218,7 @@ SysNotify_Init( Tcl_MutexUnlock(&ln_mutex); if (!notify_init) return TCL_OK; - Tcl_CreateObjCommand(interp, "::tk::sysnotify::_sysnotify", SysNotifyCmd, + Tcl_CreateObjCommand2(interp, "::tk::sysnotify::_sysnotify", SysNotifyCmd, interp, SysNotifyDeleteCmd); return TCL_OK; } diff --git a/unix/tkUnixSysTray.c b/unix/tkUnixSysTray.c index b6199ae..b3fc5bb 100644 --- a/unix/tkUnixSysTray.c +++ b/unix/tkUnixSysTray.c @@ -198,8 +198,8 @@ typedef struct { * Forward declarations for procedures defined in this file. */ -static Tcl_ObjCmdProc TrayIconCreateCmd; -static Tcl_ObjCmdProc TrayIconObjectCmd; +static Tcl_ObjCmdProc2 TrayIconCreateCmd; +static Tcl_ObjCmdProc2 TrayIconObjectCmd; static int TrayIconConfigureMethod(DockIcon *icon, Tcl_Interp *interp, Tcl_Size objc, Tcl_Obj *const objv[], int addflags); static int PostBalloon(DockIcon* icon, const char *utf8msg, @@ -248,7 +248,7 @@ static int TrayIconObjectCmd( void *cd, Tcl_Interp *interp, - int objc, + Tcl_Size objc, Tcl_Obj *const objv[]) { DockIcon *icon = (DockIcon*)cd; @@ -1586,7 +1586,7 @@ static int TrayIconCreateCmd( void *cd, Tcl_Interp *interp, - int objc, + Tcl_Size objc, Tcl_Obj *const objv[]) { Tk_Window mainWindow = (Tk_Window)cd; @@ -1658,7 +1658,7 @@ TrayIconCreateCmd( } } - icon->widgetCmd = Tcl_CreateObjCommand(interp, Tcl_GetString(objv[1]), + icon->widgetCmd = Tcl_CreateObjCommand2(interp, Tcl_GetString(objv[1]), TrayIconObjectCmd, icon, TrayIconDeleteProc); /* Sometimes a command just can't be created... */ @@ -1705,7 +1705,7 @@ int Tktray_Init( Tcl_Interp *interp) { - Tcl_CreateObjCommand(interp, "::tk::systray::_systray", + Tcl_CreateObjCommand2(interp, "::tk::systray::_systray", TrayIconCreateCmd, Tk_MainWindow(interp), NULL); return TCL_OK; } diff --git a/unix/tkUnixWm.c b/unix/tkUnixWm.c index be74d4f..fc83324 100644 --- a/unix/tkUnixWm.c +++ b/unix/tkUnixWm.c @@ -1012,7 +1012,7 @@ int Tk_WmObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tk_Window tkwin = (Tk_Window)clientData; diff --git a/win/tkWinDialog.c b/win/tkWinDialog.c index efd3a4b..1b058ec 100644 --- a/win/tkWinDialog.c +++ b/win/tkWinDialog.c @@ -569,14 +569,14 @@ static UINT CALLBACK ColorDlgHookProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam); static void CleanupOFNOptions(OFNOpts *optsPtr); static int ParseOFNOptions(void *clientData, - Tcl_Interp *interp, int objc, + Tcl_Interp *interp, Tcl_Size objc, Tcl_Obj *const objv[], enum OFNOper oper, OFNOpts *optsPtr); static int GetFileNameXP(Tcl_Interp *interp, OFNOpts *optsPtr, enum OFNOper oper); static int GetFileNameVista(Tcl_Interp *interp, OFNOpts *optsPtr, enum OFNOper oper); static int GetFileName(void *clientData, - Tcl_Interp *interp, int objc, + Tcl_Interp *interp, Tcl_Size objc, Tcl_Obj *const objv[], enum OFNOper oper); static int MakeFilterVista(Tcl_Interp *interp, OFNOpts *optsPtr, DWORD *countPtr, TCLCOMDLG_FILTERSPEC **dlgFilterPtrPtr, @@ -692,12 +692,13 @@ int Tk_ChooseColorObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tk_Window tkwin = (Tk_Window)clientData, parent; HWND hWnd; - int i, oldMode, winCode, result; + Tcl_Size i; + int oldMode, winCode, result; CHOOSECOLORW chooseColor; static int inited = 0; static COLORREF dwCustColors[16]; @@ -900,7 +901,7 @@ int Tk_GetOpenFileObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { return GetFileName(clientData, interp, objc, objv, OFN_FILE_OPEN); @@ -927,7 +928,7 @@ int Tk_GetSaveFileObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { return GetFileName(clientData, interp, objc, objv, OFN_FILE_SAVE); @@ -974,12 +975,12 @@ static int ParseOFNOptions( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[], /* Argument objects. */ enum OFNOper oper, /* 1 for Open, 0 for Save */ OFNOpts *optsPtr) /* Output, uninitialized on entry */ { - int i; + Tcl_Size i; Tcl_DString ds; enum options { FILE_DEFAULT, FILE_TYPES, FILE_INITDIR, FILE_INITFILE, FILE_PARENT, @@ -1812,7 +1813,7 @@ static int GetFileName( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[], /* Argument objects. */ enum OFNOper oper) /* 1 to call GetOpenFileName(), 0 to call * GetSaveFileName(). */ @@ -2369,7 +2370,7 @@ int Tk_ChooseDirectoryObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { WCHAR path[MAX_PATH]; @@ -2727,14 +2728,14 @@ int Tk_MessageBoxObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tk_Window tkwin = (Tk_Window)clientData, parent; HWND hWnd; Tcl_Obj *messageObj, *titleObj, *detailObj, *tmpObj; - int defaultBtn, icon, type; - int i, oldMode, winCode; + int defaultBtn, icon, type, oldMode, winCode; + Tcl_Size i; UINT flags; static const char *const optionStrings[] = { "-default", "-detail", "-icon", "-message", diff --git a/win/tkWinGDI.c b/win/tkWinGDI.c index 4d0c129..7351ee6 100644 --- a/win/tkWinGDI.c +++ b/win/tkWinGDI.c @@ -85,13 +85,13 @@ static void GetDisplaySize(LONG *width, LONG *height); static int GdiWordToWeight(const char *str); static int GdiParseFontWords(Tcl_Interp *interp, LOGFONTW *lf, const char *str[], int numargs); -static Tcl_ObjCmdProc PrintSelectPrinter; -static Tcl_ObjCmdProc PrintOpenPrinter; -static Tcl_ObjCmdProc PrintClosePrinter; -static Tcl_ObjCmdProc PrintOpenDoc; -static Tcl_ObjCmdProc PrintCloseDoc; -static Tcl_ObjCmdProc PrintOpenPage; -static Tcl_ObjCmdProc PrintClosePage; +static Tcl_ObjCmdProc2 PrintSelectPrinter; +static Tcl_ObjCmdProc2 PrintOpenPrinter; +static Tcl_ObjCmdProc2 PrintClosePrinter; +static Tcl_ObjCmdProc2 PrintOpenDoc; +static Tcl_ObjCmdProc2 PrintCloseDoc; +static Tcl_ObjCmdProc2 PrintOpenPage; +static Tcl_ObjCmdProc2 PrintClosePage; /* * Global state. @@ -3548,19 +3548,19 @@ int Winprint_Init( * The other printing-related commands. */ - Tcl_CreateObjCommand(interp, "::tk::print::_selectprinter", + Tcl_CreateObjCommand2(interp, "::tk::print::_selectprinter", PrintSelectPrinter, NULL, NULL); - Tcl_CreateObjCommand(interp, "::tk::print::_openprinter", + Tcl_CreateObjCommand2(interp, "::tk::print::_openprinter", PrintOpenPrinter, NULL, NULL); - Tcl_CreateObjCommand(interp, "::tk::print::_closeprinter", + Tcl_CreateObjCommand2(interp, "::tk::print::_closeprinter", PrintClosePrinter, NULL, NULL); - Tcl_CreateObjCommand(interp, "::tk::print::_opendoc", + Tcl_CreateObjCommand2(interp, "::tk::print::_opendoc", PrintOpenDoc, NULL, NULL); - Tcl_CreateObjCommand(interp, "::tk::print::_closedoc", + Tcl_CreateObjCommand2(interp, "::tk::print::_closedoc", PrintCloseDoc, NULL, NULL); - Tcl_CreateObjCommand(interp, "::tk::print::_openpage", + Tcl_CreateObjCommand2(interp, "::tk::print::_openpage", PrintOpenPage, NULL, NULL); - Tcl_CreateObjCommand(interp, "::tk::print::_closepage", + Tcl_CreateObjCommand2(interp, "::tk::print::_closepage", PrintClosePage, NULL, NULL); return TCL_OK; } @@ -3582,7 +3582,7 @@ int Winprint_Init( static int PrintSelectPrinter( TCL_UNUSED(void *), Tcl_Interp *interp, - TCL_UNUSED(int), + TCL_UNUSED(Tcl_Size), TCL_UNUSED(Tcl_Obj* const*)) { LPCWSTR printerName = NULL; @@ -3683,7 +3683,7 @@ static int PrintSelectPrinter( int PrintOpenPrinter( TCL_UNUSED(void *), Tcl_Interp *interp, - int objc, + Tcl_Size objc, Tcl_Obj *const objv[]) { Tcl_DString ds; @@ -3733,7 +3733,7 @@ int PrintOpenPrinter( int PrintClosePrinter( TCL_UNUSED(void *), Tcl_Interp *interp, - TCL_UNUSED(int), + TCL_UNUSED(Tcl_Size), TCL_UNUSED(Tcl_Obj *const *)) { if (printDC == NULL) { @@ -3761,7 +3761,7 @@ int PrintClosePrinter( int PrintOpenDoc( TCL_UNUSED(void *), Tcl_Interp *interp, - TCL_UNUSED(int), + TCL_UNUSED(Tcl_Size), TCL_UNUSED(Tcl_Obj *const *)) { int output = 0; @@ -3799,7 +3799,7 @@ int PrintOpenDoc( int PrintCloseDoc( TCL_UNUSED(void *), Tcl_Interp *interp, - TCL_UNUSED(int), + TCL_UNUSED(Tcl_Size), TCL_UNUSED(Tcl_Obj *const *)) { if (printDC == NULL) { @@ -3831,7 +3831,7 @@ int PrintCloseDoc( int PrintOpenPage( TCL_UNUSED(void *), Tcl_Interp *interp, - TCL_UNUSED(int), + TCL_UNUSED(Tcl_Size), TCL_UNUSED(Tcl_Obj *const *)) { if (printDC == NULL) { @@ -3864,7 +3864,7 @@ int PrintOpenPage( int PrintClosePage( TCL_UNUSED(void *), Tcl_Interp *interp, - TCL_UNUSED(int), + TCL_UNUSED(Tcl_Size), TCL_UNUSED(Tcl_Obj *const *)) { if (printDC == NULL) { diff --git a/win/tkWinMenu.c b/win/tkWinMenu.c index 2795724..e69a689 100644 --- a/win/tkWinMenu.c +++ b/win/tkWinMenu.c @@ -176,7 +176,7 @@ static void GetTearoffEntryGeometry(TkMenu *menuPtr, const Tk_FontMetrics *fmPtr, int *widthPtr, int *heightPtr); static int GetNewID(TkMenuEntry *mePtr, WORD *menuIDPtr); -static Tcl_ObjCmdProc TkWinMenuKeyObjCmd; +static Tcl_ObjCmdProc2 TkWinMenuKeyObjCmd; static void MenuSelectEvent(TkMenu *menuPtr); static void ReconfigureWindowsMenu(void *clientData); static void RecursivelyClearActiveMenu(TkMenu *menuPtr); @@ -2143,7 +2143,7 @@ static int TkWinMenuKeyObjCmd( TCL_UNUSED(void *), Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { UINT scanCode; @@ -2283,7 +2283,7 @@ TkpInitializeMenuBindings( * binding in Tcl code. */ - (void) Tcl_CreateObjCommand(interp, "tk::WinMenuKey", + (void) Tcl_CreateObjCommand2(interp, "tk::WinMenuKey", TkWinMenuKeyObjCmd, Tk_MainWindow(interp), NULL); (void) Tk_CreateBinding(interp, bindingTable, (void *)uid, diff --git a/win/tkWinSend.c b/win/tkWinSend.c index 630b218..90f2c14 100644 --- a/win/tkWinSend.c +++ b/win/tkWinSend.c @@ -172,7 +172,7 @@ Tk_SetAppName( hr = TkWinSendCom_CreateInstance(interp, &IID_IUnknown, (void **) objPtr); - Tcl_CreateObjCommand(interp, "send", Tk_SendObjCmd, riPtr, + Tcl_CreateObjCommand2(interp, "send", Tk_SendObjCmd, riPtr, CmdDeleteProc); if (Tcl_IsSafe(interp)) { Tcl_HideCommand(interp, "send", "send"); @@ -323,7 +323,7 @@ Tk_SendObjCmd( void *clientData, /* Information about sender (only dispPtr * field is used). */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument strings. */ { enum { @@ -334,7 +334,8 @@ Tk_SendObjCmd( }; const char *stringRep; int result = TCL_OK; - int i, async = 0, index; + int async = 0, index; + Tcl_Size i; /* * Process the command options. diff --git a/win/tkWinSysTray.c b/win/tkWinSysTray.c index 6c56735..871650e 100644 --- a/win/tkWinSysTray.c +++ b/win/tkWinSysTray.c @@ -901,7 +901,7 @@ static int WinSystrayCmd( void *clientData, Tcl_Interp *interp, - int objc, + Tcl_Size objc, Tcl_Obj *const objv[]) { static const char *const cmdStrings[] = { @@ -915,7 +915,7 @@ WinSystrayCmd( int cmd, opt; HICON hIcon; - int i; + Tcl_Size i; IcoInterpInfo *icoInterpPtr = (IcoInterpInfo*) clientData; IcoInfo *icoPtr = NULL; @@ -1062,7 +1062,7 @@ static int WinSysNotifyCmd( void *clientData, Tcl_Interp *interp, - int objc, + Tcl_Size objc, Tcl_Obj *const objv[]) { IcoInterpInfo *icoInterpPtr = (IcoInterpInfo*) clientData; @@ -1158,9 +1158,9 @@ WinIcoInit( icoInterpPtr->hwnd = CreateTaskbarHandlerWindow(); icoInterpPtr->nextPtr = firstIcoInterpPtr; firstIcoInterpPtr = icoInterpPtr; - Tcl_CreateObjCommand(interp, "::tk::systray::_systray", WinSystrayCmd, + Tcl_CreateObjCommand2(interp, "::tk::systray::_systray", WinSystrayCmd, icoInterpPtr, NULL); - Tcl_CreateObjCommand(interp, "::tk::sysnotify::_sysnotify", WinSysNotifyCmd, + Tcl_CreateObjCommand2(interp, "::tk::sysnotify::_sysnotify", WinSysNotifyCmd, icoInterpPtr, NULL); Tk_CreateEventHandler(mainWindow, StructureNotifyMask, diff --git a/win/tkWinTest.c b/win/tkWinTest.c index 4e993af..a562ce1 100644 --- a/win/tkWinTest.c +++ b/win/tkWinTest.c @@ -26,11 +26,11 @@ HWND tkWinCurrentDialog; * Forward declarations of functions defined later in this file: */ -static Tcl_ObjCmdProc TestclipboardObjCmd; -static Tcl_ObjCmdProc TestwineventObjCmd; -static Tcl_ObjCmdProc TestfindwindowObjCmd; -static Tcl_ObjCmdProc TestgetwindowinfoObjCmd; -static Tcl_ObjCmdProc TestwinlocaleObjCmd; +static Tcl_ObjCmdProc2 TestclipboardObjCmd; +static Tcl_ObjCmdProc2 TestwineventObjCmd; +static Tcl_ObjCmdProc2 TestfindwindowObjCmd; +static Tcl_ObjCmdProc2 TestgetwindowinfoObjCmd; +static Tcl_ObjCmdProc2 TestwinlocaleObjCmd; static Tk_GetSelProc SetSelectionResult; /* @@ -58,15 +58,15 @@ TkplatformtestInit( * Add commands for platform specific tests on MacOS here. */ - Tcl_CreateObjCommand(interp, "testclipboard", TestclipboardObjCmd, + Tcl_CreateObjCommand2(interp, "testclipboard", TestclipboardObjCmd, Tk_MainWindow(interp), NULL); - Tcl_CreateObjCommand(interp, "testwinevent", TestwineventObjCmd, + Tcl_CreateObjCommand2(interp, "testwinevent", TestwineventObjCmd, Tk_MainWindow(interp), NULL); - Tcl_CreateObjCommand(interp, "testfindwindow", TestfindwindowObjCmd, + Tcl_CreateObjCommand2(interp, "testfindwindow", TestfindwindowObjCmd, Tk_MainWindow(interp), NULL); - Tcl_CreateObjCommand(interp, "testgetwindowinfo", TestgetwindowinfoObjCmd, + Tcl_CreateObjCommand2(interp, "testgetwindowinfo", TestgetwindowinfoObjCmd, Tk_MainWindow(interp), NULL); - Tcl_CreateObjCommand(interp, "testwinlocale", TestwinlocaleObjCmd, + Tcl_CreateObjCommand2(interp, "testwinlocale", TestwinlocaleObjCmd, Tk_MainWindow(interp), NULL); return TCL_OK; } @@ -231,7 +231,7 @@ static int TestclipboardObjCmd( void *clientData, /* Main window for application. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument values. */ { Tk_Window tkwin = (Tk_Window)clientData; @@ -265,7 +265,7 @@ static int TestwineventObjCmd( TCL_UNUSED(void *), Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument strings. */ { HWND hwnd = 0; @@ -430,7 +430,7 @@ static int TestfindwindowObjCmd( TCL_UNUSED(void *), Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument values. */ { LPCWSTR title = NULL, windowClass = NULL; @@ -502,7 +502,7 @@ static int TestgetwindowinfoObjCmd( TCL_UNUSED(void *), Tcl_Interp *interp, - int objc, + Tcl_Size objc, Tcl_Obj *const objv[]) { Tcl_WideInt hwnd; @@ -559,7 +559,7 @@ static int TestwinlocaleObjCmd( TCL_UNUSED(void *), /* Main window for application. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument values. */ { if (objc != 1) { diff --git a/win/tkWinWm.c b/win/tkWinWm.c index c2d1683..419e9fe 100644 --- a/win/tkWinWm.c +++ b/win/tkWinWm.c @@ -2693,7 +2693,7 @@ int Tk_WmObjCmd( void *clientData, /* Main window associated with interpreter. */ Tcl_Interp *interp, /* Current interpreter. */ - int objc, /* Number of arguments. */ + Tcl_Size objc, /* Number of arguments. */ Tcl_Obj *const objv[]) /* Argument objects. */ { Tk_Window tkwin = (Tk_Window)clientData; |
