| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
press state saving code, it was incorrectly converting
normal motion events into button press and motion
events in some cases.
* generic/tkInt.h: Add mouseButtonWindow member
to the TkDisplay structure.
* tests/event.test: Add test case for faulty
button motion logic.
|
|
|
|
|
| |
Reworked windowObj type.
Fixes Tk Bug #671330 "segfault when e.g. deiconifying destroyed window"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tk.decls:
* generic/tkInt.decls: added new "aqua" specific entries to the
stubs tables. Changed all "unix" entries to "x11" to allow us to
distinguish and build both "aqua" on MacOSX and "x11" on MacOSX.
* generic/tk.h: added a #ifnded RESOURCE_INCLUDED so that tk.h can
be passed to the resource compiler.
* generic/tkCmds.c (Tk_TkObjCmd): added [tk windowingsystem]
subcommand: returns "x11" when running on X11, "win32" on Windows,
"classic" on MacOS9 and "aqua" on MacOSX Aqua (i.e. Carbon)
* generic/tkFont.c (TkFontGetFirstTextLayout): new private function
returning the first chunk of a Tk_TextLayout, i.e. until the first
font change on the first line (or the whole first line if there is
no such font change).
* generic/tkMain.c: made Tcl_ThreadDataKey static
* library/demos/puzzle.tcl: fixed button metrics for aqua
* tests/cursor.test: check for presence of arrow cursor instead of
heart cursor
* xlib/xcolors.c: changed xColors static initialization to more
standard C
* macosx/Wish.pbproj/jingham.pbxuser (new):
* macosx/Wish.pbproj/project.pbxproj (new): project for Apple's
ProjectBuilder IDE.
* macosx/Makefile (new): simple makefile for building the project
from the command line via the ProjectBuilder tool 'pbxbuild'.
* macosx/tkMacOSXAppInit.c (new): macosx specific AppInit looking
for a AppMain.tcl file in its bundled Resources/Scripts folder. If
present, argv[1] is set to that file and the Scripts folder is
added to the auto_path. This allows tk apps to embed scripts within
their bundle directory structure.
* macosx/tkMacOSXInit.c (new): macosx adapted version of
tkUnixInit.c: we initialize & cache the Carbon native encoding
(e.g. 'macRoman') and try to find the tk script library files
inside Tk packaged as a framework.
* macosx/tkMacOSXNotify.c (new): new macosx specific merged
Carbon/select-based notifier.
* macosx/tkMacOSXEvent.c (new):
* macosx/tkMacOSXEvent.h (new):
* macosx/tkMacOSXKeyEvent.c (new):
* macosx/tkMacOSXMouseEvent.c (new):
* macosx/tkMacOSXWindowEvent.c (new): new macosx specific event
handling functionality.
* macosx/tkMacOSX.h (new):
* macosx/tkMacOSXBitmap.c (new):
* macosx/tkMacOSXButton.c (new):
* macosx/tkMacOSXClipboard.c (new):
* macosx/tkMacOSXColor.c (new):
* macosx/tkMacOSXConfig.c (new):
* macosx/tkMacOSXCursor.c (new):
* macosx/tkMacOSXDefault.h (new):
* macosx/tkMacOSXDialog.c (new):
* macosx/tkMacOSXDraw.c (new):
* macosx/tkMacOSXEmbed.c (new):
* macosx/tkMacOSXFont.c (new):
* macosx/tkMacOSXHLEvents.c (new):
* macosx/tkMacOSXInt.h (new):
* macosx/tkMacOSXKeyboard.c (new):
* macosx/tkMacOSXMenu.c (new):
* macosx/tkMacOSXMenubutton.c (new):
* macosx/tkMacOSXMenus.c (new):
* macosx/tkMacOSXPort.h (new):
* macosx/tkMacOSXRegion.c (new):
* macosx/tkMacOSXScale.c (new):
* macosx/tkMacOSXScrlbr.c (new):
* macosx/tkMacOSXSubwindows.c (new):
* macosx/tkMacOSXTest.c (new):
* macosx/tkMacOSXUtil.c (new):
* macosx/tkMacOSXUtil.h (new):
* macosx/tkMacOSXWm.c (new):
* macosx/tkMacOSXWm.h (new):
* macosx/tkMacOSXXStubs.c (new): macosx ports of classic mac Tk
implementation in tk/mac.
* macosx/tkMacOSXSend.c (new): only send to local interp
implemented currently.
* macosx/tkMacOSXDebug.h (new):
* macosx/tkMacOSXDebug.c (new): new macosx specific functions for
debugging MacOS events, regions, etc.
* macosx/tkAboutDlg.r (new):
* macosx/tkMacOSXApplication.r (new):
* macosx/tkMacOSXCursors.r (new):
* macosx/tkMacOSXLibrary.r (new):
* macosx/tkMacOSXMenu.r (new):
* macosx/tkMacOSXResource.r (new):
* macosx/tkMacOSXXCursors.r (new):
* macosx/tclets.r (new): sources for Rez resource compiler.
* macosx/Wish.icns (new): Wish application icon.
* generic/tk.h:
* generic/default.h:
* generic/tkBind.c:
* generic/tkCmds.c:
* generic/tkGrab.c:
* generic/tkPointer.c:
* generic/tkPort.h:
* generic/tkSelect.c:
* generic/tkStubLib.c:
* generic/tkTest.c:
* generic/tkText.c:
* generic/tkWindow.c:
* unix/tkUnix3d.c:
* xlib/xgc.c:
* xlib/X11/X.h:
* xlib/X11/Xlib.h:
* xlib/X11/Xutil.h: added #includes and #ifdefs for macosx
* library/bgerror.tcl:
* library/button.tcl:
* library/console.tcl:
* library/dialog.tcl:
* library/entry.tcl:
* library/listbox.tcl:
* library/menu.tcl:
* library/msgbox.tcl:
* library/scrlbar.tcl:
* library/spinbox.tcl:
* library/text.tcl:
* library/tk.tcl:
* library/demos/menu.tcl:
* library/demos/menubu.tcl:
* library/demos/widget: check [tk windowingsystem] instead of
and/or in addition to $tcl_platform(platform).
* generic/tkInt.h:
* mac/tkMacBitmap.c:
* mac/tkMacWm.c: added missing CONSTification
* generic/tkIntDecls.h:
* generic/tkIntPlatDecls.h:
* generic/tkIntXlibDecls.h:
* generic/tkPlatDecls.h:
* generic/tkStubInit.c: regen
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
updating Tk to use Tcl 8.4's fully CONST-ified
interface, and fully CONSTifying Tk at the
same time.
This patch includes purging Tk of its last
direct access to interp->result. [Bug 589853]
The substantial changes include copying
event sequence strings into Tcl_DStrings
in tkBind.c, and copying [text] indices into
Tcl_DStrings because parsing them involved
overwriting them. If this causes performance
trouble, that can be resolved by further
converting them to Tcl_Obj's.
The #defines USE_NON_CONST and USE_COMPAT_CONST
have the same effect for Tk as they do for Tcl.
(They actually change tcl.h)
|
| |
|
|
|
|
| |
Frederic Bonnet to supply docs+tests as soon as possible.
|
|
|
|
|
|
|
|
|
|
| |
* generic/tkInt.h (struct TkCaret):
* mac/tkMacXStubs.c (Tk_SetCaretPos):
* unix/tkUnixKey.c (TkpGetString, Tk_SetCaretPos):
* win/tkWinX.c (Tk_SetCaretPos):
* tests/tk.test: Added 'tk caret' implementation of TIP#96
* doc/SetCaret.3 (new): which adds a TkCaret structure element to
* doc/tk.n: TkDisplay for maintaining state.
|
|
|
|
|
| |
* generic/tkInt.h: changed warpInProgress boolean from int to a
bit in the flags variable (TK_DISPLAY_IN_WARP)
|
|
|
|
|
|
|
| |
* unix/tkUnixKey.c (TkpGetString):
* generic/tkEvent.c (Tk_HandleEvent):
* generic/tkInt.h: changed useInputMethods boolean from int to a
bit in the flags variable (TK_DISPLAY_USE_IM)
|
|
|
|
|
|
|
| |
* generic/tkCmds.c (Tk_WmObjCmd):
* unix/tkUnixWm.c (Tk_WmCmd):
* win/tkWinWm.c (Tk_WmCmd): changed wmTracing from being an int to
just a bit in the flags variable (TK_DISPLAY_WM_TRACING)
|
|
|
|
|
|
|
|
|
| |
* unix/tkUnixEvent.c (OpenIM):
* unix/tkUnixKey.c (TkpGetString):
* generic/tkInt.h: added TK_USE_XIM_SPOT flag bit for TkDisplay
and used this to allow a runtime check to see if over-the-spot XIM
is possible. If not it will try and fallback to the old-style
input context, which handles things like dead keys input.
|
|
|
|
|
|
|
|
|
| |
* generic/tkDecls.h: Tk_CollapseMotionEvents API which controls
* generic/tkEvent.c: Tk's collapsing of incoming motion events
* generic/tkInt.h: on its windows. The default remains to do
* generic/tkStubInit.c: collapsing. Added a flags parameter to the
* generic/tkWindow.c: internal display structure to support this
* doc/QWinEvent.3: and be used in the future for other bits.
|
|
|
|
|
|
| |
* unix/tkUnixXId.c (TkFreeXId): frees XID resources.
Made idCleanupScheduled a Tcl_TimerToken (was int) in TkDisplay
structure to allow us to delete the timer scheduled for it.
|
|
|
|
|
|
|
|
| |
Added XFontSet attribute to TkDisplay when TK_XIM_SPOT is true.
* generic/tkEvent.c (Tk_HandleEvent): made sure inputContexts are
not getting created on DestroyNotify events (for dead windows).
Added over-the-spot support if TK_XIM_SPOT is defined (default).
The is the nicer XIM behavior, but uses a bit more memory.
|
| |
|
|
|
|
| |
[Tcl Patch 503565, Tk Patch 503983]
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* library/entry.tcl:
* library/spinbox.tcl:
* library/text.tcl:
* library/tk.tcl: added private ::tk::GetSelection command to
handle requesting selection. This is to support requesting
UTF8_STRING before generic STRING on Unix. Changed Text, Spinbox,
Entry and Console to use this command.
* tests/select.test:
* generic/tkSelect.c (Tk_CreateSelHandler, Tk_DeleteSelHandler):
on Unix, a UTF8_STRING handler will be created when the user
requests a STRING handler (in addition to the STRING handler).
This provides implicit support for the new UTF8_STRING selection
target.
* unix/tkUnixSelect.c (TkSelEventProc, ConvertSelection): Added
support for UTF8_STRING target. [RFE #418653, Patch #433283]
* generic/tkInt.h: added utf8Atom to TkDisplay structure.
|
|
|
|
|
|
|
|
|
| |
TkClassProcs/TkSetClassProcs as Tk_ClassProcs/Tk_SetClassProcs,
adding a size field to Tk_ClassProcs to allow for future
expansion, and renaming the geometryProc to worldChangedProc,
which is more in keeping with the actual use of the callback.
See ChangeLog for details.
|
|
|
|
|
|
|
|
|
|
|
|
| |
[place].
* generic/tkInt.h: Replaced Tk_PlaceCmd prototype with
Tk_PlaceObjCmd prototype.
* generic/tkWindow.c: Updated [place] command entry to use new
Tcl_Obj interface.
* generic/tkPlace.c (Tk_PlaceObjCmd): Tcl_Obj'ified [place] command.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
new Tcl_Obj interface.
* generic/tkInt.h: Replaced Tk_SelectionCmd prototype with
Tk_SelectionObjCmd prototype.
* tests/select.test: Updated test suite to recognize standardized
error messages.
* generic/tkSelect.c (Tk_SelectionObjCmd): Tcl_Obj'ified
[selection] command.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Tcl_Obj'ified command.
* generic/tkInt.h: Replaced Tk_GrabCmd prototype with
Tk_GrabObjCmd prototype.
* tests/grab.test: Initial suite of tests for [grab] command.
* generic/tkGrab.c (Tk_GrabObjCmd): Tcl_Obj'ified [grab] command.
* generic/tkCmds.c: Fixed casting problem in Tk_BindtagsObjCmd.
|
|
|
|
|
|
|
|
| |
function does not exist (since 7.4p3).
* generic/tk.h: Removed Tk_AfterCmd => Tcl_AfterCmd #define;
nothing in the core uses it, and Tcl_AfterCmd doesn't exist
anymore anyway.
|
|
|
|
|
|
|
|
|
| |
Tk_BindObjCmd prototype.
* generic/tkWindow.c: Updated "bind" command entry to use
Tcl_Obj'ified command.
* generic/tkCmds.c (Tk_BindObjCmd): Tcl_Obj'ified [bind] command.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
to comply with updated error messages.
* generic/tkMenu.c (CloneMenu): Replaced calls to Tk_BindtagsCmd
with equivalent calls to Tk_BindtagsObjCmd.
* generic/tkInt.h: Replace Tk_BindtagsCmd prototype with
Tk_BindtagsObjCmd prototype.
* generic/tkWindow.c: Updated "bindtags" command entry to use
Tcl_Obj'ified command.
* generic/tkCmds.c (Tk_BindtagsObjCmd): Tcl_Obj'ified [bindtags]
command.
|
|
|
|
|
|
|
|
| |
* generic/tkWindow.c: Updated "tkwait" command entry to use
Tcl_Obj'ified command.
* generic/tkInt.h: Replace Tk_TkwaitCmd prototype with
Tk_TkwaitObjCmd prototype.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
prototype for Tk_MessageObjCmd.
* generic/tkWindow.c: Marked message command as using the new
MessageObjCmd instead of the old MessageCmd.
* tests/message.test: Added tests for the message widget.
* generic/tkMessage.c: Obj'ified the message widget.
* generic/tkInt.h: Removed prototype for Tk_ClipboardCmd, added
prototype for Tk_ClipboardObjCmd.
* generic/tkWindow.c: Updated function pointers for clipboard
command to use Tcl_Obj version.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
prototype for Tk_ClipboardObjCmd.
* generic/tkWindow.c: Updated function pointers for clipboard
command to use Tcl_Obj version.
* tests/clipboard.test: Updated tests to expect standard error
messages.
* generic/tkClipboard.c (Tk_ClipboardObjCmd): Obj'ified
Tk_ClipboardCmd -> Tk_ClipboardObjCmd.
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tkInt.h: added Tk_SpinboxObjCmd declaration
* generic/tkEntry.c: added 'spinbox' widget - an extension of the
entry widget type.
* generic/tkWindow.c: added 'spinbox' to core Tk commands
* library/spinbox.tcl: (new file) binding and helper procs for spinbox
* library/tk.tcl: added spinbox.tcl to list of files to source
* tests/entry.test: updated changed error messages
* tests/spinbox.test: (new file) test suite for spinbox
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ALT_MASK, to fix some event problems [Bugs: 1160, 5088].
* win/tkWinX.c: Changed Mod2Mask in GetState to ALT_MASK, to fix
some event problems [Bugs: 1160, 5088].
* generic/tkInt.h: Moved definition of ALT_MASK and META_MASK here
so that it would be accessible from other modules than tkBind.c.
* generic/tkBind.c: Added code in BindEvent to check for ALT_MASK
and META_MASK in the event state field, as this field may not be
set up with the correct display modifier mask bits if the XEvent
structure was created by [event generate] or by the Windows X
emulation. [Bugs: 1160, 5088].
|
|
|
|
|
|
|
| |
* generic/tkWindow.c:
* generic/tkInt.h: Updated Tcl_OptionCmd -> Tcl_OptionObjCmd
* generic/tkOption.c: Tcl_Obj'ectified the "option" command.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
element to end to not disturb position of previous elements in
the structure (as compared to Tk <=8.2).
* generic/tkCanvLine.c (LineCoords): fixed segfault when too few
coords were passed to a line with certain options set (it should
always have thrown an error anyway). [Bug: 4042]
* tests/text.test:
* generic/tkText.c: fixed missing " in error case and missing
'dump' in subcommand listing [Bug: 4036]
* generic/tkListbox.c: adjusted use of basic string concatenation
in (non-K&R behavior) [Bug: 4027]
Swapped bg/fg class for -select(bg|fg) for listbox and their
items [Bug: 4039]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tkEvent.c:
* generic/tkWindow.c:
* generic/tkInt.h: add 'tk useinputmethods ?-display win? ?bool?'
call to provide support for disabling/enabling the use of XIM on
X. This was previously all done at compile time, and always on.
Now it
* generic/tkCanvUtil.c: fixed bug in Tk_CanvasPsOutline that freed
mem it shouldn't.
* generic/tkFont.c: added "bitstream cyberbit" (popular Windows
CJK font) to list of font fallbacks. (kenny) [Bug: 2407]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tkDecls.h:
* generic/tkIntXlibDecls.h:
* generic/tkInt.decls: added XSetDashes and XWarpPointer
* generic/tk.decls: added Tk_CreateSmoothMethod, and reserved
two spots
* generic/tk.h: added Tk_SmoothMethod struct,
state item to canvas record, #defines for item state,
support for using old char*-based canvas item C creation
procedures with -DUSE_OLD_CANVAS,
Tk_Dash, Tk_TSOffset (-offsets) & Tk_Outline structs and #defs,
decls for dash, outline and postscript routines
* generic/tkBind.c: added support for Quadruple clicks, and added
the -warp option to 'event' with pointer warping routines
* xlib/xgc.c:
* generic/tkRectOval.c:
* generic/tkCanvArc.c:
* generic/tkCanvBmap.c:
* generic/tkCanvImg.c:
* generic/tkCanvLine.c:
* generic/tkCanvPoly.c:
* generic/tkCanvPs.c:
* generic/tkCanvText.c:
* generic/tkCanvUtil.c:
* generic/tkCanvWind.c:
* generic/tkCanvas.c:
* generic/tkCanvas.h: Canvas and items received overhaul to with
the addition of the dash patch (Nijtmans, et al) This includes
objectification of the 'canvas' command, as well as support for
(where appropriate) dashes in items, extended stipple support,
state for all items, and postscript generation of images and
windows. See the new canvas man page for related docs.
* generic/tkEntry.c: added entry widget validation, see entry.n
* generic/tkEvent.c: on simulated events, ButtonPress should
be matched with ButtonRelease to be correct
* generic/tkFont.c: corrected possible null reference
* generic/tkFrame.c: made frame a Tcl_Obj based command
* generic/tkGet.c: added TkGetDoublePixels
* generic/tkImage.c: bug fixes from Img patch and new
Tk_PostscriptImage and Tk_SetTSOrigin functions
* generic/tkImgBmap.c: new ImgBmapPostscript function
* generic/tkImgPhoto.c: new Tk_CreatePhotoOption, Tk_DitherPhoto
* generic/tkInt.h: declarations for some new functions
* generic/tkMessage.c: reworked relief drawing
* generic/tkOldConfig.c: added TK_CONFIG_OBJS so old style
ConfigureWidget calls can pass in Tcl_Obj arrays
* generic/tkScrollbar.c:
* generic/tkScrollbar.h: made -orient use an option table
* generic/tkText.c:
* generic/tkText.h: made -wrap and -state use option tables
* generic/tkTextBTree.c:
* generic/tkTextDisp.c:
* generic/tkTextImage.c:
* generic/tkTextMark.c:
* generic/tkTextTag.c:
* generic/tkTextWind.c: added support for -elide and -state hidden
* generic/tkTrig.c: changed TkMakeBezierCurve to support returning
the upper limit of points needed for spline
* generic/tkUtil.c: new option table parsing routines
* generic/tkWindow.c: init'ing of warp stuff, mouseButtonState
|
|
|
|
|
|
| |
* generic/tkWindow.c:
* generic/tkCmds.c: converted Tk_DestroyCmd, Tk_LowerCmd and
Tk_RaiseCmd to their ObjCmd equivalent.
|
|
|
|
|
|
|
|
|
|
|
| |
new-school objectified command.
* generic/tkListbox.c: Objectified listbox; added support for
-listvar option. Converted internal structure to use a Tcl list
object to store the data.
* generic/tkInt.h: Changed reference to Tk_ListboxCmd to
Tk_ListboxObjCmd.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tkCmds.c:
* generic/tkImage.c:
* generic/tkImgBmap.c:
* generic/tkImgGIF.c:
* generic/tkImgPPM.c:
* generic/tkImgPhoto.c:
* generic/tkInt.h:
* generic/tkTest.c:
* generic/tkWindow.c:
* tests/imgPhoto.test: added Img patch (Nijtmans) with docs,
headers #def'd with USE_OLD_IMAGE. Upgrades image stuff to
Tcl_Obj API, adds alpha channel (images are now 32 bpp)
|
|
|
|
| |
directly in tkText.h
|
| |
|
|
|
|
|
|
| |
function public. Add an interp argument and init the Tcl stubs.
Rename TkConsoleInit() to Tk_CreateConsoleWindow()
Remove TkConsoleCreate() (no underbar)
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
removed unused file on Mac implementation
made bell cmd an obj cmd - improved it's test suite
|
| |
|