]> git.saurik.com Git - wxWidgets.git/blobdiff - contrib/src/xml/xh_combo.cpp
Fixed buffer overrun in call to wxStripMenuCodes()
[wxWidgets.git] / contrib / src / xml / xh_combo.cpp
index 115e87f1adf996555a5d785f08732b215263fd4f..9af99a795774ff27f7a010eb46827c004f4d2758 100644 (file)
@@ -31,18 +31,19 @@ wxComboBoxXmlHandler::wxComboBoxXmlHandler()
     ADD_STYLE(wxCB_SORT);
     ADD_STYLE(wxCB_READONLY);
     ADD_STYLE(wxCB_DROPDOWN);
+    AddWindowStyles();
 }
 
 wxObject *wxComboBoxXmlHandler::DoCreateResource()
 { 
-    if( m_Node->GetName() == _T("combobox"))
+    if( m_Class == _T("wxComboBox"))
     {
         // find the selection
         long selection = GetLong( _T("selection"), -1 );
 
         // need to build the list of strings from children
         m_InsideBox = TRUE;
-        CreateChildren( NULL, TRUE /* only this handler */);
+        CreateChildrenPrivately( NULL, GetParamNode(_T("content")));
         wxString *strings = (wxString *) NULL;
         if( strList.GetCount() > 0 )
         {
@@ -92,10 +93,9 @@ wxObject *wxComboBoxXmlHandler::DoCreateResource()
 
 bool wxComboBoxXmlHandler::CanHandle(wxXmlNode *node)
 {
-    return( node->GetName() == _T("combobox") ||
-        ( m_InsideBox &&
-            node->GetName() == _T("item" )) 
-        );
+    return (IsOfClass(node, _T("wxComboBox")) ||
+           (m_InsideBox && node->GetName() == _T("item"))
+           );
 }
 
 #endif