void GenerateHeaderCode(wxFFile& file) { file.Write(_T("class ") + m_className + _T(" : public ") + m_parentClassName + _T(" {\nprotected:\n")); size_t i; for(i=0;i<m_wdata.Count();++i) { const XRCWidgetData& w = m_wdata.Item(i); if( !IsRealClass(w.GetClass()) ) continue; if( w.GetName().Length() == 0 ) continue; file.Write( _T(" ") + w.GetClass() + _T("* ") + w.GetName() + _T(";\n")); } file.Write(_T("\nprivate:\n void InitWidgetsFromXRC(){\n") _T(" wxXmlResource::Get()->LoadObject(this,NULL,_T(\"") + m_className + _T("\"), _T(\"") + m_parentClassName + _T("\"));\n")); for(i=0;i<m_wdata.Count();++i) { const XRCWidgetData& w = m_wdata.Item(i); if( !IsRealClass(w.GetClass()) ) continue; if( w.GetName().Length() == 0 ) continue; file.Write( _T(" ") + w.GetName() + _T(" = XRCCTRL(*this,\"") + w.GetName() + _T("\",") + w.GetClass() + _T(");\n") ); } file.Write(_T(" }\n")); file.Write( _T("public:\n") + m_className + _T("::") + m_className + _T("(){\n") + _T(" InitWidgetsFromXRC();\n") _T(" }\n") _T("};\n") ); };
void GenerateHeaderCode(wxFFile& file) { file.Write(_T("class ") + m_className + _T(" : public ") + m_parentClassName + _T(" {\nprotected:\n")); size_t i; for(i=0;i<m_wdata.Count();++i) { const XRCWidgetData& w = m_wdata.Item(i); if( !IsRealClass(w.GetClass()) ) continue; if( w.GetName().Length() == 0 ) continue; file.Write( _T(" ") + w.GetClass() + _T("* ") + w.GetName() + _T(";\n")); } file.Write(_T("\nprivate:\n void InitWidgetsFromXRC(wxWindow *parent){\n") _T(" wxXmlResource::Get()->LoadObject(this,parent,_T(\"") + m_className + _T("\"), _T(\"") + m_parentClassName + _T("\"));\n")); for(i=0;i<m_wdata.Count();++i) { const XRCWidgetData& w = m_wdata.Item(i); if( !IsRealClass(w.GetClass()) ) continue; if( w.GetName().Length() == 0 ) continue; file.Write( _T(" ") + w.GetName() + _T(" = XRCCTRL(*this,\"") + w.GetName() + _T("\",") + w.GetClass() + _T(");\n")); } file.Write(_T(" }\n")); file.Write( _T("public:\n")); if ( m_ancestorClassNames.size() == 1 ) { file.Write ( m_className + _T("(") + *m_ancestorClassNames.begin() + _T(" *parent=NULL){\n") + _T(" InitWidgetsFromXRC((wxWindow *)parent);\n") _T(" }\n") _T("};\n") ); } else { file.Write(m_className + _T("(){\n") + _T(" InitWidgetsFromXRC(NULL);\n") _T(" }\n") _T("};\n")); for ( StringSet::const_iterator it = m_ancestorClassNames.begin(); it != m_ancestorClassNames.end(); ++it ) { file.Write(m_className + _T("(") + *it + _T(" *parent){\n") + _T(" InitWidgetsFromXRC((wxWindow *)parent);\n") _T(" }\n") _T("};\n")); } } }