]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/compositewin.h
Use correct reload flags on all platforms to avoid compilation errors
[wxWidgets.git] / include / wx / compositewin.h
index f5110ba9b970f21e791166cc328dab8865e0860f..9e7b5fd6a1cca1d4c2260c11c19642d7fbf2b55f 100644 (file)
 //     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 <class T>
-    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 W>
+class wxCompositeWindow : public W
+{
+};
+
+#endif // !__VISUALC6__/__VISUALC6__
+
 #endif // _WX_COMPOSITEWIN_H_