wxAcceleratorTable();
 
     // copy ctor
-    wxAcceleratorTable(const wxAcceleratorTable& accel) { Ref(accel); }
+    wxAcceleratorTable(const wxAcceleratorTable& accel) : wxObject(accel) { Ref(accel); }
 
     // load from .rc resource (Windows specific)
     wxAcceleratorTable(const wxString& resource);
 
     wxBitmap() { Init(); }
 
     // Copy constructors
-    wxBitmap(const wxBitmap& bitmap) { Init(); Ref(bitmap); }
+    wxBitmap(const wxBitmap& bitmap) : wxGDIImage(bitmap) { Init(); Ref(bitmap); }
 
     // Initialize with raw data
     wxBitmap(const char bits[], int width, int height, int depth = 1);
 
     wxBrush();
     wxBrush(const wxColour& col, int style = wxSOLID);
     wxBrush(const wxBitmap& stipple);
-    wxBrush(const wxBrush& brush) { Ref(brush); }
+    wxBrush(const wxBrush& brush) : wxGDIObject(brush) { Ref(brush); }
     virtual ~wxBrush();
 
     virtual void SetColour(const wxColour& col);
 
 public:
     // constructors
     wxCursor();
-    wxCursor(const wxCursor& cursor) { Ref(cursor); }
+    wxCursor(const wxCursor& cursor) : wxGDIImage(cursor) { Ref(cursor); }
     wxCursor(const wxImage& image);
     wxCursor(const char bits[], int width, int height,
              int hotSpotX = -1, int hotSpotY = -1,
 
 public:
     // ctors and such
     wxFont() { Init(); }
-    wxFont(const wxFont& font) { Init(); Ref(font); }
+    wxFont(const wxFont& font) : wxFontBase(font) { Init(); Ref(font); }
 
     wxFont(int size,
            int family,
 
         m_handle = 0;
     }
 
-    wxGDIImageRefData(const wxGDIImageRefData& data)
+    wxGDIImageRefData(const wxGDIImageRefData& data) : wxGDIRefData(data)
     {
         m_width = data.m_width;
         m_height = data.m_height;
 
     wxIcon() { }
 
         // copy
-    wxIcon(const wxIcon& icon) { Ref(icon); }
+    wxIcon(const wxIcon& icon) : wxGDIImage(icon) { Ref(icon); }
 
         // from raw data
     wxIcon(const char bits[], int width, int height);
 
 
 public:
   wxPalette(void);
-  inline wxPalette(const wxPalette& palette) { Ref(palette); }
+  inline wxPalette(const wxPalette& palette) : wxGDIObject(palette) { Ref(palette); }
 
   wxPalette(int n, const unsigned char *red, const unsigned char *green, const unsigned char *blue);
   ~wxPalette(void);
 
     wxPen();
     wxPen(const wxColour& col, int width = 1, int style = wxSOLID);
     wxPen(const wxBitmap& stipple, int width);
-    wxPen(const wxPen& pen) { Ref(pen); }
+    wxPen(const wxPen& pen) : wxGDIObject(pen) { Ref(pen); }
     virtual ~wxPen();
 
     wxPen& operator=(const wxPen& pen)
 
     virtual ~wxRegion();
 
     // Copying
-    wxRegion(const wxRegion& r)
+    wxRegion(const wxRegion& r) : wxGDIObject(r)
         { Ref(r); }
     wxRegion& operator = (const wxRegion& r)
         { Ref(r); return (*this); }
 public:
     wxRegionIterator() { Init(); }
     wxRegionIterator(const wxRegion& region);
-    wxRegionIterator(const wxRegionIterator& ri) { Init(); *this = ri; }
+    wxRegionIterator(const wxRegionIterator& ri) : wxObject(ri) { Init(); *this = ri; }
 
     wxRegionIterator& operator=(const wxRegionIterator& ri);