summaryrefslogtreecommitdiffstats
path: root/win/tkWinX.c
Commit message (Collapse)AuthorAgeFilesLines
* Cross-compile support for Win and UNIX (backported)nijtmans2010-12-131-2/+2
|
* * win/tkWinX.c (HandleIMEComposition): [Bug 2992129]: Ensure that alldkf2010-05-201-1/+5
| | | | | places that generate key events zero them out first; Tk relies on that being true for the generic parts of the fix for Bug 1924761.
* [Bug 2956548] TkpButtonSetDefaults only initializes one button typenijtmans2010-03-121-12/+11
| | | | | Fix various gcc warnings, all backported from Tk 8.6 VC6++ does not have SPI_SETKEYBOARDCUES
* Fix [Bug 1373712] and [Bug 1924761].dkf2010-01-021-1/+2
|
* merge stable branch onto HEADdgp2007-12-131-1/+1
|
* * win/tkWinInt.h: remove CS_CLASSDC (not recommended for any apps now)hobbs2007-12-051-15/+1
| | | | | | | * win/tkWinX.c: and simplify WNDCLASS to one style. * win/tkWinWm.c: Reduce wrapper update for exStyle to toolwindow change only and set WS_EX_LAYERED as sticky (once set on a window, do not remove it) to reduce alpha transition flicker.
* Many minute fixes to reduce number of minor warnings from GCC.dkf2007-01-111-11/+13
|
* * win/tkWinKey.c: Add WM_UNICHAR window message support (used byhobbs2006-08-301-1/+43
| | | | * win/tkWinX.c: virtual keyboard apps). [Bug 1518677] (petasis)
* * win/tkWinX.c (TkWinXInit): init default keyboard charsethobbs2006-04-051-2/+15
| | | | correctly. [Bug 1374119] (pajas)
* More fixes (mostly getting rid of excess spaces)dkf2005-12-021-221/+235
|
* Fix problems in last commitdkf2005-12-021-3/+3
|
* ANSIficationdkf2005-12-021-556/+573
|
* Fix for [Bug 1216006]Joe Mistachkin2005-08-211-2/+2
|
* * win/tkWinX.c: Define _WIN32_WINNT with NT SP 3 datamdejong2005-07-231-3/+3
| | | | | | | to fix compiler error because SendInput was not defined. The new msys_mingw7 release is now needed to compile the HEAD with mingw gcc. [Bug 1210712]
* * win/tkWinX.c (Tk_ResetUserInactiveTime): cast to squelchhobbs2005-06-011-8/+8
| | | | compiler warning.
* Partial implementation of TIP#245; thanks Reinhard!dkf2005-05-271-1/+95
|
* correct xany -> xkey typo from 2005-02-28 commithobbs2005-03-041-2/+2
|
* * win/tkWinX.c (GenerateXEvent): correct %A translation onhobbs2005-02-281-6/+9
| | | | MouseWheel [Bug 1118340]
* Modified to handle a wide-character title string of a toplevelchengyemao2005-01-311-1/+3
|
* Added TK_INFO message for use in an embedded window attachment protocol; ↵chengyemao2005-01-161-1/+2
| | | | modified TkpUseWindow to allow to attach to a legacy container with a warning; modified some return values of messages from an embedded window to differentiate a case of unprocessed
* Implemented TK_STAT message to support {wm state} for embedded windowchengyemao2005-01-071-1/+2
|
* Modified to support embedded menu widgetchengyemao2004-12-281-1/+2
|
* implemented overrideredirect for an embedded; corrected incorrect frame ↵chengyemao2004-12-201-1/+2
| | | | upper left x and y of an embedded toplevel
* featrue implementation of Tk container and embedded including TK_MOVEWINDOW, ↵chengyemao2004-12-201-2/+2
| | | | TK_ICONIFY, TK_DEICONIFY, TK_WITHDRAW; replaced TK_TITLE with TK_GETFRAMEWID for setting container's title across process boundary; bug fix in wm overrideredirect for TK_EMBEDDED window
* Bug fix and feature implementation of embedded/embedding Tkchengyemao2004-12-191-1/+7
|
* bug fix (842945,831627)chengyemao2004-12-171-1/+2
|
* * win/tkWinX.c: Signature for tkWinXCleanup needed to bedavygrvy2004-10-271-5/+5
| | | | | | | * generic/tkInt.decls: changed so it matches the Tcl_ExitProc * generic/tkIntPlatDecls.h: typedef to avoid a bad-style cast. * win/makefile.vc: Force TCL_LIBRARY envar when calling tclsh
* * win/tkWinX.c: Added declaration for advapi32 now that this filepatthoyts2004-09-241-1/+2
| | | | uses the Reg* functions (req'd for nmake build system).
* * win/tkWinInt.h (TkWinDisplayChanged): added declhobbs2004-09-231-68/+106
| | | | | | | | * 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]
* * generic/tkInt.decls: Add decl for TkWinGetPlatformTheme.mdejong2004-09-211-1/+56
| | | | | | | | | | | | | | | | It is only defined under Win32. * generic/tkIntPlatDecls.h: Regen. * generic/tkStubInit.c: Regen. * win/tkWinInt.h: Define TK_THEME_WIN_CLASSIC and TK_THEME_WIN_XP. * win/tkWinMenu.c (DrawMenuEntryAccelerator, DrawMenuEntryLabel): Draw a disabled 3D text highlight for the accelerator only with the Win95/98 look. Same goes for the menu entry text. * win/tkWinX.c (TkWinGetPlatformId, TkWinGetPlatformTheme): Automatically detect the Windows theme in use and return either TK_THEME_WIN_CLASSIC or TK_THEME_WIN_XP when the TkWinGetPlatformTheme function is invoked. [Patch 866194]
* TIP#158 implementation; keypad keys on Win are now distinguishable.dkf2004-07-051-1/+8
|
* * win/tkWinX.c: fix drawing of unicode chars in menuhobbs2004-05-031-1/+5
| | | | | * win/tkWinInt.h (TkWinProcs): titles. [Bug #904371] (riefenstahl) * win/tkWinMenu.c (ReconfigureWindowsMenu):
* * generic/tkClipboard.c: Move TkClipCleanup from tkClipboard.chobbs2004-05-031-16/+49
| | | | | | | | * macosx/tkMacOSXXStubs.c: to being implemented in a platform * unix/tkUnixEvent.c: specific manner. The cleanup order was * win/tkWinX.c: bad at least on Windows, where we reset/cleared display info that was still needed for the clipboard to render. [Bug #939389, #822002, #732662]
* * generic/tk3d.c: All uses of 'panic' (the macro) changeddavygrvy2004-01-131-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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:
* * generic/tkEvent.c: Added three new functions: TkCreateExitHandler,davygrvy2003-12-211-2/+2
| | | | | | | | | | | | | | | | | * generic/tkInt.h: TkDeleteExitHandler, and TkFinalize. This adds * generic/tkMenu.c: an insertion point so Tk's exit handlers can be * generic/tkWindow.c: called on their own from tk85.dll's DllMain * mac/tkMacButton.c: for DLL_PROCESS_DETACH. These are private to * unix/tkUnixEvent.c: the binary and not exported. It is possible * win/tkWin32Dll.c: the Windows OS can unload Tk _prior_ to Tcl * win/tkWinEmbed.c: under some conditions such as ExitProcess(). * win/tkWinMenu.c: This avoids a dangling pointer problem when Tcl * win/tkWinX.c: does Tcl_Finalize after Tk has been unloaded. * win/winMain.c: DllMain's DLL_PROCESS_DETACH now protected with SEH as DeleteWindowsExitProc is causing an exception of its own under some teardown conditions. AT&T assembly syntax has not been added for MinGW yet. [Tcl Patch 858493]
* (TkWinXInit): Don't restric InitCommonControlsEx. It's valid on all platformsdavygrvy2003-12-131-10/+9
| | | | | | given IE 3.0+ is installed. As tkWinX.c does set #define _WIN32_IE 0x0300, I guess we can accept IE3 as the lowest denominator and use version 4.71 features of Comctl32.dll
* * generic/tkInt.decls: add TkWinSetHINSTANCE declhobbs2002-12-081-4/+29
| | | | | | | | | | * generic/tkIntPlatDecls.h: regen * generic/tkStubInit.c: regen * win/tkWinInit.c (TkpInit): While init and cleanup aren't correct * win/tkWinX.c (TkWinXInit): in DllMain, we had to specify the * win/tkWin32Dll.c (DllMain): true HINSTANCE or the resources of a dynamic Tk weren't being loaded correctly. Created a new function TkWinSetHINSTANCE for this purpose.
* * win/tkWinX.c (TkWinXInit): Move cleanup into an exit handlerhobbs2002-12-061-1/+7
| | | | | | * 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.
* * generic/tkBind.c (TkBindDeadWindow):mdejong2002-06-191-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* * generic/tkCmds.c (Tk_TkObjCmd):hobbs2002-06-171-13/+16
| | | | | | | | | | * 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.
* * win/tkWinX.c (Tk_SetCaretPos): remove WM_IME_STARTCOMPOSITIONhobbs2002-04-121-37/+118
| | | | | | | | | | | and place the IME position within Tk_SetCaretPos. Cache results in Tk_SetCaretPos to reduce unnecessary repositioning. Also call DestroyCaret if we receive WM_KILLFOCUS. (TkpOpenDisplay): ZeroMemory the initial display structures. (TkWinGetUnicodeEncoding): Added so that Windows only needs to cache this value one, and then free it in TkWinXCleanup. (HandleIMEComposition): add support for Win98 and ATOK13 IME. (yamamoto)
* * win/tkWinX.c: added Tk_SetCaretPos code to position IME windowshobbs2002-04-051-1/+87
| | | | correctly when WM_IME_STARTCOMPOSITION is received.
* * win/tkWinX.c: Define _WIN32_IE as 0x0300mdejong2002-03-071-1/+12
| | | | | | before including commctrl.h so that we can access the InitCommonControlsEx API when building Tk with mingw.
* * 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/tkWinInt.h:hobbs2001-12-281-1/+37
| | | | | | | | * win/tkWinX.c: added TkWinProcs that represent a function table to switch between unicode and ansi procs on Windows. This is analogous to the TclWinProcs. Using Tcl_WinUtfToTChar, we can easily take advantage of using unicode functions where available without having to switch on the platform id each time.
* * win/tkWinX.c (TkWinXInit): added InitCommonControlsEx call.hobbs2001-11-101-1/+13
| | | | | | | | | * win/rc/tk.rc: * win/rc/wish.rc: * win/rc/wish.exe.manifest: added resources that specify using v6 of the MS Common Controls library when available (WinXP+). This enables use of the themeable widgets (like scrollbars) to be used in Tk. [Patch #478933]
* (TkGetServerInfo): added recognition of Win64hobbs2001-09-211-4/+10
|
* * win/configure: Regen.mdejong2001-06-231-1/+7
| | | | | | | * win/tcl.m4 (SC_CONFIG_CFLAGS): Link to the imm32 library when building with mingw gcc. * win/tkWinX.c: Include the imm.h header to fix compiling with mingw gcc.
* * win/tkWinX.c: moved the initialization of tkPlatformId fromhobbs2001-05-301-10/+11
| | | | | TkWinXInit to TkWinGetPlatformId because static builds could call it before it was initialized. [Bug #427278]
* * win/makefile.vc:hobbs2001-03-301-8/+232
| | | | | | | | | * win/configure: * win/tcl.m4: added imm32.lib to LIBS_GUI for Tk IME support. * win/tkWinInt.h: * win/tkWinKey.c: * win/tkWinX.c: added support for changing IME on the fly in Windows (2000). (lam) [Patch #402993]