]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/resource.cpp
* Deleted #include "wx/bufstrm.h"
[wxWidgets.git] / src / common / resource.cpp
index 785d7b8014af3f087fef64b7071ec42f9a2d332f..0aeb411e1898553a2c6a6df228f2b058bc041e07 100644 (file)
@@ -561,7 +561,7 @@ wxControl *wxResourceTable::CreateItem(wxWindow *parent, wxItemResource *childRe
             node = node->Next();
           }
         }
-        control = new wxRadioBox(parent, (const wxWindowID) id, wxString(childResource->GetTitle()),
+        control = new wxRadioBox(parent, (wxWindowID) id, wxString(childResource->GetTitle()),
            wxPoint(childResource->GetX(), childResource->GetY()),
                   wxSize(childResource->GetWidth(), childResource->GetHeight()),
            noStrings, strings, (int)childResource->GetValue1(), childResource->GetStyle(), wxDefaultValidator,
@@ -785,7 +785,8 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, PrologExpr *e
        }
        else
        {
-        id = wxResourceGetIdentifier(WXSTRINGCAST expr1->StringValue(), &table);
+        wxString str(expr1->StringValue());
+        id = wxResourceGetIdentifier(WXSTRINGCAST str, &table);
         if (id == 0)
         {
           char buf[300];
@@ -861,10 +862,11 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, PrologExpr *e
     // Check for bitmap resource name
     if (expr->Nth(count) && ((expr->Nth(count)->Type() == PrologString) || (expr->Nth(count)->Type() == PrologWord)))
     {
-      controlItem->SetValue4(WXSTRINGCAST expr->Nth(count)->StringValue());
-      count ++;
-      if (expr->Nth(count) && expr->Nth(count)->Type() == PrologList)
-        controlItem->SetFont(wxResourceInterpretFontSpec(expr->Nth(count)));
+        wxString str(expr->Nth(count)->StringValue());
+        controlItem->SetValue4(WXSTRINGCAST str);
+        count ++;
+        if (expr->Nth(count) && expr->Nth(count)->Type() == PrologList)
+          controlItem->SetFont(wxResourceInterpretFontSpec(expr->Nth(count)));
     }
   }
   else if (controlType == "wxCheckBox")
@@ -896,7 +898,8 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, PrologExpr *e
     // Check for default value
     if (expr->Nth(count) && ((expr->Nth(count)->Type() == PrologString) || (expr->Nth(count)->Type() == PrologWord)))
        {
-      controlItem->SetValue4(WXSTRINGCAST expr->Nth(count)->StringValue());
+      wxString str(expr->Nth(count)->StringValue());
+      controlItem->SetValue4(WXSTRINGCAST str);
          count ++;
 
       if (expr->Nth(count) && expr->Nth(count)->Type() == PrologList)
@@ -914,7 +917,8 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, PrologExpr *e
     // Check for bitmap resource name
     if (expr->Nth(count) && ((expr->Nth(count)->Type() == PrologString) || (expr->Nth(count)->Type() == PrologWord)))
     {
-      controlItem->SetValue4(WXSTRINGCAST expr->Nth(count)->StringValue());
+      wxString str(expr->Nth(count)->StringValue());
+      controlItem->SetValue4(WXSTRINGCAST str);
       count ++;
       if (expr->Nth(count) && expr->Nth(count)->Type() == PrologList)
         controlItem->SetFont(wxResourceInterpretFontSpec(expr->Nth(count)));
@@ -1081,7 +1085,8 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, PrologExpr *e
     PrologExpr *textValue = expr->Nth(count);
     if (textValue && (textValue->Type() == PrologString || textValue->Type() == PrologWord))
        {
-      controlItem->SetValue4(WXSTRINGCAST textValue->StringValue());
+      wxString str(textValue->StringValue());
+      controlItem->SetValue4(WXSTRINGCAST str);
 
          count ++;
       
@@ -1186,7 +1191,8 @@ wxItemResource *wxResourceInterpretMenuItem(wxResourceTable& table, PrologExpr *
     item->SetType("wxMenu"); // Well, menu item, but doesn't matter.
     if (labelExpr)
     {
-      item->SetTitle(WXSTRINGCAST labelExpr->StringValue());
+      wxString str(labelExpr->StringValue());
+      item->SetTitle(WXSTRINGCAST str);
     }
     if (idExpr)
     {
@@ -1194,7 +1200,8 @@ wxItemResource *wxResourceInterpretMenuItem(wxResourceTable& table, PrologExpr *
       // If a string or word, must look up in identifier table.
       if ((idExpr->Type() == PrologString) || (idExpr->Type() == PrologWord))
       {
-        id = wxResourceGetIdentifier(WXSTRINGCAST idExpr->StringValue(), &table);
+        wxString str(idExpr->StringValue());
+        id = wxResourceGetIdentifier(WXSTRINGCAST str, &table);
         if (id == 0)
         {
           char buf[300];
@@ -1209,7 +1216,8 @@ wxItemResource *wxResourceInterpretMenuItem(wxResourceTable& table, PrologExpr *
     }
     if (helpExpr)
     {
-      item->SetValue4(WXSTRINGCAST helpExpr->StringValue());
+      wxString str(helpExpr->StringValue());
+      item->SetValue4(WXSTRINGCAST str);
     }
     if (checkableExpr)
       item->SetValue2(checkableExpr->IntegerValue());
@@ -1346,9 +1354,15 @@ wxItemResource *wxResourceInterpretBitmap(wxResourceTable& WXUNUSED(table), Prol
           PrologExpr *xresExpr = listExpr->Nth(4);
           PrologExpr *yresExpr = listExpr->Nth(5);
           if (nameExpr && nameExpr->StringValue())
-            bitmapSpec->SetName(WXSTRINGCAST nameExpr->StringValue());
+          {
+            wxString str(nameExpr->StringValue());
+            bitmapSpec->SetName(WXSTRINGCAST str);
+          }
           if (typeExpr && typeExpr->StringValue())
-            bitmapSpec->SetValue1(wxParseWindowStyle(WXSTRINGCAST typeExpr->StringValue()));
+          {
+            wxString str(typeExpr->StringValue());
+            bitmapSpec->SetValue1(wxParseWindowStyle(WXSTRINGCAST str));
+          }
           else
             bitmapSpec->SetValue1(0);
             
@@ -1421,12 +1435,23 @@ wxFont *wxResourceInterpretFontSpec(PrologExpr *expr)
   PrologExpr *faceNameExpr = expr->Nth(5);
   if (pointExpr)
     point = (int)pointExpr->IntegerValue();
+
+  wxString str;
   if (familyExpr)
-    family = (int)wxParseWindowStyle(WXSTRINGCAST familyExpr->StringValue());
+  {
+    str = familyExpr->StringValue();
+    family = (int)wxParseWindowStyle(WXSTRINGCAST str);
+  }
   if (styleExpr)
-    style = (int)wxParseWindowStyle(WXSTRINGCAST styleExpr->StringValue());
+  {
+    str = styleExpr->StringValue();
+    style = (int)wxParseWindowStyle(WXSTRINGCAST str);
+  }
   if (weightExpr)
-    weight = (int)wxParseWindowStyle(WXSTRINGCAST weightExpr->StringValue());
+  {
+    str = weightExpr->StringValue();
+    weight = (int)wxParseWindowStyle(WXSTRINGCAST str);
+  }
   if (underlineExpr)
     underline = (int)underlineExpr->IntegerValue();
   if (faceNameExpr)
@@ -1770,14 +1795,19 @@ static wxResourceBitListStruct wxResourceBitListTable[] =
   { "wxLB_NEEDED_SB", wxLB_NEEDED_SB },
   { "wxLB_ALWAYS_SB", wxLB_ALWAYS_SB },
   { "wxLB_SORT", wxLB_SORT },
+  { "wxLB_OWNERDRAW", wxLB_OWNERDRAW },
+  { "wxLB_HSCROLL", wxLB_HSCROLL },
   
   /* wxComboxBox */
   { "wxCB_SIMPLE", wxCB_SIMPLE },
   { "wxCB_DROPDOWN", wxCB_DROPDOWN },
+  { "wxCB_READONLY", wxCB_READONLY },
   { "wxCB_SORT", wxCB_SORT },
   
   /* wxGauge */
   { "wxGA_PROGRESSBAR", wxGA_PROGRESSBAR },
+  { "wxGA_HORIZONTAL", wxGA_HORIZONTAL },
+  { "wxGA_VERTICAL", wxGA_VERTICAL },
 
   /* wxTextCtrl */
   { "wxPASSWORD", wxPASSWORD},
@@ -1785,16 +1815,80 @@ static wxResourceBitListStruct wxResourceBitListTable[] =
   { "wxTE_PASSWORD", wxTE_PASSWORD},
   { "wxTE_READONLY", wxTE_READONLY},
   { "wxTE_PROCESS_ENTER", wxTE_PROCESS_ENTER},
+  { "wxTE_MULTILINE", wxTE_MULTILINE},
 
-  /* wxRadioButton */
+  /* wxRadioBox/wxRadioButton */
   { "wxRB_GROUP", wxRB_GROUP },
-
-  /* wxItem */
+  { "wxRA_HORIZONTAL", wxRA_HORIZONTAL },
+  { "wxRA_VERTICAL", wxRA_VERTICAL },
+
+  /* wxSlider */
+  { "wxSL_HORIZONTAL", wxSL_HORIZONTAL },
+  { "wxSL_VERTICAL", wxSL_VERTICAL },
+  { "wxSL_AUTOTICKS", wxSL_AUTOTICKS },
+  { "wxSL_LABELS", wxSL_LABELS },
+  { "wxSL_LEFT", wxSL_LEFT },
+  { "wxSL_TOP", wxSL_TOP },
+  { "wxSL_RIGHT", wxSL_RIGHT },
+  { "wxSL_BOTTOM", wxSL_BOTTOM },
+  { "wxSL_BOTH", wxSL_BOTH },
+  { "wxSL_SELRANGE", wxSL_SELRANGE },
+
+  /* wxScrollBar */
+  { "wxSB_HORIZONTAL", wxSB_HORIZONTAL },
+  { "wxSB_VERTICAL", wxSB_VERTICAL },
+
+  /* wxButton */
+  { "wxBU_AUTODRAW", wxBU_AUTODRAW },
+  { "wxBU_NOAUTODRAW", wxBU_NOAUTODRAW },
+
+  /* wxTreeCtrl */
+  { "wxTR_HAS_BUTTONS", wxTR_HAS_BUTTONS },
+  { "wxTR_EDIT_LABELS", wxTR_EDIT_LABELS },
+
+  /* wxListCtrl */
+  { "wxLC_ICON", wxLC_ICON },
+  { "wxLC_SMALL_ICON", wxLC_SMALL_ICON },
+  { "wxLC_LIST", wxLC_LIST },
+  { "wxLC_REPORT", wxLC_REPORT },
+  { "wxLC_ALIGN_TOP", wxLC_ALIGN_TOP },
+  { "wxLC_ALIGN_LEFT", wxLC_ALIGN_LEFT },
+  { "wxLC_AUTOARRANGE", wxLC_AUTOARRANGE },
+  { "wxLC_USER_TEXT", wxLC_USER_TEXT },
+  { "wxLC_EDIT_LABELS", wxLC_EDIT_LABELS },
+  { "wxLC_NO_HEADER", wxLC_NO_HEADER },
+  { "wxLC_NO_SORT_HEADER", wxLC_NO_SORT_HEADER },
+  { "wxLC_SINGLE_SEL", wxLC_SINGLE_SEL },
+  { "wxLC_SORT_ASCENDING", wxLC_SORT_ASCENDING },
+  { "wxLC_SORT_DESCENDING", wxLC_SORT_DESCENDING },
+
+  /* wxSpinButton */
+  { "wxSP_VERTICAL", wxSP_VERTICAL},
+  { "wxSP_HORIZONTAL", wxSP_HORIZONTAL},
+  { "wxSP_ARROW_KEYS", wxSP_ARROW_KEYS},
+  { "wxSP_WRAP", wxSP_WRAP},
+
+  /* wxSplitterWnd */
+  { "wxSP_NOBORDER", wxSP_NOBORDER},
+  { "wxSP_3D", wxSP_3D},
+  { "wxSP_BORDER", wxSP_BORDER},
+
+  /* wxTabCtrl */
+  { "wxTC_MULTILINE", wxTC_MULTILINE},
+  { "wxTC_RIGHTJUSTIFY", wxTC_RIGHTJUSTIFY},
+  { "wxTC_FIXEDWIDTH", wxTC_FIXEDWIDTH},
+  { "wxTC_OWNERDRAW", wxTC_OWNERDRAW},
+
+  /* wxStatusBar95 */
+  { "wxST_SIZEGRIP", wxST_SIZEGRIP},
+
+  /* wxControl */
   { "wxFIXED_LENGTH", wxFIXED_LENGTH},
   { "wxALIGN_LEFT", wxALIGN_LEFT},
   { "wxALIGN_CENTER", wxALIGN_CENTER},
   { "wxALIGN_CENTRE", wxALIGN_CENTRE},
   { "wxALIGN_RIGHT", wxALIGN_RIGHT},
+  { "wxCOLOURED", wxCOLOURED},
   
   /* wxToolBar */
   { "wxTB_3DBUTTONS", wxTB_3DBUTTONS},
@@ -1827,22 +1921,16 @@ static wxResourceBitListStruct wxResourceBitListTable[] =
   { "wxBACKINGSTORE", wxBACKINGSTORE},
 //  { "wxFLAT", wxFLAT},
 //  { "wxMOTIF_RESIZE", wxMOTIF_RESIZE},
-  { "wxFIXED_LENGTH", wxFIXED_LENGTH},
+  { "wxFIXED_LENGTH", 0},
+  { "wxDOUBLE_BORDER", wxDOUBLE_BORDER},
+  { "wxSUNKEN_BORDER", wxSUNKEN_BORDER},
+  { "wxRAISED_BORDER", wxRAISED_BORDER},
+  { "wxSIMPLE_BORDER", wxSIMPLE_BORDER},
+  { "wxSTATIC_BORDER", wxSTATIC_BORDER},
+  { "wxTRANSPARENT_WINDOW", wxTRANSPARENT_WINDOW},
+  { "wxNO_BORDER", wxNO_BORDER},
+  { "wxCLIP_CHILDREN", wxCLIP_CHILDREN},
 
-#if USE_ENHANCED_DIALOG
-  // Enhanced dialog
-  { "wxBOTTOM_COMMANDS", wxBOTTOM_COMMANDS},
-  { "wxRIGHT_COMMANDS", wxRIGHT_COMMANDS},
-  { "wxSTATUS_FOOTER", wxSTATUS_FOOTER},
-  { "wxNO_STATUS_FOOTER", wxNO_STATUS_FOOTER},
-  { "wxNO_CANCEL_BUTTON", wxNO_CANCEL_BUTTON},
-  { "wxCANCEL_BUTTON_FIRST", wxCANCEL_BUTTON_FIRST},
-  { "wxCANCEL_BUTTON_SECOND", wxCANCEL_BUTTON_SECOND},
-  { "wxCANCEL_BUTTON_LAST", wxCANCEL_BUTTON_LAST},
-  { "wxENH_DEFAULT", wxENH_DEFAULT},
-#endif
-
-  { "wxCOLOURED", wxCOLOURED},
   { "wxTINY_CAPTION_HORIZ", wxTINY_CAPTION_HORIZ},
   { "wxTINY_CAPTION_VERT", wxTINY_CAPTION_VERT},
 
@@ -2027,7 +2115,7 @@ wxBitmap *wxResourceCreateBitmap(char *resource, wxResourceTable *table)
           }
           break;
         }
-#ifdef __WINDOWS__
+#ifdef __WXMSW__
         case RESOURCE_PLATFORM_WINDOWS:
         {
           if (!optResource && ((noColours == 0) || (noColours <= thisNoColours)))
@@ -2102,7 +2190,7 @@ wxBitmap *wxResourceCreateBitmap(char *resource, wxResourceTable *table)
       }
       case wxBITMAP_TYPE_XPM_DATA:
       {
-#if (defined(__X__) && USE_XPM_IN_X) || (defined(__WINDOWS__) && USE_XPM_IN_MSW)
+#if (defined(__X__) && USE_XPM_IN_X) || (defined(__WXMSW__) && USE_XPM_IN_MSW)
         wxItemResource *item = table->FindResource(name);
         if (!item)
         {
@@ -2200,7 +2288,7 @@ wxIcon *wxResourceCreateIcon(char *resource, wxResourceTable *table)
           }
           break;
         }
-#ifdef __WINDOWS__
+#ifdef __WXMSW__
         case RESOURCE_PLATFORM_WINDOWS:
         {
           if (!optResource && ((noColours == 0) || (noColours <= thisNoColours)))
@@ -2277,7 +2365,7 @@ wxIcon *wxResourceCreateIcon(char *resource, wxResourceTable *table)
       {
       // *** XPM ICON NOT YET IMPLEMENTED IN WXWINDOWS ***
 /*
-#if (defined(__X__) && USE_XPM_IN_X) || (defined(__WINDOWS__) && USE_XPM_IN_MSW)
+#if (defined(__X__) && USE_XPM_IN_X) || (defined(__WXMSW__) && USE_XPM_IN_MSW)
         wxItemResource *item = table->FindResource(name);
         if (!item)
         {