diff --git a/docs/changes.txt b/docs/changes.txt index be8e4b07b5..240827e296 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -121,6 +121,7 @@ wxMSW: - Fix appearance of notebook with non-top tabs under Windows Vista. - Fixed bug with symbol resolving in wxStackWalker (Axel Gembe). - Fixed showing busy cursor for disabled windows and during wxExecute() +- Added wxBORDER_THEME, used automatically by wxTextCtrl in wxTE_RICH[2] mode. wxGTK: diff --git a/docs/latex/wx/window.tex b/docs/latex/wx/window.tex index 1dae19c773..584d76b13d 100644 --- a/docs/latex/wx/window.tex +++ b/docs/latex/wx/window.tex @@ -48,13 +48,15 @@ window class or on all platforms. \twocolwidtha{5cm}% \begin{twocollist}\itemsep=0pt -\twocolitem{\windowstyle{wxSIMPLE\_BORDER}}{Displays a thin border around the window. wxBORDER is the old name +\twocolitem{\windowstyle{wxBORDER\_SIMPLE}}{Displays a thin border around the window. wxSIMPLE\_BORDER is the old name for this style. } -\twocolitem{\windowstyle{wxDOUBLE\_BORDER}}{Displays a double border. Windows and Mac only.} -\twocolitem{\windowstyle{wxSUNKEN\_BORDER}}{Displays a sunken border.} -\twocolitem{\windowstyle{wxRAISED\_BORDER}}{Displays a raised border.} -\twocolitem{\windowstyle{wxSTATIC\_BORDER}}{Displays a border suitable for a static control. Windows only. } -\twocolitem{\windowstyle{wxNO\_BORDER}}{Displays no border, overriding the default border style for the window.} +\twocolitem{\windowstyle{wxBORDER\_DOUBLE}}{Displays a double border. wxDOUBLE\_BORDER is the old name for this style. Windows and Mac only.} +\twocolitem{\windowstyle{wxBORDER\_SUNKEN}}{Displays a sunken border. wxSUNKEN\_BORDER is the old name for this style.} +\twocolitem{\windowstyle{wxBORDER\_RAISED}}{Displays a raised border. wxRAISED\_BORDER is the old name for this style. } +\twocolitem{\windowstyle{wxBORDER\_STATIC}}{Displays a border suitable for a static control. wxSTATIC\_BORDER is the old name for this style. Windows only. } +\twocolitem{\windowstyle{wxBORDER\_THEME}}{Displays a themed border where possible. Currently this has an effect on Windows XP and above only. +For more information on themed borders, please see \helpref{Themed borders on Windows}{wxmswthemedborders}.} +\twocolitem{\windowstyle{wxBORDER\_NONE}}{Displays no border, overriding the default border style for the window. wxNO\_BORDER is the old name for this style.} \twocolitem{\windowstyle{wxTRANSPARENT\_WINDOW}}{The window is transparent, that is, it will not receive paint events. Windows only.} \twocolitem{\windowstyle{wxTAB\_TRAVERSAL}}{Use this to enable tab traversal for non-dialog windows.} diff --git a/docs/latex/wx/wxmsw.tex b/docs/latex/wx/wxmsw.tex index 42457c92da..fd4a2c0bd5 100644 --- a/docs/latex/wx/wxmsw.tex +++ b/docs/latex/wx/wxmsw.tex @@ -24,6 +24,32 @@ MinGW32 tool chain. For further information, please see the files in docs/msw in the distribution. +\subsection{Themed borders on Windows}\label{wxmswthemedborders} + +Starting with wxWidgets 2.8.5, you can specify the wxBORDER\_THEME style to have wxWidgets +use a themed border. Using the default XP theme, this is a thin 1-pixel blue border, +with an extra 1-pixel border in the window client background colour (usually white) to +separate the client area's scrollbars from the border. + +If you don't specify a border style for a wxTextCtrl in rich edit mode, wxWidgets now gives +the control themed borders automatically, where previously they would take the Windows 95-style +sunken border. Other native controls such as wxTextCtrl in non-rich edit mode, and wxComboBox, +already paint themed borders where appropriate. To use themed borders on other windows, such +as wxPanel, pass the wxBORDER\_THEME style. + +Note that in wxWidgets 2.9 and above, wxBORDER\_THEME is defined to be 0 and it is not necessary +to pass the border style explicitly: wxWidgets will deduce the correct border style itself if there +is none supplied. Because of the requirements of binary compatibility, this automatic border +capability could not be put into wxWidgets 2.8 except for built-in, native controls. In 2.8, the border +must be specified for custom controls and windows. However, to make it easier to decide +what style should be passed, you can use (on Windows only) the function wxWindow::GetThemedBorderStyle() +and it will return a suitable style for the current version of Windows. On Windows CE, +wxBORDER\_SIMPLE will be returned; on Windows 95/98/NT/2K, wxBORDER\_SUNKEN will be +returned, and on XP and above where theming is turned on, wxBORDER\_THEME will be returned. +This function does not exist in wxWidgets 2.9 and is not part of the official API. + +wxBORDER\_THEME has no effect on platforms other than Windows. + \subsection{wxWinCE}\label{wxwince} wxWinCE is the name given to wxMSW when compiled on Windows CE devices;