void GFGClass::Populate() { const JSize bcount = GetBaseClassCount(); if (bcount == 0) { return; } JString classname, filename; // Parse these in reverse order so newer declarations override // older ones. const JSize count = GetAncestorCount(); for (JIndex i=count; i>=1; i--) { GetAncestor(i, &classname, &filename); itsLink->ParseClass(this, filename, classname); } // Parse these last so their function declarations override // those of their ancestors. for (JIndex i = 1; i <= bcount; i++) { GetBaseClass(i, &classname, &filename); itsLink->ParseClass(this, filename, classname); } }
bool ObjectInfo::IsSubclassOf(wxString classname) { bool found = false; if (GetClassName() == classname) found = true; else for (unsigned int i=0; !found && i < GetBaseClassCount() ; i++) { shared_ptr<ObjectInfo> base = GetBaseClass(i); found = base->IsSubclassOf(classname); } return found; }