X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/9bb3f212e26b4685f0c6ed7281d50b658ecc1491..ca77701441e39245dcbfce903049e76f166979e5:/include/wx/vscroll.h diff --git a/include/wx/vscroll.h b/include/wx/vscroll.h index 189c34c334..6b9fba28c7 100644 --- a/include/wx/vscroll.h +++ b/include/wx/vscroll.h @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: include/wx/vscroll.h +// Name: wx/vscroll.h // Purpose: Variable scrolled windows (wx[V/H/HV]ScrolledWindow) // Author: Vadim Zeitlin // Modified by: Brad Anderson, Bryan Petty @@ -15,7 +15,7 @@ #include "wx/panel.h" #include "wx/position.h" -class WXDLLEXPORT wxVarScrollHelperEvtHandler; +class WXDLLIMPEXP_FWD_CORE wxVarScrollHelperEvtHandler; // Using the same techniques as the wxScrolledWindow class | @@ -59,7 +59,7 @@ class WXDLLEXPORT wxVarScrollHelperEvtHandler; // required virtual functions that need to be implemented for any orientation // specific work. -class WXDLLEXPORT wxVarScrollHelperBase +class WXDLLIMPEXP_CORE wxVarScrollHelperBase { public: // constructors and such @@ -236,7 +236,7 @@ protected: #ifdef __WXMAC__ // queue mac window update after handling scroll event - virtual void UpdateMacScrollWindow() = 0; + virtual void UpdateMacScrollWindow() { } #endif // __WXMAC__ // change the target window @@ -297,7 +297,7 @@ private: // Provides public API functions targeted for vertical-specific scrolling, // wrapping the functionality of wxVarScrollHelperBase. -class WXDLLEXPORT wxVarVScrollHelper : public wxVarScrollHelperBase +class WXDLLIMPEXP_CORE wxVarVScrollHelper : public wxVarScrollHelperBase { public: // constructors and such @@ -370,7 +370,7 @@ protected: // Provides public API functions targeted for horizontal-specific scrolling, // wrapping the functionality of wxVarScrollHelperBase. -class WXDLLEXPORT wxVarHScrollHelper : public wxVarScrollHelperBase +class WXDLLIMPEXP_CORE wxVarHScrollHelper : public wxVarScrollHelperBase { public: // constructors and such @@ -453,7 +453,7 @@ protected: // functions to make changing values for both orientations at the same time // easier. -class WXDLLEXPORT wxVarHVScrollHelper : public wxVarVScrollHelper, +class WXDLLIMPEXP_CORE wxVarHVScrollHelper : public wxVarVScrollHelper, public wxVarHScrollHelper { public: @@ -561,7 +561,7 @@ public: // in not only those classes, but also in wxHVScrolledWindow where functions // are inherited from both. -class WXDLLEXPORT wxVarVScrollLegacyAdaptor : public wxVarVScrollHelper +class WXDLLIMPEXP_CORE wxVarVScrollLegacyAdaptor : public wxVarVScrollHelper { public: // constructors and such @@ -623,8 +623,7 @@ protected: // OnGetLineHeight instead (backwards compatible name) // note that we don't need to forward OnGetUnitSize() as it is already // forwarded to OnGetRowHeight() in wxVarVScrollHelper - virtual wxCoord OnGetRowHeight(size_t n) const - { return OnGetLineHeight(n); } + virtual wxCoord OnGetRowHeight(size_t n) const; // this function doesn't have to be overridden but it may be useful to do // it if calculating the lines heights is a relatively expensive operation @@ -644,8 +643,7 @@ protected: // forwards the calls from base class pure virtual function to pure virtual // OnGetLinesHint instead (backwards compatible name) - void OnGetRowsHeightHint(size_t rowMin, size_t rowMax) const - { OnGetLinesHint(rowMin, rowMax); } + void OnGetRowsHeightHint(size_t rowMin, size_t rowMax) const; }; #else // !WXWIN_COMPATIBILITY_2_8 @@ -682,7 +680,7 @@ public: \ // wxScrolledWindow features however, notably it can't scroll only a rectangle // of the window and not its entire client area. -class WXDLLEXPORT wxVScrolledWindow : public wxPanel, +class WXDLLIMPEXP_CORE wxVScrolledWindow : public wxPanel, public wxVarVScrollLegacyAdaptor { public: @@ -738,7 +736,7 @@ protected: #endif // __WXMAC__ private: - DECLARE_NO_COPY_CLASS(wxVScrolledWindow) + wxDECLARE_NO_COPY_CLASS(wxVScrolledWindow); DECLARE_ABSTRACT_CLASS(wxVScrolledWindow) }; @@ -758,7 +756,7 @@ private: // wxScrolledWindow features however, notably it can't scroll only a rectangle // of the window and not its entire client area. -class WXDLLEXPORT wxHScrolledWindow : public wxPanel, +class WXDLLIMPEXP_CORE wxHScrolledWindow : public wxPanel, public wxVarHScrollHelper { public: @@ -805,7 +803,7 @@ protected: #endif // __WXMAC__ private: - DECLARE_NO_COPY_CLASS(wxHScrolledWindow) + wxDECLARE_NO_COPY_CLASS(wxHScrolledWindow); DECLARE_ABSTRACT_CLASS(wxHScrolledWindow) }; @@ -819,7 +817,7 @@ private: // scrolled windows automatically handling everything needed to scroll both // axis simultaneously. -class WXDLLEXPORT wxHVScrolledWindow : public wxPanel, +class WXDLLIMPEXP_CORE wxHVScrolledWindow : public wxPanel, public wxVarHVScrollHelper { public: @@ -842,7 +840,7 @@ public: long style = 0, const wxString& name = wxPanelNameStr) : wxPanel(), - wxVarHVScrollHelper(this) + wxVarHVScrollHelper(this) { (void)Create(parent, id, pos, size, style, name); } @@ -870,7 +868,7 @@ protected: #endif // __WXMAC__ private: - DECLARE_NO_COPY_CLASS(wxHVScrolledWindow) + wxDECLARE_NO_COPY_CLASS(wxHVScrolledWindow); DECLARE_ABSTRACT_CLASS(wxHVScrolledWindow) };