summaryrefslogtreecommitdiffstats
path: root/win/tkWinWm.c
Commit message (Collapse)AuthorAgeFilesLines
* * tests/wm.test: Add Win32 test cases for attributesmdejong2004-10-291-9/+11
| | | | | | subcommand. * win/tkWinWm.c (WmAttributesCmd): Fixup broken option processing logic for attributes subcommand.
* * win/tkWinWm.c (UpdateWrapper): pass SWP_NOOWNERZORDER tohobbs2004-10-211-2/+3
| | | | | SetWindowPos when maintaining win Z order, to prevent parent from flashing (adjusting Z order).
* Backport of 8.5 wm iconphoto that added support for Tk photohobbs2004-10-051-6/+117
| | | | | | | | * generic/tkInt.h (TkDisplay): images as titlebar icons. TIP #159 * win/tkWinWm.c (WmIconphotoCmd): wm iconphoto ?-default? image1 ... * macosx/tkMacOSXWm.c (WmIconphotoCmd): Implemented for Win/Unix, * unix/tkUnixWm.c (WmIconphotoCmd): stubbed out for OS X. * tests/wm.test, tests/unixWm.test, tests/winWm.test: [Bug 815751]
* * win/tkWinInt.h (TkWinDisplayChanged): added declhobbs2004-09-231-1/+107
| | | | | | | | * win/tkWinX.c (TkWinDisplayChanged, TkpOpenDisplay): Correctly * win/tkWinWm.c (InvalidateSubTreeDepth, WmProc): handle color and screen resolution changes. Tested for 16/24/32 bpp changes on XP. May need more fixes for 8bpp switch, use of special colormaps, or other special palette handling cases. [Bug 223689]
* * win/tkWinWm.c: Rework WS_EX_LAYERED and LWA_ALPHAmdejong2004-09-231-3/+5
| | | | defines so that compiling with mingw works again.
* * win/tkWinWm.c (UpdateWrapper, WmAttributesCmd): handle attributehobbs2004-09-211-41/+41
| | | | | settings prior to window mapping and resort to more forceful wrapper update again for -toolwindow (to remove it from taskbar).
* (UpdateWrapper): don't adjust Z order of TOPMOST window.hobbs2004-09-181-12/+28
| | | | | (WmAttributesCmd): don't call UpdateWrapper for -disabled or -toolwindow attr changes.
* * win/tkWinWm.c (WmAttributesCmd): correct -alpha 0.0/1.0 settinghobbs2004-09-181-19/+14
| | | | and round the value.
* * tests/winWm.test: Add 'wm attributes -alpha' to control toplevelhobbs2004-09-171-20/+156
| | | | | * win/tkWinInt.h: alpha transparency on Win2K/XP+. * win/tkWinWm.c: TIP #222 [Patch 892194]
* * win/tkWinWm.c (UpdateWrapper): Ensure that we maintain Z orderhobbs2004-09-171-11/+32
| | | | | | | * tests/winWm.test: and focus of preexisting window when replacing the wrapper window. * win/tkWinWm.c (WmIconwindowCmd): Replace bogus call to XWithdrawWindow with proper code. (mdejong)
* * win/tkWinWm.c (ReadIconFromFile): fix mem alloc to get the righthobbs2004-09-131-15/+10
| | | | size for both icons ('?:' order of precedence mistake).
* (UpdateWrapper): update to Kovalenko to account for whether thehobbs2004-09-101-14/+16
| | | | | | override window has a transient parent, and apply WS_POPUP in the correct case. The makes splash screens pop up as well as making dropdowns not grab focus away from the parent.
* * win/tkWinWm.c (ActivateWindow): SetFocus to grab window whenhobbs2004-09-101-4/+9
| | | | clicking outside the grab window hierarchy. [Bug 220908]
* * win/tkWinWm.c: backport of several items from 8.5 head:hobbs2004-09-101-64/+152
| | | | | | | | | | | | | | (ReadIconFromFile): when using SHGetFileInfo to retrieve icon, get regular icon as well for correct Alt-Tab icon. (hobbs) Fix for #742882 "Potential division by zero in gridded wm geometry" (jenglish) (UpdateWrapper): Let overrideredirect'ed window's wrapper be the child of desktop window, thus making it to behave more similarly to X11 Override Redirect. Esp. useful for combobox-like megawidgets. (kovalenko) (InstallColormaps): Check for TK_ALREADY_DEAD to avoid handling of dead windows. (kovalenko) Change 'panic' to 'Tcl_Panic' (davygrvy)
* * win/tkWinDialog.c (Tk_MessageBoxObjCmd): Inherit the icon fromhobbs2004-08-201-13/+86
| | | | | * win/tkWinInt.h: the -parent window for * win/tkWinWm.c (TkWinGetIcon): the MessageBox.
* Modified UpdateWrapper to fix bug 767176chengyemao2004-05-151-3/+3
|
* * win/tkWinX.c (TkWinXInit): Move cleanup into an exit handlerhobbs2002-12-061-1/+6
| | | | | | * win/tkWin32Dll.c (DllMain): to ensure that it will be called * win/tkWinWm.c (TkWinWmCleanup): without having to unload the dll. Also reset the static int initialized on cleanup to allow reinit.
* * tests/wm.test: Add wm-transient-6.3 tomdejong2002-12-011-17/+9
| | | | | | | | | | | check that a transient remains withdrawn when it is first withdrawn and then turned into a transient. * unix/tkUnixWm.c: * win/tkWinWm.c: Replace WM_TRANSIENT_WITHDRAWN with WM_WITHDRAWN and set this flag whenever a window is explicitly withdrawn. This fixes the test case added above. [Bug 644356]
* Fix for Tk Bug #592201 "wm transient fails with two masters".jenglish2002-08-081-4/+4
|
* * win/tkWinFont.c: Additional changes to fix CONST warnings ondgp2002-08-051-5/+5
| | | | * win/tkWinWM.c: Windows due to latest patch. Tks Vince Darley.
* Objectifed wm. [Patch #564521]pspjuth2002-07-251-1347/+2310
|
* code cleanupvincentdarley2002-07-171-38/+80
|
* WinWm fixesvincentdarley2002-07-161-20/+216
|
* * Fixes for [Bug 581627].dgp2002-07-151-2/+2
| | | | | | | | * generic/tkTest.c: Test commands not supported on non-Unix platforms should not be defined there in the first place. * tests/constraints.tcl: Fixed "secureserver" constraint. * tests/unixWm.test: Some tests needed "unix" constraint. * win/tkWinWm.c: Typo in error message.
* * tests/winWm.test: Verify that both an unmappedmdejong2002-06-241-3/+13
| | | | | | | | | | | | | | | | | | | | and already mapped toplevel are raised and receive the focus when deiconified. * tests/wm.test: Add wm deiconify tests. Check that a toplevel that has never been mapped is not mapped by the deiconify command since it should be done at idle by MapFrame. * win/tkWinWm.c (Tk_WmCmd): Check the WM_NEVER_MAPPED flag while processing the wm deiconify command. The WM_UPDATE_PENDING flag should never be set when WM_NEVER_MAPPED is set, but double check so that the implementation is more explicit and matches the comment just above. Return without invoking TkWmRestackToplevel or TkSetFocusWin on a toplevel that has never been mapped. This fixes a bug where a toplevel is mapped with the wrong size and is then resized by the idle call to MapFrame. [Tk bug 233150]
* * win/tkWinWm.c (UpdateGeometryInfo): remove the check for a nullhobbs2002-06-241-3/+2
| | | | | | | wrapper introduced in r1.41 on 2002-06-15 because it prevented geometry setting from taking effect if the window was not on the screen. Another check may go in it's place as IsIconic and IsZoomed should not be passed NULL.
* * tests/wm.test: Remove invalid minsize test. Add updatemdejong2002-06-241-4/+4
| | | | | | | | | | calls to wm transient tests so that idle handlers get run. This is needed to get the tests to pass under Win32. * unix/tkUnixWm.c (WmWaitMapProc): Move the special transient withdrawn check into the if body to make it easier to set a breakpoint on this test inside a debugger. No functional changes. * win/tkWinWm.c (WmWaitVisibilityOrMapProc): Ditto.
* * doc/wm.n: TIP #95 Windows implementation andhobbs2002-06-221-51/+49
| | | | | | | | * mac/tkMacWm.c (Tk_WmCmd): docs with mac and unix stubs. * unix/tkUnixWm.c (Tk_WmCmd): * win/tkWinWm.c (Tk_WmCmd): * tests/unixWm.test: * tests/winWm.test: more wm attr tests will be needed.
* * tests/wm.test: Add tests to make sure a withdrawnmdejong2002-06-221-2/+29
| | | | | | | | | | | transient does not get remapped by state changes in the master. * unix/tkUnixWm.c (Tk_WmCmd, WmWaitMapProc): * win/tkWinWm.c (Tk_WmCmd, WmWaitVisibilityOrMapProc): Add a WM_TRANSIENT_WITHDRAWN flag that gets set by the withdraw, deiconify, or state wm subcommands. Check this flag before mapping a transient when processing a MapNotify event. [Tk bug 570764]
* * generic/tkInt.h:hobbs2002-06-151-34/+107
| | | | | | | * 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)
* TIP #47 "Modifying Tk to Allow Writing X Window managers"jenglish2002-06-141-8/+23
| | | | | | | | (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.
* * changes: Add note about new transient behavior.mdejong2002-06-121-30/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tests/unixWm.test: Check that the WM_TRANSIENT_FOR property for a transient window is being cleared when the master is destroyed. * tests/wm.test: Source defs.tcl instead of using tcltest to match the rest of Tk's test files. Add new tests that ensure that a transient's state mirrors the state of the master. * unix/tkUnixWm.c (WmInfo, TkWmNewWindow, TkWmMapWindow, TkWmDeadWindow, Tk_WmCmd, WmWaitMapProc): Add numTransients member to WmInfo structure. Keep state of master and transient in sync using a callback that tracks MapNotify and UnmapNotify events. When the master is mapped, map the transient. When the master is unmapped or iconified, withdraw the transient. * win/tkWinWm.c (TkWmMapWindow, TkpWmSetState, TkWmDeadWindow, Tk_WmCmd, WmWaitVisibilityOrMapProc): Keep state of master and transient in sync using a callback that tracks MapNotify and UnmapNotify events. Move masterPtr check from TkpWmSetState into TkWmMapWindow to deal with WM_NEVER_MAPPED transients. Cleanup numTransients and the callback in TkWmDeadWindow. Cleanup numTransients and the callback only after deleting a master in wm transient command to avoid deleting the callback when an error is raised. Add support for MapNotify and UnmapNotify events to the master callback.
* * changes: Document [wm transient .t .t] error.mdejong2002-05-271-27/+29
| | | | | | | | | | | | | | * tests/wm.test: Check that setting a window as a transient of itself raises an error. Check that passing a non-toplevel window to the wm transient command uses the enclosing toplevel. * unix/tkUnixWm.c (Tk_WmCmd): Raise an error if the user tries to make a toplevel a transient of itself. * win/tkWinWm.c (Tk_WmCmd): Raise an error if the user tries to make a toplevel a transient of itself. Test for other error before checking for the transient self error.
* * mac/tkMacWm.c (Tk_WmCmd):mdejong2002-05-241-1/+21
| | | | | | | | | | | * tests/unixWm.test: Move wm transient checks over to wm.test so they will be run on all systems. * tests/wm.test: Add tests to check for error when an iconwindow is passed to the wm transient command. * unix/tkUnixWm.c (Tk_WmCmd): * win/tkWinWm.c (Tk_WmCmd): Raise an error if one of the windows passed to the wm transient command is an iconwindow for another toplevel.
* * mac/tkMacWm.c (TkWmStackorderToplevelWrapperMap):mdejong2002-05-231-2/+3
| | | | | | | | * tests/wm.test: Add embedded Window test case for the stackorder command. * unix/tkUnixWm.c (TkWmStackorderToplevelWrapperMap): * win/tkWinWm.c (TkWmStackorderToplevelWrapperMap): Ignore embedded windows during wm stackorder command.
* * doc/wm.n:mdejong2002-04-101-2/+2
| | | | | | | | | * mac/tkMacWm.c: * tests/wm.test: * unix/tkUnixWm.c: * win/tkWinWm.c: Update wm stackorder usage message to make it clear that either 1 or 3 arguments are required. [Bug 540013]
* * Updated callers of Tcl_SplitList and Tcl_Merge.dgp2002-01-251-4/+4
| | | | | | | | | * 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.
* * win/tkWinWm.c (InitWindowClass): corrected init routines tohobbs2001-12-281-41/+56
| | | | | allow unicode in window titles on Windows (for Win2K/XP). (TkWmStackorderToplevel): Corrected casts to enable debug compile
* Add TK patch 481148 to implement TIP 74, themdejong2001-12-041-3/+271
| | | | | | | | | | | | | | | | | | | | | | | | | | wm stackorder command. * doc/winfo.n: Update documentation for the winfo children command to indicate that top-level windows are not returned in stacking order. * doc/wm.n: Add documentation for wm stackorder. * generic/tkInt.decls (TkWmStackorderToplevel): Add decl for new function. * generic/tkIntDecls.h: Regen. * generic/tkStubInit.c: Regen. * tests/unixWm.test: Add stackorder command to test for wm command usage message. * tests/wm.test: Add new set of tests for generic window manager methods. * unix/tkUnixWm.c (Tk_WmCmd, TkWmStackorderToplevelWrapperMap, TkWmStackorderToplevel): Add unix implementation of new wm stackorder command. * win/tkWinWm.c (Tk_WmCmd, TkWmStackorderToplevelEnumProc, TkWmStackorderToplevelWrapperMap, TkWmStackorderToplevel): Add windows implementation of new wm stackorder command.
* implementation of TIP 63 (accepted) -compound option to menu items.macosx_8_4_branchpointtmh2001-10-121-2/+4
|
* * win/tkWinWm.c (WinSetIcon): fixed SetClassLong for 64bit support.hobbs2001-09-211-3/+19
|
* * win/tkWinWm.c (UpdateWrapper): ensured that the passed in winPtrhobbs2001-03-301-4/+11
| | | | had an existent window to operate on. [Bug #409172]
* 2001-01-02 Andreas Kupries <a.kupries@westend.com>andreas_kupries2001-01-021-36/+903
| | | | | * win/tkWinWm.c: * doc/wm.n: Applied patch #102833 (TIP #8).
* * win/tkWinButton.c:hobbs2000-11-031-2/+23
| | | | | | | * win/tkWinDialog.c: * win/tkWinScrlbr.c: * win/tkWinWm.c: fixed up code for Win64 support. This mostly remains in _WIN64 #ifdef's, until updated compilers are standard.
* * generic/tkFileFilter.c (AddClause): Cast to match function prototype.mo2000-07-061-3/+1
| | | | | | | | | | | | | | | * win/stubs.c (_XInitImageFuncPtrs): Add return value for function. * win/tkWinButton.c (buttonStyles, ButtonBindProc, ComputeStyle): Remove unused declarations. * win/tkWinColor.c (GetColorByName, GetColorByValue): Remove unused function declarations. * win/tkWinDialog.c (TrySetDirectory): Remove unused function declaration. * win/tkWinEmbed.c (TkWinEmbeddedEventProc): Cast to match function prototype. * win/tkWinMenu.c (winMenuMutex, MenuExitProc): Remove unused declaration. * win/tkWinWindow.c (StackWindow): Remove unused declaration. * win/tkWinWm.c (ConfigureEvent): Remove unused declaration. * win/tkWinX.c (winXMutex): Remove unused declaration. * xlib/ximage.c (XCreateBitmapFromData): Cast to match function prototype.
* * win/tkWinWm.c (Tk_WmCmd): changed wm deiconify from using idlehobbs2000-05-161-46/+6
| | | | callback to calling restack and focus code immediately.
* * win/tkWinWm.c (RaiseWinWhenIdle): added TK_DONT_DESTROY_WINDOWhobbs2000-05-131-2/+3
| | | | to flag check to prevent timing related core dump. [Bug: 5438]
* * doc/button.n: Added documentation for link relief.ericm2000-05-101-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tests/button.test: Added tests for link relief for buttons. * generic/tk.h (TK_CONFIG_LINK_OK): Added definition of TK_RELIEF_LINK, TK_OPTION_LINK_OK and TK_CONFIG_LINK_OK. [RFE: 4348] * generic/tk3d.c: Added support for link relief. [RFE: 4348] * mac/tkMacButton.c (TkpDisplayButton): * unix/tkUnixButton.c (TkpDisplayButton): Added support for link relief. [RFE: 4348] * generic/tkOldConfig.c (Tk_ConfigureWidget): * generic/tkConfig.c (DoObjConfig): Added understanding of link relief, which is allowed only for widgets that have TK_OPTION_LINK_OK or TK_CONFIG_LINK_OK set for the "-relief" option. [RFE: 4348] * generic/tkButton.c: Added TK_OPTION_LINK_OK to "-relief" option for buttons. [RFE: 4348] * win/tkWinWm.c (EX_TRANSIENT_STYLE): Removed WS_EX_TOOLWINDOW style bit, so that transient windows have full-size titlebars (like the tk_getOpenFile dialog). * win/tkWinMenu.c (GetMenuSeparatorGeometry): Tweaked height requested for separator bars to be (linespace - (2*descent)) instead of just (linespace); this makes the separator occupy a more correct amount of vertical space. [Bug: 5303].
* * win/tkWinWm.c (WmProc): added check in WM_MOUSEACTIVATE so wehobbs2000-04-151-3/+12
| | | | | correctly activate native menus when clicking in when we didn't have focus [Bug: 2272]
* * win/tkWinWm.c (RaiseWinWhenIdle): Checked for the possibilityhobbs2000-02-261-1/+4
| | | | | that the window could be destroyed (can occur with wm deiconify .toplevel; destroy .toplevel).