]> git.saurik.com Git - wxWidgets.git/blobdiff - contrib/src/deprecated/resource.cpp
correct access for virtuals
[wxWidgets.git] / contrib / src / deprecated / resource.cpp
index e27ed992bc19b3174f197cf62f10b59e9cd78fc6..0a567750bfe9e862b72c936b265f1e643bbcd3f3 100644 (file)
@@ -1,18 +1,14 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        resource.cpp
+// Name:        contrib/src/deprecated/resource.cpp
 // Purpose:     Resource system
 // Author:      Julian Smart
 // Modified by:
 // Created:     04/01/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Julian Smart
-// Licence:    wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
-#ifdef __GNUG__
-#pragma implementation "resource.h"
-#endif
-
 // For compilers that support precompilation, includes "wx.h".
 #include "wx/wxprec.h"
 
 #endif // VC++
 
 #ifndef WX_PRECOMP
-#include "wx/defs.h"
-#include "wx/setup.h"
-#include "wx/list.h"
-#include "wx/hash.h"
-#include "wx/gdicmn.h"
-#include "wx/utils.h"
-#include "wx/types.h"
-#include "wx/menu.h"
-#include "wx/stattext.h"
-#include "wx/button.h"
-#include "wx/bmpbuttn.h"
-#include "wx/radiobox.h"
-#include "wx/listbox.h"
-#include "wx/choice.h"
-#include "wx/checkbox.h"
-#include "wx/settings.h"
-#include "wx/slider.h"
-#include "wx/icon.h"
-#include "wx/statbox.h"
-#include "wx/statbmp.h"
-#include "wx/gauge.h"
-#include "wx/textctrl.h"
-#include "wx/msgdlg.h"
-#include "wx/intl.h"
+    #include "wx/list.h"
+    #include "wx/hash.h"
+    #include "wx/gdicmn.h"
+    #include "wx/utils.h"
+    #include "wx/types.h"
+    #include "wx/menu.h"
+    #include "wx/stattext.h"
+    #include "wx/button.h"
+    #include "wx/bmpbuttn.h"
+    #include "wx/radiobox.h"
+    #include "wx/listbox.h"
+    #include "wx/choice.h"
+    #include "wx/checkbox.h"
+    #include "wx/settings.h"
+    #include "wx/slider.h"
+    #include "wx/icon.h"
+    #include "wx/statbox.h"
+    #include "wx/statbmp.h"
+    #include "wx/gauge.h"
+    #include "wx/textctrl.h"
+    #include "wx/msgdlg.h"
+    #include "wx/intl.h"
 #endif
 
 #include "wx/treebase.h"
@@ -151,13 +145,13 @@ IMPLEMENT_DYNAMIC_CLASS(wxResourceTable, wxHashTable)
 
 wxItemResource::wxItemResource()
 {
-    m_itemType = wxT("");
-    m_title = wxT("");
-    m_name = wxT("");
+    m_itemType = wxEmptyString;
+    m_title = wxEmptyString;
+    m_name = wxEmptyString;
     m_windowStyle = 0;
     m_x = m_y = m_width = m_height = 0;
     m_value1 = m_value2 = m_value3 = m_value5 = 0;
-    m_value4 = wxT("");
+    m_value4 = wxEmptyString;
     m_windowId = 0;
     m_exStyle = 0;
 }
@@ -196,9 +190,9 @@ wxItemResource *wxResourceTable::FindResource(const wxString& name) const
 void wxResourceTable::AddResource(wxItemResource *item)
 {
     wxString name = item->GetName();
-    if (name == wxT(""))
+    if (name.empty())
         name = item->GetTitle();
-    if (name == wxT(""))
+    if (name.empty())
         name = wxT("no name");
 
     // Delete existing resource, if any.
@@ -324,7 +318,7 @@ wxControl *wxResourceTable::CreateItem(wxWindow *parent, const wxItemResource* c
 {
     int id = childResource->GetId();
     if ( id == 0 )
-        id = -1;
+        id = wxID_ANY;
 
     bool dlgUnits = ((parentResource->GetResourceStyle() & wxRESOURCE_DIALOG_UNITS) != 0);
 
@@ -346,7 +340,7 @@ wxControl *wxResourceTable::CreateItem(wxWindow *parent, const wxItemResource* c
 
     if (itemType == wxString(wxT("wxButton")) || itemType == wxString(wxT("wxBitmapButton")))
     {
-        if (childResource->GetValue4() != wxT(""))
+        if (!childResource->GetValue4().empty())
         {
             // Bitmap button
             wxBitmap bitmap = childResource->GetBitmap();
@@ -375,7 +369,7 @@ wxControl *wxResourceTable::CreateItem(wxWindow *parent, const wxItemResource* c
     else if (itemType == wxString(wxT("wxMessage")) || itemType == wxString(wxT("wxStaticText")) ||
         itemType == wxString(wxT("wxStaticBitmap")))
     {
-        if (childResource->GetValue4() != wxT("") || itemType == wxString(wxT("wxStaticBitmap")) )
+        if (!childResource->GetValue4().empty() || itemType == wxString(wxT("wxStaticBitmap")) )
         {
             // Bitmap message
             wxBitmap bitmap = childResource->GetBitmap();
@@ -611,7 +605,7 @@ bool wxResourceInterpretResources(wxResourceTable& table, wxExprDatabase& db)
         if (item)
         {
             // Remove any existing resource of same name
-            if (item->GetName() != wxT(""))
+            if (!item->GetName().empty())
                 table.DeleteResource(item->GetName());
             table.AddResource(item);
         }
@@ -661,12 +655,12 @@ wxItemResource *wxResourceInterpretDialog(wxResourceTable& table, wxExpr *expr,
         dialogItem->SetType(wxT("wxPanel"));
     else
         dialogItem->SetType(wxT("wxDialog"));
-    wxString style = wxT("");
-    wxString title = wxT("");
-    wxString name = wxT("");
-    wxString backColourHex = wxT("");
-    wxString labelColourHex = wxT("");
-    wxString buttonColourHex = wxT("");
+    wxString style = wxEmptyString;
+    wxString title = wxEmptyString;
+    wxString name = wxEmptyString;
+    wxString backColourHex = wxEmptyString;
+    wxString labelColourHex = wxEmptyString;
+    wxString buttonColourHex = wxEmptyString;
 
     long windowStyle = wxDEFAULT_DIALOG_STYLE;
     if (isPanel)
@@ -706,12 +700,15 @@ wxItemResource *wxResourceInterpretDialog(wxResourceTable& table, wxExpr *expr,
     expr->GetAttributeValue(wxT("id"), id);
     dialogItem->SetId(id);
 
-    if (style != wxT(""))
+    if (!style.empty())
     {
         windowStyle = wxParseWindowStyle(style);
     }
     dialogItem->SetStyle(windowStyle);
     dialogItem->SetValue1(isModal);
+
+#if WXWIN_COMPATIBILITY_2_6
+
 #ifdef __VMS
 #pragma message disable CODCAUUNR
 #endif
@@ -721,6 +718,8 @@ wxItemResource *wxResourceInterpretDialog(wxResourceTable& table, wxExpr *expr,
 #pragma message enable CODCAUUNR
 #endif
 
+#endif // WXWIN_COMPATIBILITY_2_6
+
     dialogItem->SetName(name);
     dialogItem->SetTitle(title);
     dialogItem->SetSize(x, y, width, height);
@@ -731,7 +730,7 @@ wxItemResource *wxResourceInterpretDialog(wxResourceTable& table, wxExpr *expr,
     else if (style.Find(wxT("HORIZONTAL_LABEL")) != wxNOT_FOUND)
         dialogItem->SetResourceStyle(dialogItem->GetResourceStyle() | wxRESOURCE_HORIZONTAL_LABEL);
 
-    if (backColourHex != wxT(""))
+    if (!backColourHex.empty())
     {
         int r = 0;
         int g = 0;
@@ -741,7 +740,7 @@ wxItemResource *wxResourceInterpretDialog(wxResourceTable& table, wxExpr *expr,
         b = wxHexToDec(backColourHex.Mid(4, 2));
         dialogItem->SetBackgroundColour(wxColour((unsigned char)r,(unsigned char)g,(unsigned char)b));
     }
-    if (labelColourHex != wxT(""))
+    if (!labelColourHex.empty())
     {
         int r = 0;
         int g = 0;
@@ -751,7 +750,7 @@ wxItemResource *wxResourceInterpretDialog(wxResourceTable& table, wxExpr *expr,
         b = wxHexToDec(labelColourHex.Mid(4, 2));
         dialogItem->SetLabelColour(wxColour((unsigned char)r,(unsigned char)g,(unsigned char)b));
     }
-    if (buttonColourHex != wxT(""))
+    if (!buttonColourHex.empty())
     {
         int r = 0;
         int g = 0;
@@ -776,7 +775,7 @@ wxItemResource *wxResourceInterpretDialog(wxResourceTable& table, wxExpr *expr,
         if (controlExpr->Number() == 3)
         {
             wxString controlKeyword(controlExpr->Nth(1)->StringValue());
-            if (controlKeyword != wxT("") && controlKeyword == wxT("control"))
+            if (!controlKeyword.empty() && controlKeyword == wxT("control"))
             {
                 // The value part: always a list.
                 wxExpr *listExpr = controlExpr->Nth(2);
@@ -906,7 +905,7 @@ wxItemResource *wxResourceInterpretControl(wxResourceTable& table, wxExpr *expr)
             wxString str(expr->Nth(count)->StringValue());
             count ++;
 
-            if (str != wxT(""))
+            if (!str.empty())
             {
                 controlItem->SetValue4(str);
                 controlItem->SetType(wxT("wxBitmapButton"));
@@ -1416,18 +1415,18 @@ wxItemResource *wxResourceInterpretBitmap(wxResourceTable& WXUNUSED(table), wxEx
                     wxExpr *coloursExpr = listExpr->Nth(3);
                     wxExpr *xresExpr = listExpr->Nth(4);
                     wxExpr *yresExpr = listExpr->Nth(5);
-                    if (nameExpr && nameExpr->StringValue() != wxT(""))
+                    if (nameExpr && !nameExpr->StringValue().empty())
                     {
                         bitmapSpec->SetName(nameExpr->StringValue());
                     }
-                    if (typeExpr && typeExpr->StringValue() != wxT(""))
+                    if (typeExpr && !typeExpr->StringValue().empty())
                     {
                         bitmapSpec->SetValue1(wxParseWindowStyle(typeExpr->StringValue()));
                     }
                     else
                         bitmapSpec->SetValue1(0);
 
-                    if (platformExpr && platformExpr->StringValue() != wxT(""))
+                    if (platformExpr && !platformExpr->StringValue().empty())
                     {
                         wxString plat(platformExpr->StringValue());
                         if (plat == wxT("windows") || plat == wxT("WINDOWS"))
@@ -1486,7 +1485,7 @@ wxFont wxResourceInterpretFontSpec(wxExpr *expr)
     int style = wxNORMAL;
     int weight = wxNORMAL;
     int underline = 0;
-    wxString faceName(wxT(""));
+    wxString faceName;
 
     wxExpr *pointExpr = expr->Nth(0);
     wxExpr *familyExpr = expr->Nth(1);
@@ -1604,7 +1603,7 @@ static bool wxEatWhiteSpace(FILE *fd)
 }
 static bool wxEatWhiteSpace(wxInputStream *is)
 {
-    int ch = is->GetC() ;
+    char ch = is->GetC() ;
     if ((ch != ' ') && (ch != '/') && (ch != ' ') && (ch != 10) && (ch != 13) && (ch != 9))
     {
         is->Ungetch(ch);
@@ -1624,7 +1623,7 @@ static bool wxEatWhiteSpace(wxInputStream *is)
             while (!finished)
             {
                 ch = is->GetC();
-                if (ch == EOF)
+                if (is->LastRead() == 0)
                     return false;
                 if (ch == '*')
                 {
@@ -1733,7 +1732,7 @@ bool wxGetResourceToken(wxInputStream *is)
             // Escaped characters
             else if (ch == '\\')
             {
-                int newCh = is->GetC();
+                char newCh = is->GetC();
                 if (newCh == '"')
                     actualCh = '"';
                 else if (newCh == 10)
@@ -2106,13 +2105,17 @@ static wxResourceBitListStruct wxResourceBitListTable[] =
     { wxT("wxCB_SORT"), wxCB_SORT },
 
     /* wxGauge */
+#if WXWIN_COMPATIBILITY_2_6
     { wxT("wxGA_PROGRESSBAR"), wxGA_PROGRESSBAR },
+#endif // WXWIN_COMPATIBILITY_2_6
     { wxT("wxGA_HORIZONTAL"), wxGA_HORIZONTAL },
     { wxT("wxGA_VERTICAL"), wxGA_VERTICAL },
 
     /* wxTextCtrl */
-    { wxT("wxPASSWORD"), wxPASSWORD},
-    { wxT("wxPROCESS_ENTER"), wxPROCESS_ENTER},
+#if WXWIN_COMPATIBILITY_2_6
+    { wxT("wxPASSWORD"), wxTE_PASSWORD},
+    { wxT("wxPROCESS_ENTER"), wxTE_PROCESS_ENTER},
+#endif
     { wxT("wxTE_PASSWORD"), wxTE_PASSWORD},
     { wxT("wxTE_READONLY"), wxTE_READONLY},
     { wxT("wxTE_PROCESS_ENTER"), wxTE_PROCESS_ENTER},
@@ -2201,8 +2204,10 @@ static wxResourceBitListStruct wxResourceBitListTable[] =
     { wxT("wxTB_VERTICAL"), wxTB_VERTICAL},
     { wxT("wxTB_FLAT"), wxTB_FLAT},
 
+#if WXWIN_COMPATIBILITY_2_6
     /* wxDialog */
     { wxT("wxDIALOG_MODAL"), wxDIALOG_MODAL },
+#endif // WXWIN_COMPATIBILITY_2_6
 
     /* Generic */
     { wxT("wxVSCROLL"), wxVSCROLL },
@@ -2215,12 +2220,14 @@ static wxResourceBitListStruct wxResourceBitListTable[] =
     { wxT("wxSDI"), 0},
     { wxT("wxMDI_PARENT"), 0},
     { wxT("wxMDI_CHILD"), 0},
-    { wxT("wxTHICK_FRAME"), wxTHICK_FRAME},
+    { wxT("wxTHICK_FRAME"), wxRESIZE_BORDER},
     { wxT("wxRESIZE_BORDER"), wxRESIZE_BORDER},
     { wxT("wxSYSTEM_MENU"), wxSYSTEM_MENU},
     { wxT("wxMINIMIZE_BOX"), wxMINIMIZE_BOX},
     { wxT("wxMAXIMIZE_BOX"), wxMAXIMIZE_BOX},
+#if WXWIN_COMPATIBILITY_2_6
     { wxT("wxRESIZE_BOX"), wxRESIZE_BOX},
+#endif // WXWIN_COMPATIBILITY_2_6
     { wxT("wxDEFAULT_FRAME_STYLE"), wxDEFAULT_FRAME_STYLE},
     { wxT("wxDEFAULT_FRAME"), wxDEFAULT_FRAME_STYLE},
     { wxT("wxDEFAULT_DIALOG_STYLE"), wxDEFAULT_DIALOG_STYLE},
@@ -2322,7 +2329,9 @@ static wxResourceBitListStruct wxResourceBitListTable[] =
     { wxT("wxICON_MASK"), wxICON_MASK},
     { wxT("wxCENTRE"), wxCENTRE},
     { wxT("wxCENTER"), wxCENTRE},
+#if WXWIN_COMPATIBILITY_2_6
     { wxT("wxUSER_COLOURS"), wxUSER_COLOURS},
+#endif // WXWIN_COMPATIBILITY_2_6
     { wxT("wxVERTICAL_LABEL"), 0},
     { wxT("wxHORIZONTAL_LABEL"), 0},
 
@@ -2385,7 +2394,7 @@ wxBitmap wxResourceCreateBitmap(const wxString& resource, wxResourceTable *table
     wxItemResource *item = table->FindResource(resource);
     if (item)
     {
-        if ((item->GetType() == wxT("")) || (item->GetType() != wxT("wxBitmap")))
+        if ((item->GetType().empty()) || (item->GetType() != wxT("wxBitmap")))
         {
             wxLogWarning(_("%s not a bitmap resource specification."), (const wxChar*) resource);
             return wxNullBitmap;
@@ -2539,7 +2548,7 @@ wxIcon wxResourceCreateIcon(const wxString& resource, wxResourceTable *table)
     wxItemResource *item = table->FindResource(resource);
     if (item)
     {
-        if ((item->GetType() == wxT("")) || wxStrcmp(item->GetType(), wxT("wxIcon")) != 0)
+        if ((item->GetType().empty()) || wxStrcmp(item->GetType(), wxT("wxIcon")) != 0)
         {
             wxLogWarning(_("%s not an icon resource specification."), (const wxChar*) resource);
             return wxNullIcon;
@@ -2695,7 +2704,7 @@ wxMenu *wxResourceCreateMenu(wxItemResource *item)
     while (node)
     {
         wxItemResource *child = (wxItemResource *)node->GetData();
-        if ((child->GetType() != wxT("")) && (child->GetType() == wxT("wxMenuSeparator")))
+        if ((!child->GetType().empty()) && (child->GetType() == wxT("wxMenuSeparator")))
             menu->AppendSeparator();
         else if (child->GetChildren().GetCount() > 0)
         {
@@ -2718,7 +2727,7 @@ wxMenuBar *wxResourceCreateMenuBar(const wxString& resource, wxResourceTable *ta
         table = wxDefaultResourceTable;
 
     wxItemResource *menuResource = table->FindResource(resource);
-    if (menuResource && (menuResource->GetType() != wxT("")) && (menuResource->GetType() == wxT("wxMenu")))
+    if (menuResource && (!menuResource->GetType().empty()) && (menuResource->GetType() == wxT("wxMenu")))
     {
         if (!menuBar)
             menuBar = new wxMenuBar;
@@ -2742,7 +2751,7 @@ wxMenu *wxResourceCreateMenu(const wxString& resource, wxResourceTable *table)
         table = wxDefaultResourceTable;
 
     wxItemResource *menuResource = table->FindResource(resource);
-    if (menuResource && (menuResource->GetType() != wxT("")) && (menuResource->GetType() == wxT("wxMenu")))
+    if (menuResource && (!menuResource->GetType().empty()) && (menuResource->GetType() == wxT("wxMenu")))
         //  if (menuResource && (menuResource->GetType() == wxTYPE_MENU))
         return wxResourceCreateMenu(menuResource);
     return (wxMenu *) NULL;
@@ -3184,7 +3193,7 @@ bool wxLoadFromResource(wxWindow* thisWindow, wxWindow *parent, const wxString&
 
     wxItemResource *resource = table->FindResource((const wxChar *)resourceName);
     //  if (!resource || (resource->GetType() != wxTYPE_DIALOG_BOX))
-    if (!resource || (resource->GetType() == wxT("")) ||
+    if (!resource || (resource->GetType().empty()) ||
         ! ((resource->GetType() == wxT("wxDialog")) || (resource->GetType() == wxT("wxPanel"))))
         return false;
 
@@ -3203,7 +3212,13 @@ bool wxLoadFromResource(wxWindow* thisWindow, wxWindow *parent, const wxString&
         if (thisWindow->IsKindOf(CLASSINFO(wxDialog)))
         {
             wxDialog *dialogBox = (wxDialog *)thisWindow;
-            long modalStyle = isModal ? wxDIALOG_MODAL : 0;
+            long modalStyle = isModal ?
+#if WXWIN_COMPATIBILITY_2_6
+                                        wxDIALOG_MODAL
+#else
+                                        0
+#endif // WXWIN_COMPATIBILITY_2_6
+                                      : 0;
             if (!dialogBox->Create(parent, wxID_ANY, title, wxPoint(x, y), wxSize(width, height), theWindowStyle|modalStyle, name))
                 return false;
 
@@ -3279,4 +3294,3 @@ wxControl *wxCreateItem(wxWindow* thisWindow, const wxItemResource *resource, co
 #endif // VC++
 
 #endif // wxUSE_WX_RESOURCES
-