]> git.saurik.com Git - wxWidgets.git/blobdiff - src/xrc/xmlres.cpp
fixing osx_carbon
[wxWidgets.git] / src / xrc / xmlres.cpp
index 1b62dbc3dcfe6a78e7099f748c5309d2ff1ed48c..95525ac90a0af2e8850cc73b58a85ac8fcd5506e 100644 (file)
@@ -983,7 +983,10 @@ wxXmlResource::DoCreateResFromNode(wxXmlNode& node,
             return NULL;
         }
 
             return NULL;
         }
 
-        if ( !node.GetChildren() )
+        const bool hasOnlyRefAttr = node.GetAttributes() != NULL &&
+                                    node.GetAttributes()->GetNext() == NULL;
+
+        if ( hasOnlyRefAttr && !node.GetChildren() )
         {
             // In the typical, simple case, <object_ref> is used to link
             // to another node and doesn't have any content of its own that
         {
             // In the typical, simple case, <object_ref> is used to link
             // to another node and doesn't have any content of its own that
@@ -1742,7 +1745,7 @@ wxColour wxXmlResourceHandler::GetColour(const wxString& param, const wxColour&
         // the colour doesn't use #RRGGBB format, check if it is symbolic
         // colour name:
         clr = GetSystemColour(v);
         // the colour doesn't use #RRGGBB format, check if it is symbolic
         // colour name:
         clr = GetSystemColour(v);
-        if (clr.Ok())
+        if (clr.IsOk())
             return clr;
 
         ReportParamError
             return clr;
 
         ReportParamError
@@ -1820,7 +1823,7 @@ wxBitmap wxXmlResourceHandler::GetBitmap(const wxXmlNode* node,
                           art_id, art_client) )
     {
         wxBitmap stockArt(wxArtProvider::GetBitmap(art_id, art_client, size));
                           art_id, art_client) )
     {
         wxBitmap stockArt(wxArtProvider::GetBitmap(art_id, art_client, size));
-        if ( stockArt.Ok() )
+        if ( stockArt.IsOk() )
             return stockArt;
     }
 
             return stockArt;
     }
 
@@ -1844,7 +1847,7 @@ wxBitmap wxXmlResourceHandler::GetBitmap(const wxXmlNode* node,
     wxImage img(name);
 #endif
 
     wxImage img(name);
 #endif
 
-    if (!img.Ok())
+    if (!img.IsOk())
     {
         ReportParamError
         (
     {
         ReportParamError
         (
@@ -1958,7 +1961,7 @@ wxImageList *wxXmlResourceHandler::GetImageList(const wxString& param)
         {
             if (n->GetType() == wxXML_ELEMENT_NODE && n->GetName() == parambitmap)
             {
         {
             if (n->GetType() == wxXML_ELEMENT_NODE && n->GetName() == parambitmap)
             {
-                wxIcon icon = GetIcon(n);
+                wxIcon icon = GetIcon(n, wxART_OTHER, size);
                 if ( !imagelist )
                 {
                     // We need the real image list size to create it.
                 if ( !imagelist )
                 {
                     // We need the real image list size to create it.
@@ -2274,7 +2277,7 @@ wxFont wxXmlResourceHandler::GetFont(const wxString& param)
     // is this font based on a system font?
     wxFont font = GetSystemFont(GetParamValue(wxT("sysfont")));
 
     // is this font based on a system font?
     wxFont font = GetSystemFont(GetParamValue(wxT("sysfont")));
 
-    if (font.Ok())
+    if (font.IsOk())
     {
         if (hasSize && isize != -1)
             font.SetPointSize(isize);
     {
         if (hasSize && isize != -1)
             font.SetPointSize(isize);