| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
| |
reduce command table size
|
| |
|
|
|
|
| |
avoid a crash when mapping dead windows.
|
|
|
|
| |
* tests/main.test (main-3.*): error. [Bug 1937135]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tkMain.c: For compat reason the Tcl core will not change
* generic/tkWindow.c: the registered version to include the patchlevel,
* library/tk.tcl: making the changes to Tk unnecessary.
* unix/configure:
* unix/Makefile.in:
* unix/tcl.m4:
* win/configure:
* win/Makefile.in:
* win/makefile.vc:
* win/rules.vc:
* win/tcl.m4:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tkMain.c: version, now using full patchlevel instead of
* generic/tkWindow.c: major.minor
* library/tk.tcl:
* unix/configure:
* unix/Makefile.in:
* unix/tcl.m4:
* win/configure:
* win/Makefile.in:
* win/makefile.vc:
* win/rules.vc:
* win/tcl.m4:
|
|
|
|
| |
of tcl internal Tcl_CreateNamespace() in previous commit.
|
|
|
|
|
|
|
|
|
|
| |
* generic/tkInt.h: control of entry/text selection display
* generic/tkText.c: based on focus to the Tcl level,
* generic/tkTextBTree.c: controlled by ::tk::AlwaysShowSelection
* generic/tkTextDisp.c: (boolean, private). [Bug 1553691]
* generic/tkWindow.c:
* library/tk.tcl
* unix/tkUnixPort.h:
|
|
|
|
|
|
| |
(jeffh). Release mutex a bit earlier, to prevent lock when OS X
creates its console windows (recursively enters Tk_Init). Patch
by JeffH.
|
|
|
|
| |
pairing. [Bug 1479587]
|
|
|
|
|
| |
* generic/tkOption.c (TkOptionDeadWindow): handle
OptionThreadExitProc being called before DeleteWindowsExitProc.
|
|
|
|
| |
handler for DeleteWindowsExitProc.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tkWindow.c: Ditto. (neil madden)
* macosx/tkMacOSXInt.h: Added TkMacOSXWindowClass decl
* macosx/tkMacOSXWm.c (TkMacOSXWinStyle) New function.
(TkUnsupported1ObjCmd): New function, replaces the un-objectified
version of the command, recognizes more classes and attributes.
(TkMacOSXWindowClass): private function to return OS X class of a
Tk window.
* macosx/tkMacOSXSubwindows.c (XMapWindow, XUnmapWindow):
recognize special show/hide functions for sheets
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tkMenu.c: dating from 2003-12-21
* generic/tkUtil.c:
* generic/tkWindow.c:
* mac/tkMacButton.c:
* unix/tkUnixEvent.c:
* win/tkWin32Dll.c:
* win/tkWinEmbed.c:
* win/tkWinMenu.c:
* win/tkWinX.c:
|
| |
|
|
|
|
|
|
|
| |
In tk_getOpenFile filters, handle the case where you have a Macintosh
file type and the files have no filetype.
Fix various formatting nits.
|
|
|
|
| |
[Bug 755906] (mistachkin)
|
|
|
|
|
| |
Reworked windowObj type.
Fixes Tk Bug #671330 "segfault when e.g. deiconifying destroyed window"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
DeleteWindowsExitProc): Add TkHalfdeadWindow
type and halfdeadWindowList to keep track
of windows that were only partially deallocated
before a call to exit. Finnish cleaning up
these windows in DeleteWindowsExitProc.
Keep track of cleanup status in Tk_DestroyWindow
so that a window with a Destroy binding which
calls exit will get fully destroyed.
* tests/window.test: Add Tk_DestroyWindow tests
for an assortment of half dead window cases.
[Bug 630533]
|
|
|
|
|
|
|
| |
* generic/tkWindow.c: made 'tk' available in safe interpreters,
but only the caret and windowingsystem subcommands may be called.
* tests/safe.test (safe-1.2): noted that tk is now available in
safe interps, but not the appname/scaling subcommands.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Handle case where Tk_DestroyWindow is invoked
on clipboard and send windows.
* generic/tkClipboard.c (TkClipCleanup):
Invoke Tk_DestroyWindow to cleanup the
dispPtr->clipWindow. Call Tcl_Preserve
and Tcl_Release on the window to avoid an
invalid memory ref on shutdown.
* generic/tkEvent.c (Tk_HandleEvent):
Panic if XCreateIC is invoked twice for
the same window. This should never happen,
the check were just added to make sure it
does not since this could lead to crashes
in XCloseIM.
* generic/tkFocus.c (TkFocusDeadWindow):
Handle case where Tk_DestroyWindow is invoked
on clipboard and send windows.
* generic/tkOption.c (TkOptionDeadWindow): Ditto.
* generic/tkWindow.c (TkCloseDisplay): Move
deletion of dispPtr->winTable after TkpCloseDisplay
call since Tk_DestroyWindow uses it and could
be called by TkpCloseDisplay for clipboard/send windows.
Also invoke ckfree for the dispPtr instead of
doing it in TkpCloseDisplay.
(Tk_DestroyWindow): Check for a null winPtr->mainPtr
before doing certain cleanup tasks so the we can
invoke Tk_DestroyWindow on clipboard and send windows.
We need to do this so that XDestroyIC will get invoked
for the input contexts of each window.
* mac/tkMacXStubs.c (TkpCloseDisplay): Don't free
the displayPtr since this is now done in TkCloseDisplay.
* unix/tkUnixEvent.c (TkpCloseDisplay, OpenIM): Remove
conditional compilation around calls to XCloseIM
since I am confident that the crashes related to
input contexts has been fixed. Don't free
the displayPtr since this is now done in TkCloseDisplay.
* unix/tkUnixSend.c (TkSendCleanup): Invoke the
Tk_DestroyWindow method to cleanup the special
send window. This will call XDestroyIC and thereby
avoid a crash in XCloseIM. The send window needs
to be Tcl_Preserve and Tcl_Release to avoid an
invalid memory ref on shutdown.
* win/tkWinX.c (TkpCloseDisplay): Don't free
the displayPtr since this is now done in TkCloseDisplay.
|
|
|
|
| |
Frederic Bonnet to supply docs+tests as soon as possible.
|
|
|
|
|
|
|
|
| |
component of a window to NULL after its memory has been
deallocated to avoid a possible illegal memory access
as a result of a call to Tk_PathName() on a Tk_Window
structure of a window that has already been destroyed.
[Tk bug 521946]
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
|
|
| |
(patch from Neil McKay).
* Add CirculateRequest, Create, MapRequest, ResizeRequest,
and ConfigureRequest event types;
* Split TK_TOPLEVEL flag into TK_TOPLEVEL, TK_HAS_WRAPPER,
TK_WIN_MANAGED, and TK_TOP_HIERARCHY.
|
|
|
|
|
|
|
|
|
|
| |
display was closed. This handles freeing memory associated with a
display and closing it.
(DeleteWindowsExitProc): actually close displays. This would also
ideally be done in Tk_DestroyWindow when the last window on the
display has been closed, but that still has unresolved order of
cleanup problems.
(Tk_DestroyWindow): added TkFocusFree call.
|
|
|
|
|
|
| |
* generic/tkWindow.c: moved OpenIM over to tkUnixEvent.c.
Removed setting inputContext to null in Tk_MakeWindowExist as it
was redundant.
|
|
|
|
|
| |
protect against being called before Tcl stubs are init'ed.
[Bug #220916] (porter)
|
| |
|
|
|
|
|
|
|
|
|
| |
* Updated callers of Tcl_GetStringResult.
Rewrote PrintScrollFractions to ScrollFractions to stop scribbling
directly on interp->result.
* Updated callers of Tcl_GetVar, Tcl_GetVar2
* Updated callers of Tcl_SplitPath, Tcl_JoinPath, and
Tcl_TranslateFileName.
|
|
|
|
| |
basic XIM input on Unix. [Patch #412727] (fabian)
|
| |
|
| |
|
|
|
|
| |
* generic/tkEntry.c (GetSpinboxElement): fixed unreachable returns.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Windows platforms that were overlooked before: tkOpenDocument,
tkConsoleExit, tkConsoleOutput, unsupported1 out of namespace :: .
Thanks to Vince Darley for prompting another look.
|
|
|
|
|
| |
Tcl_EventuallyFree instead of ckfree so that widgets that have
references to a tkwin can use them.
|
|
|
|
|
| |
style when processing configuration options. Some cleanup of
bad comments and bad code. [part of patch #420861]
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
| |
This only has effect when tclsh is run (not wish), and then Tk is
loaded in interactively.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
TK_ANONYMOUS_WINDOW flag in the [winfo children] subcommand; if
set, the window will not be printed in the list of children.
* doc/CrtWindow.3: Added entry for Tk_CreateAnonymousWindow.
* generic/tkWindow.c
(Tk_CreateAnonymousWindow): New API for creating anonymous
windows. These windows are manipulable from C, but not from Tcl,
because they have no pathname associated with them. They are used
initially by widgets that do rubber-band resizing (panedwindow,
multi-column listbox, etc.), and may be useful for other widgets
as well (dropbox, combobox).
(Tk_DestroyWindow): Added check for TK_ANONYMOUS_WINDOW flag when
determining whether to generate a DestroyNotify event.
* generic/tkStubInit.c:
* generic/tkDecls.h: Regen'd from tk.decls.
* generic/tk.decls: Added Tk_CreateAnonymousWindow declaration.
* generic/tk.h: Added TK_ANONYMOUS_WINDOW flag for Tk_Window's.
|
|
|
|
|
|
|
|
|
|
|
|
| |
[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.
|