- Added wxDC::CopyAttributes() and use it in wxBufferedDC.
- Added wxTextWrapper helper class useful for wrapping lines of text.
- Added EVT_DATAVIEW_CACHE_HINT() event (Trigve).
+- Added wxLB_NO_SB style (implemented for MSW only; Dario Senic).
GTK:
#define wxLB_MULTIPLE 0x0040
#define wxLB_EXTENDED 0x0080
/* wxLB_OWNERDRAW is Windows-only */
+#define wxLB_NEEDED_SB 0x0000
#define wxLB_OWNERDRAW 0x0100
-#define wxLB_NEEDED_SB 0x0200
-#define wxLB_ALWAYS_SB 0x0400
+#define wxLB_ALWAYS_SB 0x0200
+#define wxLB_NO_SB 0x0400
#define wxLB_HSCROLL wxHSCROLL
/* always show an entire number of rows */
#define wxLB_INT_HEIGHT 0x0800
Always show a vertical scrollbar.
@style{wxLB_NEEDED_SB}
Only create a vertical scrollbar if needed.
+ @style{wxLB_NO_SB}
+ Don't create vertical scrollbar (wxMSW only).
@style{wxLB_SORT}
The listbox contents are sorted in alphabetical order.
@endStyleTable
wxFLAGS_MEMBER(wxLB_HSCROLL)
wxFLAGS_MEMBER(wxLB_ALWAYS_SB)
wxFLAGS_MEMBER(wxLB_NEEDED_SB)
+ wxFLAGS_MEMBER(wxLB_NO_SB)
wxFLAGS_MEMBER(wxLB_SORT)
wxEND_FLAGS( wxListBoxStyle )
{
WXDWORD msStyle = wxControl::MSWGetStyle(style, exstyle);
- // always show the vertical scrollbar if necessary -- otherwise it is
- // impossible to use the control with the mouse
- msStyle |= WS_VSCROLL;
-
// we always want to get the notifications
msStyle |= LBS_NOTIFY;
else if ( style & wxLB_EXTENDED )
msStyle |= LBS_EXTENDEDSEL;
- if ( m_windowStyle & wxLB_ALWAYS_SB )
- msStyle |= LBS_DISABLENOSCROLL;
+ wxASSERT_MSG( !(style & wxLB_ALWAYS_SB) || !(style & wxLB_NO_SB),
+ _T( "Conflicting styles wxLB_ALWAYS_SB and wxLB_NO_SB." ) );
+
+ if ( !(style & wxLB_NO_SB) )
+ {
+ msStyle |= WS_VSCROLL;
+ if ( style & wxLB_ALWAYS_SB )
+ msStyle |= LBS_DISABLENOSCROLL;
+ }
+
if ( m_windowStyle & wxLB_HSCROLL )
msStyle |= WS_HSCROLL;
if ( m_windowStyle & wxLB_SORT )