added wxWindow::AlwaysShowScrollbars() and its wxMac implementation

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49611 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2007-11-03 22:14:29 +00:00
parent 3a5b9ee8b8
commit c114200348
6 changed files with 120 additions and 28 deletions

View File

@@ -65,7 +65,7 @@ public:
virtual void Freeze();
virtual void Thaw();
virtual bool IsFrozen() const;
virtual void Update() ;
virtual void ClearBackground();
@@ -86,6 +86,7 @@ protected:
virtual void DoEnable( bool enable );
virtual void OnEnabled( bool enabled );
virtual bool DoPopupMenu( wxMenu *menu, int x, int y );
public:
virtual void SetScrollbar( int orient, int pos, int thumbVisible,
int range, bool refresh = true );
@@ -95,6 +96,13 @@ public:
virtual int GetScrollRange( int orient ) const;
virtual void ScrollWindow( int dx, int dy,
const wxRect* rect = (wxRect *) NULL );
virtual void AlwaysShowScrollbars(bool horz = true, bool vert = true);
virtual bool IsScrollbarAlwaysShown(int orient) const
{
return orient == wxHORIZONTAL ? m_hScrollBarAlwaysShown
: m_vScrollBarAlwaysShown;
}
virtual bool Reparent( wxWindowBase *newParent );
#if wxUSE_DRAG_AND_DROP
@@ -126,7 +134,7 @@ public:
virtual bool SetTransparent(wxByte alpha);
virtual bool CanSetTransparent();
virtual wxByte GetTransparent() const ;
// event handlers
// --------------
void OnSetFocus( wxFocusEvent& event );
@@ -302,6 +310,8 @@ protected:
wxScrollBar* m_hScrollBar ;
wxScrollBar* m_vScrollBar ;
bool m_hScrollBarAlwaysShown;
bool m_vScrollBarAlwaysShown;
wxString m_label ;
// set to true if we do a sharp clip at the content area of this window
@@ -349,6 +359,11 @@ private:
// common part of all ctors
void Init();
// show/hide scrollbars as needed, common part of SetScrollbar() and
// AlwaysShowScrollbars()
void DoUpdateScrollbarVisibility();
WXEVENTHANDLERREF m_macControlEventHandler ;
DECLARE_NO_COPY_CLASS(wxWindowMac)