]> git.saurik.com Git - wxWidgets.git/commitdiff
added support for wxALWAYS_SHOW_SB (finally closes patch 410865 -- first still opened...)
authorVadim Zeitlin <vadim@wxwidgets.org>
Tue, 8 Jul 2003 23:14:02 +0000 (23:14 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Tue, 8 Jul 2003 23:14:02 +0000 (23:14 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21787 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

docs/changes.txt
docs/latex/wx/window.tex
src/msw/window.cpp

index d9a560b63b3712eb7725469582591719ebe3c976..859cdd49e147d32bc85e4a88474d400acecc2fd9 100644 (file)
@@ -140,30 +140,24 @@ wxMSW:
 - wxCaret::SetSize() doesn't hide the caret any longer as it used to
 - wxCheckListBox::Check() doesn't send CHECKLISTBOX_TOGGLE event any more
 - fixed bug with wxTR_EDIT_LABELS not working with wxTR_MULTIPLE
-- fixes for compilation with OpenWatcom compiler
+- fixes for compilation with OpenWatcom and DigitalMars compilers
 - fixed wxStaticText best size calculation (was wrong by '&' width)
 - fixed calling wxFrame::Maximize(FALSE) before the window is shown
-= added wxNotebook::HitTest() (Otto Wyss)
-- all libraries built with makefile.g95 have a _min or _cyg suffix
-  (for MinGW and Cygwin)
-- When using DLL, wxLocalFSHandler was not being exported - added WXEXPORTDLL
-- A wxEvtHandler object was not removed from wxPendingEvents on deletion.
-  wxPendingEventsLocker was being deleted in App before all wxEvtHandler
-  objects have been destroyed resulting in stale handler/lock
-  ptrs; fixed
+- added wxNotebook::HitTest() (Otto Wyss)
+- libraries built with makefile.g95 have a _min or _cyg suffix (MinGW/Cygwin)
+- when using DLL, wxLocalFSHandler was not being exported
+- fixed problem with wxEvtHandler object not removed from wxPendingEvents
 - Windows XP manifest is now included in wx.rc; it is no longer neccessary
   to ship .exe.manifest file with applications to support XP themes
 - wxLocale::Init no longer reports error if trying to set Unicode-only locale
   or if user's default locale is Unicode-only
-- Improved border handling so it no longer shows a thin and
-  sunken border under XP
+- improved border handling under Windows XP
 - partial fix for wxNotebook pages looking bad under XP: wxUSE_UXTHEME
   enables XP theme engine code, and wxUSE_UXTHEME_AUTO tells
   wxWindows to use the theme tab colour for control backgrounds.
-  Proper XP theme support is planned for 2.6
-- disable wxNB_RIGHT, wxNB_LEFT, wxNB_BOTTOM notebook styles
-  if the version of CommCtl doesn't support it (XP)
+- disable wxNB_RIGHT, wxNB_LEFT, wxNB_BOTTOM notebook styles under Windows XP
 - fixed release mode build with VC 7.x (Martin Ecker)
+- added support for wxALWAYS_SHOW_SB style
 
 wxMotif:
 
index 5ed98dce2bd4150d9f7bba4516e19dfc848a6529..666ffa1dcd9fa0e01fb7a0dade57cdd6087c26a5 100644 (file)
@@ -35,8 +35,6 @@ for this style. }
 \twocolitem{\windowstyle{wxSTATIC\_BORDER}}{Displays a border suitable for a static control. Windows only. }
 \twocolitem{\windowstyle{wxTRANSPARENT\_WINDOW}}{The window is transparent, that is, it will not receive paint
 events. Windows only.}
-\twocolitem{\windowstyle{wxNO\_3D}}{Prevents the children of this window taking on 3D styles, even though
-the application-wide policy is for 3D controls. Windows only.}
 \twocolitem{\windowstyle{wxTAB\_TRAVERSAL}}{Use this to enable tab traversal for non-dialog windows.}
 \twocolitem{\windowstyle{wxWANTS\_CHARS}}{Use this to indicate that the window
 wants to get all char events - even for keys like TAB or ENTER which are
@@ -48,6 +46,11 @@ new window area manually if you use this style. Currently only has an effect for
 Windows.}
 \twocolitem{\windowstyle{wxVSCROLL}}{Use this style to enable a vertical scrollbar.}
 \twocolitem{\windowstyle{wxHSCROLL}}{Use this style to enable a horizontal scrollbar.}
+\twocolitem{\windowstyle{wxALWAYS\_SHOW\_SB}{If a window has scrollbars,
+disable them instead of hiding them when they are not needed (i.e. when the
+size of the window is big enough to not require the scrollbars to navigate it).
+This style is currently only implemented for wxMSW and wxUniversal and does
+nothing on the other platforms.}
 \twocolitem{\windowstyle{wxCLIP\_CHILDREN}}{Use this style to eliminate flicker caused by the background being
 repainted, then children being painted over them. Windows only.}
 \end{twocollist}
index 5341aa8fd5932dc9606867636bfda8fb99bf755b..57ebce9a768d76925cccf900d76245a25d6fede0 100644 (file)
@@ -788,6 +788,11 @@ void wxWindowMSW::SetScrollPos(int orient, int pos, bool refresh)
     info.nMin = 0;
     info.nPos = pos;
     info.fMask = SIF_POS;
+    if ( HasFlag(wxALWAYS_SHOW_SB) )
+    {
+        // disable scrollbar instead of removing it then
+        info.fMask |= SIF_DISABLENOSCROLL;
+    }
 
     ::SetScrollInfo(hWnd, orient == wxHORIZONTAL ? SB_HORZ : SB_VERT,
                     &info, refresh);
@@ -806,6 +811,11 @@ void wxWindowMSW::SetScrollbar(int orient,
     info.nMax = range - 1;      //  as both nMax and nMax are inclusive
     info.nPos = pos;
     info.fMask = SIF_RANGE | SIF_PAGE | SIF_POS;
+    if ( HasFlag(wxALWAYS_SHOW_SB) )
+    {
+        // disable scrollbar instead of removing it then
+        info.fMask |= SIF_DISABLENOSCROLL;
+    }
 
     HWND hWnd = GetHwnd();
     if ( hWnd )