]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/resource.cpp
basic support for encodings for wxMSW::wxFont
[wxWidgets.git] / src / common / resource.cpp
index 95c3840d98b4403218af3f035024e07bd71cab4d..61ad5cf33dcc2b5a03884e1d34e70c18cf14bb9a 100644 (file)
@@ -191,7 +191,8 @@ bool wxResourceTable::DeleteResource(const wxString& name)
     // parent's child list.
     BeginFind();
     wxNode *node = (wxNode *) NULL;
-    while ((node = Next()))
+    node = Next();
+    while (node != NULL)
     {
       wxItemResource *parent = (wxItemResource *)node->Data();
       if (parent->GetChildren().Member(item))
@@ -199,6 +200,7 @@ bool wxResourceTable::DeleteResource(const wxString& name)
         parent->GetChildren().DeleteObject(item);
         break;
       }
+      node = Next();
     }
 
     delete item;
@@ -1528,7 +1530,7 @@ static bool wxEatWhiteSpace(FILE *fd)
          default:
             ungetc(ch, fd);
             return TRUE;
-            
+
          }
       }
    return FALSE;
@@ -1621,7 +1623,7 @@ bool wxResourceReadOneResource(FILE *fd, wxExprDatabase& db, bool *eof, wxResour
     wxChar *name = copystring(wxConvCurrent->cMB2WX(wxResourceBuffer));
     wxGetResourceToken(fd);
     wxChar *value = copystring(wxConvCurrent->cMB2WX(wxResourceBuffer));
-    if (wxIsalpha(value[0]))
+    if (wxIsdigit(value[0]))
     {
       int val = (int)wxAtol(value);
       wxResourceAddIdentifier(name, val, table);
@@ -1811,6 +1813,7 @@ static wxResourceBitListStruct wxResourceBitListTable[] =
   { _T("wxTE_READONLY"), wxTE_READONLY},
   { _T("wxTE_PROCESS_ENTER"), wxTE_PROCESS_ENTER},
   { _T("wxTE_MULTILINE"), wxTE_MULTILINE},
+  { _T("wxTE_NO_VSCROLL"), wxTE_NO_VSCROLL},
 
   /* wxRadioBox/wxRadioButton */
   { _T("wxRB_GROUP"), wxRB_GROUP },
@@ -1933,6 +1936,7 @@ static wxResourceBitListStruct wxResourceBitListTable[] =
   { _T("wxTRANSPARENT_WINDOW"), wxTRANSPARENT_WINDOW},
   { _T("wxNO_BORDER"), wxNO_BORDER},
   { _T("wxCLIP_CHILDREN"), wxCLIP_CHILDREN},
+  { _T("wxTAB_TRAVERSAL"), 0}, // Compatibility only
 
   { _T("wxTINY_CAPTION_HORIZ"), wxTINY_CAPTION_HORIZ},
   { _T("wxTINY_CAPTION_VERT"), wxTINY_CAPTION_VERT},
@@ -2041,7 +2045,8 @@ long wxParseWindowStyle(const wxString& bitListString)
   int i = 0;
   wxChar *word;
   long bitList = 0;
-  while ((word = wxResourceParseWord(WXSTRINGCAST bitListString, &i)))
+  word = wxResourceParseWord(WXSTRINGCAST bitListString, &i);
+  while (word != NULL)
   {
     bool found = FALSE;
     int j;
@@ -2057,6 +2062,7 @@ long wxParseWindowStyle(const wxString& bitListString)
       wxLogWarning(_("Unrecognized style %s whilst parsing resource."), word);
       return 0;
     }
+    word = wxResourceParseWord(WXSTRINGCAST bitListString, &i);
   }
   return bitList;
 }
@@ -2491,7 +2497,7 @@ bool wxResourceAddIdentifier(const wxString& name, int value, wxResourceTable *t
   if (!table)
     table = wxDefaultResourceTable;
 
-  table->identifiers.Put(name, (wxObject *)value);
+  table->identifiers.Put(name, (wxObject *)(long)value);
   return TRUE;
 }
 
@@ -2500,7 +2506,7 @@ int wxResourceGetIdentifier(const wxString& name, wxResourceTable *table)
   if (!table)
     table = wxDefaultResourceTable;
 
-  return (int)table->identifiers.Get(name);
+  return (int)(long)table->identifiers.Get(name);
 }
 
 /*
@@ -2605,7 +2611,7 @@ bool wxEatWhiteSpaceString(char *s)
          default:
             ungetc_string();
             return TRUE;
-            
+
          }
       }
    return FALSE;
@@ -2698,7 +2704,7 @@ bool wxResourceReadOneResourceString(char *s, wxExprDatabase& db, bool *eof, wxR
     wxChar *name = copystring(wxConvCurrent->cMB2WX(wxResourceBuffer));
     wxGetResourceTokenString(s);
     wxChar *value = copystring(wxConvCurrent->cMB2WX(wxResourceBuffer));
-    if (wxIsalpha(value[0]))
+    if (wxIsdigit(value[0]))
     {
       int val = (int)wxAtol(value);
       wxResourceAddIdentifier(name, val, table);