X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a3bf7524f394af039efe196a186f7969cbabcc19..c781c31638cc5ae06eb325567323f131e8183a75:/include/wx/generic/scrolwin.h diff --git a/include/wx/generic/scrolwin.h b/include/wx/generic/scrolwin.h index 73ba89b9bc..8ce2e14996 100644 --- a/include/wx/generic/scrolwin.h +++ b/include/wx/generic/scrolwin.h @@ -23,7 +23,7 @@ #include "wx/window.h" #include "wx/panel.h" -WXDLLEXPORT_DATA(extern const wxChar*) wxPanelNameStr; +extern WXDLLEXPORT_DATA(const wxChar*) wxPanelNameStr; // default scrolled window style #ifndef wxScrolledWindowStyle @@ -32,6 +32,9 @@ WXDLLEXPORT_DATA(extern const wxChar*) wxPanelNameStr; // avoid triggering this stupid VC++ warning #ifdef __VISUALC__ + #if _MSC_VER > 1100 + #pragma warning(push) + #endif #pragma warning(disable:4355) // 'this' used in base member initializer list #endif @@ -45,20 +48,20 @@ class WXDLLEXPORT wxGenericScrolledWindow : public wxPanel, public: wxGenericScrolledWindow() : wxScrollHelper(this) { } wxGenericScrolledWindow(wxWindow *parent, - wxWindowID id = -1, + wxWindowID winid = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxScrolledWindowStyle, const wxString& name = wxPanelNameStr) : wxScrollHelper(this) { - Create(parent, id, pos, size, style, name); + Create(parent, winid, pos, size, style, name); } virtual ~wxGenericScrolledWindow(); bool Create(wxWindow *parent, - wxWindowID id, + wxWindowID winid, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxScrolledWindowStyle, @@ -71,6 +74,14 @@ public: virtual void DoSetVirtualSize(int x, int y); + // wxWindow's GetBestVirtualSize returns the actual window size, + // whereas we want to return the virtual size + virtual wxSize GetBestVirtualSize() const; + + // Return the size best suited for the current window + // (this isn't a virtual size, this is a sensible size for the window) + virtual wxSize DoGetBestSize() const; + protected: // this is needed for wxEVT_PAINT processing hack described in // wxScrollHelperEvtHandler::ProcessEvent() @@ -79,7 +90,7 @@ protected: // we need to return a special WM_GETDLGCODE value to process just the // arrows but let the other navigation characters through #ifdef __WXMSW__ - virtual long MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam); + virtual WXLRESULT MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam); #endif // __WXMSW__ private: @@ -87,8 +98,8 @@ private: DECLARE_EVENT_TABLE() }; -#ifdef __VISUALC__ - #pragma warning(default:4355) +#if defined(__VISUALC__) && (_MSC_VER > 1100) + #pragma warning(pop) #endif #endif