X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a9e41db760792a4e666492d77290f4c51e9c5b19..835165d576b66441987b78519e6ef1fe74ea795a:/include/wx/compositewin.h diff --git a/include/wx/compositewin.h b/include/wx/compositewin.h index f5110ba9b9..9e7b5fd6a1 100644 --- a/include/wx/compositewin.h +++ b/include/wx/compositewin.h @@ -18,6 +18,16 @@ // officially stabilized unless you are ready to change it with the next // wxWidgets release. +// FIXME-VC6: This compiler can't compile DoSetForAllParts() template function, +// it can't determine whether the deduced type should be "T" or "const T&". And +// without this function wxCompositeWindow is pretty useless so simply disable +// this code for it, this does mean that setting colours/fonts/... for +// composite controls won't work in the library compiled with it but so far +// this only affects the generic wxDatePickerCtrl which is not used by default +// under MSW anyhow so it doesn't seem to be worth it to spend time and uglify +// the code to fix it. +#ifndef __VISUALC6__ + // ---------------------------------------------------------------------------- // wxCompositeWindow is a helper for implementing composite windows: to define // a class using subwindows, simply inherit from it specialized with the real @@ -49,7 +59,7 @@ public: if ( !BaseWindowClass::SetForegroundColour(colour) ) return false; - DoSetForAllParts(&wxWindow::SetForegroundColour, colour); + DoSetForAllParts(&wxWindowBase::SetForegroundColour, colour); return true; } @@ -59,7 +69,7 @@ public: if ( !BaseWindowClass::SetBackgroundColour(colour) ) return false; - DoSetForAllParts(&wxWindow::SetBackgroundColour, colour); + DoSetForAllParts(&wxWindowBase::SetBackgroundColour, colour); return true; } @@ -69,7 +79,7 @@ public: if ( !BaseWindowClass::SetFont(font) ) return false; - DoSetForAllParts(&wxWindow::SetFont, font); + DoSetForAllParts(&wxWindowBase::SetFont, font); return true; } @@ -79,7 +89,7 @@ public: if ( !BaseWindowClass::SetCursor(cursor) ) return false; - DoSetForAllParts(&wxWindow::SetCursor, cursor); + DoSetForAllParts(&wxWindowBase::SetCursor, cursor); return true; } @@ -90,7 +100,7 @@ private: virtual wxWindowList GetCompositeWindowParts() const = 0; template - void DoSetForAllParts(bool (wxWindow::*func)(const T&), const T& arg) + void DoSetForAllParts(bool (wxWindowBase::*func)(const T&), const T& arg) { // Simply call the setters for all parts of this composite window. const wxWindowList parts = GetCompositeWindowParts(); @@ -107,4 +117,13 @@ private: wxDECLARE_NO_COPY_TEMPLATE_CLASS(wxCompositeWindow, W); }; +#else // __VISUALC6__ + +template +class wxCompositeWindow : public W +{ +}; + +#endif // !__VISUALC6__/__VISUALC6__ + #endif // _WX_COMPOSITEWIN_H_