summaryrefslogtreecommitdiffstats
path: root/generic/tkFrame.c
Commit message (Collapse)AuthorAgeFilesLines
* Fix [720879afe9] - WM_CHAR message handling. Patch from Christian Werner ↵jan.nijtmans2016-09-271-1/+0
|\ | | | | | | | | backported from http://www.androwish.org/index.html/info/a0da5845594cec28. Change (internal) TkpGetFontAttrsForChar() signature to match androwish's, no functional change.
* | work in progressdgp2016-06-211-0/+24
| |
* | Use some more (void *)'s in FreeProc's, a step in the direction getting Tk ↵jan.nijtmans2013-01-261-5/+5
| | | | | | | | to work with "novem"
* | more places convertedjan.nijtmans2013-01-241-1/+1
| |
* | Merge core-8-5-branchjan.nijtmans2013-01-241-2/+2
|\ \ | |/ | | Various Tcl_GetIndexFromObj -> Tcl_GetIndexFromObjStruct changes.
| * make some internal tables constjan.nijtmans2012-04-181-3/+3
| |\
| | * make some more internal tables CONSTjan.nijtmans2012-04-181-3/+3
| | |
* | | minor improvements to flag handlingdkf2012-07-311-32/+27
| | |
* | | Much more cleaning up of result handling.dkf2012-07-231-23/+31
| | |
* | | frq-3536507: clientData field in Tk_OptionSpec should be "const void *"frq_3536507jan.nijtmans2012-06-201-10/+10
| | |
* | | Purge RCS Keywordsdgp2011-06-081-2/+0
|\ \ \ | |/ /
| * | Purge RCS Keywords.dgp2011-06-081-2/+0
| |\ \ | | |/
| | * Purge RCS Keywords.dgp2011-06-081-2/+0
| | |
| | * * generic/tkCanvas.c: allow -selectforeground option to be None; adddas2007-04-291-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tkCanvText.c: fallback to fgColor when selFgColor is None * generic/tkEntry.c: (new default on aqua to match native L&F). * generic/tkListbox.c: * generic/tkText.c: * generic/tkCanvas.c: add support for bypassing all of Tk's double * generic/tkEntry.c: buffered drawing into intermediate pixmaps * generic/tkFrame.c: (via TK_NO_DOUBLE_BUFFERING #define), it is * generic/tkListbox.c: unnecessary & wasteful on aqua where all * generic/tkPanedWindow.c: drawing is already double-buffered by the * generic/tkTextDisp.c: window server. (Use of this on other * unix/tkUnixScale.c: platforms would only require implementation of TkpClipDrawableToRect()).
| | * Fix [Bug 1252702]dkf2005-08-111-18/+17
| | |
| | * * generic/tkFrame.c (DisplayFrame):hobbs2005-07-281-8/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tkInt.decls: add TkpDrawFrame to allow for * generic/tkIntDecls.h: platform-specific drawing into the frame/ * generic/tkStubInit.c: toplevel area. Currently only differs on * generic/tkFrame.c: OS X (Aqua), which will draw a themed bg * win/tkWinDraw.c: if tk::mac::useThemedToplevel == 1. * unix/tkUnixDraw.c: Normal frames left alone until we can * mac/tkMacDraw.c: better factor out frame drawing to be * macosx/tkMacDraw.c: widget-specific.
| | * Make sure all options can be setpspjuth2003-07-161-2/+5
| | | | | | | | | | | | to their default value. [Bug #697652]
* | | [Bug 2997657]: Removed -container from labelframe documentationpspjuth2011-04-041-0/+4
|\ \ \ | |/ / | | | | | | | | | since it does not work as expected and does not make sense as a container. Added note to frame about restrictions when used as a container.
| * | [Bug 2997657]: Removed -container from labelframepspjuth2011-04-041-0/+4
| | | | | | | | | | | | | | | documentation since it does not work as expected and does not make sense as a container. Added note to frame about restrictions when used as a container.
| * | [Bug 2239034] Only frame widgets are acceptable for [wm manage]patthoyts2008-11-151-1/+7
| | |
* | | Remove casts from uses of ckalloc/ckfree/... now that Tcl declares them to bedkf2011-03-121-5/+5
| | | | | | | | | using useful casts internally.
* | | Make more internal tables "const"nijtmans2010-02-051-2/+2
| | | | | | | | | | | | tk*Decls.h (regenerated with new genStubs.tcl from Tcl)
* | | Eliminate tkpMenubuttonClassnijtmans2010-01-131-3/+5
| | | | | | | | | | | | | | | make tkpButtonProcs CONST fix gcc warnings: missing initializer
* | | SMALL FIX: Remove useless explicit casts now that we require C89 or later.dkf2010-01-021-5/+5
| | |
* | | - eliminate some unnessary type castsnijtmans2009-02-031-3/+3
| | | | | | | | | | | | | | | - some internal const decorations - spacing
* | | bug 2239034: restrict [wm manage] to Frame type widgetspatthoyts2008-11-151-1/+7
| | |
* | | More small changes to use C89 better and manage the result more efficiently.dkf2008-11-081-10/+13
| | |
* | | CONSTify TkPrintPadAmount, TkCreateFrame, TkCreateMainWindownijtmans2008-10-281-7/+7
| | | | | | | | | | | | | | | and Tk_ParseArgv. move TkSelGetSelection to internal stub table (needed in tkWinTest.c)
* | | Add "const" to many internalnijtmans2008-10-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | const tables, so those will be put by the C-compiler in the TEXT segment in stead of the DATA segment. This makes those table sharable in shared libraries.
* | | fix [2021443] inconsistant "wrong # args" messages (for Tk)nijtmans2008-07-231-3/+3
| | |
* | | Get rid of pre-C89-isms (esp. CONST vs const).dkf2008-04-271-83/+94
|/ /
* | merge stable branch onto HEADdgp2007-12-131-1/+1
| |
* | * generic/tkFocus.c, generic/tkFrame.c, generic/tkInt.h:hobbs2007-10-151-3/+31
| | | | | | | | | | | | | | | | * macosx/tkMacOSXButton.c, macosx/tkMacOSXMenubutton.c: * macosx/tkMacOSXWm.c, unix/tkUnixWm.c, win/tkWinWm.c: * doc/wm.n, tests/wm.test: TIP #125 implementation [Bug 998125] Adds [wm manage|forget] for dockable frames. Finished X11 and Windows code, needs OS X completion.
* | header cleanupdgp2007-09-071-2/+1
| |
* | * generic/tkCanvas.c: allow -selectforeground option to be None; adddas2007-04-231-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tkCanvText.c: fallback to fgColor when selFgColor is None * generic/tkEntry.c: (new default on aqua to match native L&F). * generic/tkListbox.c: * generic/tkText.c: * generic/tkCanvas.c: add support for bypassing all of Tk's double * generic/tkEntry.c: buffered drawing into intermediate pixmaps * generic/tkFrame.c: (via TK_NO_DOUBLE_BUFFERING #define), it is * generic/tkListbox.c: unnecessary & wasteful on aqua where all * generic/tkPanedWindow.c: drawing is already double-buffered by the * generic/tkTextDisp.c: window server. (Use of this on other * generic/ttk/ttkWidget.c: platforms would only require implementation * unix/tkUnixScale.c: of TkpClipDrawableToRect()).
* | Added compliler #ifdef SUPPORT_CONFIG_EMBEDDED to support config of -use ↵chengyemao2007-02-281-1/+9
| | | | | | | | option at specific platform
* | various "const" additions, in line with TIP #27nijtmans2007-01-051-2/+2
| | | | | | | | fix bug #1627732
* | various "const" additions, in line with TIP #27nijtmans2007-01-031-6/+6
| |
* | Lots of ANSIfying of function decls.dkf2005-11-171-26/+26
| | | | | | | | Also a few spots where code has been cleaned up more completely.
* | ANSIfydkf2005-11-071-137/+118
| |
* | Getting more systematic about styledkf2005-08-101-436/+417
| | | | | | | | | | Also start removing _ANSI_ARGS_; the core's required ANSI C for a while now Also fix [Bug 1252702]; size_t doesn't mix with Tcl_GetStringFromObj
* | * macosx/tkMacOSXCarbonEvents.c (AppEventHandlerProc): handle carbondas2005-08-091-6/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | events sent directly to application event target via the general TkMacOSXProcessEvent() in the same way as events posted to the event loop. Moved existing app event handlers to tkMacOSXWindowEvent.c. (TkMacOSXInitCarbonEvents): register our application event handler for kEventWindowExpanded events to deal with uncollapsing from the dock. * macosx/tkMacOSXEvent.h: made TkMacOSXProcessEvent() non-static, added * macosx/tkMacOSXEvent.c: new interp field to TkMacOSXEvent struct for use by app event handler. * macosx/tkMacOSXMouseEvent.c (TkMacOSXProcessMouseEvent): retrieve current window, partCode, modifiers and local cursor position from carbon mouse event if possible. Use new static GenerateButtonEvent() taking a MouseEventData struct instead of TkGenerateButtonEvent() to avoid recomputing already known values. Move process activation on MouseDown into BringWindowForward() to allow clicking on window titlebar widgets without activating process. Move code dealing with clicks in window titelbar into separate function HandleWindowTitlebarMouseDown() to avoid code duplication. Avoid repeated calls to TkMacOSXGetXWindow() by storing result in MouseEventData struct. (TkMacOSXButtonKeyState, XQueryPointer): try to get button and modifier state from currently processed carbon event (to avoid unnecessary IPC with the window server), otherwise use modern carbon API to get this info instead of Button() and GetKeys(); only retrieve info caller asks for (via non-NULL ptr passed to XQueryPointer). (ButtonModifiers2State): new static function converting carbon button and modifier state into tk state, allows detection of more than 3 mouse buttons (tk supports up to 5) and of NumLock and Fn modifier keys (NumLock is mapped to Mod3 and Fn to Mod4). * macosx/tkMacOSXWindowEvent.c (TkMacOSXProcessApplicationEvent): handle kEventWindowExpanded event to deal with window uncollapsing from the dock by generating tk Map event, handle kEventAppHidden and kEventAppShown events (moved here from tkMacOSXCarbonEvents.c). * macosx/tkMacOSXSubwindows.c (XUnmapWindow): only hide window when it is not iconified to avoid window flashing on collapse. * macosx/tkMacOSXWm.c: replaced Tk_DoWhenIdle() by Tcl_DoWhenIdle(). (TkMacOSXZoomToplevel): remove call to TrackBox(), now done in HandleWindowTitlebarMouseDown() in tkMacOSXMouseEvent.c. (TkpWmSetState): avoid window flashing on collapse by unmapping after calling CollapseWindow(); only uncollapse window if it is collapsed. * generic/tkInt.decls: changed TkMacOSXZoomToplevel() signature. * generic/tkIntPlatDecls.h: * macosx/tkMacOSXKeyEvent.c (TkMacOSXProcessKeyboardEvent): only call GetMenuItemCommandID() on KeyDown or KeyRepeat events. * macosx/tkMacOSXMenu.c (ReconfigureMacintoshMenu): remove call to obsolete AppendResMenu() API. * macosx/tkMacOSXKeyEvent.c: replaced all direct uses of expensive * macosx/tkMacOSXMenu.c: GetMouse() and TkMacOSXButtonKeyState() * macosx/tkMacOSXMenus.c: APIs by calls to XQueryPointer() * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXScale.c: * macosx/tkMacOSXScrlbr.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXDialog.c: replaced use of FrontNonFloatingWindow() * macosx/tkMacOSXKeyEvent.c: by ActiveNonFloatingWindow() as * macosx/tkMacOSXMenu.c: recommended by Carbon docs. * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXDialog.c: fixed warnings * macosx/tkMacOSXTest.c: * macosx/tkMacOSXCarbonEvents.c: added CVS Id line to file header. * macosx/tkMacOSXDebug.c: * macosx/tkMacOSXDebug.h: * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXEvent.h: * macosx/tkMacOSXKeyEvent.c: * macosx/tkMacOSXMouseEvent.c: * macosx/tkMacOSXWindowEvent.c: * macosx/tkMacOSXWm.h: * macosx/tkMacOSXInt.h: declare macosx internal procs as MODULE_SCOPE. * macosx/tkMacOSXCarbonEvents.c: * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXFont.c: * macosx/tkMacOSXHLEvents.c: * macosx/tkMacOSXInit.c: * macosx/tkMacOSXWindowEvent.c * library/bgerror.tcl: sync with core-8-4-branch changes of 2005-07-28. * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXMouseEvent.c: * generic/tkFrame.c: sync with core-8-4-branch changes of 2005-07-27. * generic/tkIntDecls.h: * generic/tkStubInit.c: * generic/tkFrame.c: * win/tkWinDraw.c: * unix/tkUnixDraw.c: * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXInt.h: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXButton.c: sync with core-8-4-branch. * macosx/tkMacOSXEntry.c: * macosx/tkMacOSXScale.c: * library/demos/menu.tcl: removed errant '}'.
* | Correction of handling the return value of TkpUseWindowchengyemao2005-01-101-2/+2
| |
* | Changed to make platform implementation ready for a toplevel -use option; ↵chengyemao2005-01-091-4/+12
| | | | | | | | completed a full toplevel -use option configuration for Windows
* | Make the container draw its background to avoid an unpainted toplevel when ↵chengyemao2004-12-171-3/+2
| | | | | | | | the embedded window is NULL
* | * generic/tk3d.c: All uses of 'panic' (the macro) changeddavygrvy2004-01-131-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * generic/tkBind.c: to 'Tcl_Panic' (the function). The #define * generic/tkBitmap.c: of panic in tcl.h clearly states it is * generic/tkCanvArc.c: deprecated in the comments. * generic/tkCanvBmap.c: [Tcl Patch 865264] * generic/tkCanvImg.c: * generic/tkCanvLine.c: * generic/tkCanvPoly.c: * generic/tkCanvText.c: * generic/tkCanvWind.c: * generic/tkColor.c: * generic/tkConfig.c: * generic/tkCursor.c: * generic/tkError.c: * generic/tkEvent.c: * generic/tkFocus.c: * generic/tkFont.c: * generic/tkFrame.c: * generic/tkGC.c: * generic/tkGrid.c: * generic/tkImgBmap.c: * generic/tkImgPhoto.c: * generic/tkImgUtil.c: * generic/tkMenu.c: * generic/tkObj.c: * generic/tkPack.c: * generic/tkPlace.c: * generic/tkRectOval.c: * generic/tkSelect.c: * generic/tkText.c: * generic/tkTextBTree.c: * generic/tkTextDisp.c: * generic/tkTextImage.c: * generic/tkTextIndex.c: * generic/tkTextMark.c: * generic/tkTextWind.c: * generic/tkVisual.c: * generic/tkWindow.c: * mac/tkMacAppInit.c: * mac/tkMacAppearanceStubs.c: * mac/tkMacButton.c: * mac/tkMacDraw.c: * mac/tkMacEmbed.c: * mac/tkMacFont.c: * mac/tkMacInit.c: * mac/tkMacMenus.c: * mac/tkMacPort.h: * mac/tkMacSubwindows.c: * mac/tkMacWm.c: * mac/tkMacXStubs.c: * macosx/tkMacOSXEmbed.c: * macosx/tkMacOSXFont.c: * macosx/tkMacOSXMenus.c: * macosx/tkMacOSXNotify.c: * macosx/tkMacOSXPort.h: * macosx/tkMacOSXSubwindows.c: * macosx/tkMacOSXWm.c: * macosx/tkMacOSXXStubs.c: * unix/tkUnix3d.c: * unix/tkUnixColor.c: * unix/tkUnixEmbed.c: * unix/tkUnixEvent.c: * unix/tkUnixFocus.c: * unix/tkUnixFont.c: * unix/tkUnixSelect.c: * unix/tkUnixSend.c: * unix/tkUnixWm.c: * win/tkWin3d.c: * win/tkWinButton.c: * win/tkWinColor.c: * win/tkWinDialog.c: * win/tkWinDraw.c: * win/tkWinEmbed.c: * win/tkWinFont.c: * win/tkWinPixmap.c: * win/tkWinPointer.c: * win/tkWinScrlbr.c: * win/tkWinWm.c: * win/tkWinX.c:
* | Make sure all options can be setpspjuth2003-07-161-2/+5
|/ | | | to their default value. [Bug #697652]
* * generic/tkImage.c (Tk_ImageObjCmd): Added check to make suredkf2003-01-221-1/+43
| | | | | | | | | | | | that you're not creating an image named the same as .'s command, which refixes 220891, even when the name of the command has been changed with 'rename'. The error message is better too. * generic/tkFrame.c (TkToplevelWindowForCommand): Added way of mapping from command names to tkwins-for-toplevels. * tests/image.test (image-1.10,image-1.11): Updated to match new error message and added test for the rename case. * generic/tclInt.decls: Made TkToplevelWindowForCommand exported privately.
* * generic/tkFrame.c (CreateFrame): throw a Tcl error instead of ahobbs2003-01-031-4/+10
| | | | | | panic when we cannot get a main window and appname is NULL. This can indicate that a user tried to create a frame/toplevel while Tk was dying. [Bug #661792]
* Applied companion patch for Tcl Patch 585105,dgp2002-08-051-2/+2
| | | | | | | | | | | | | | | | | | | | | 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)