Blame addon/doxmlparser/src/loamhandler.cpp

Packit Service 50c9f2
#include "loamhandler.h"
Packit Service 50c9f2
#include "memberhandler.h"
Packit Service 50c9f2
Packit Service 50c9f2
Packit Service 50c9f2
ListOfAllMembersHandler::ListOfAllMembersHandler(IBaseHandler *parent) : m_parent(parent)
Packit Service 50c9f2
{
Packit Service 50c9f2
  m_members.setAutoDelete(TRUE);
Packit Service 50c9f2
Packit Service 50c9f2
  addStartHandler("member",this,&ListOfAllMembersHandler::startMember);
Packit Service 50c9f2
  addStartHandler("name",this,&ListOfAllMembersHandler::startName);
Packit Service 50c9f2
  addEndHandler("name",this,&ListOfAllMembersHandler::endName);
Packit Service 50c9f2
  addStartHandler("scope",this,&ListOfAllMembersHandler::startScope);
Packit Service 50c9f2
  addEndHandler("scope",this,&ListOfAllMembersHandler::endScope);
Packit Service 50c9f2
Packit Service 50c9f2
  addEndHandler("listofallmembers",this,&ListOfAllMembersHandler::endListOfAllMembers);
Packit Service 50c9f2
}
Packit Service 50c9f2
Packit Service 50c9f2
void ListOfAllMembersHandler::initialize(MainHandler *mh)
Packit Service 50c9f2
{
Packit Service 50c9f2
  QListIterator<MemberReference> mli(m_members);
Packit Service 50c9f2
  MemberReference *mr;
Packit Service 50c9f2
  for (;(mr=mli.current());++mli)
Packit Service 50c9f2
  {
Packit Service 50c9f2
    mr->initialize(mh);
Packit Service 50c9f2
  }
Packit Service 50c9f2
}
Packit Service 50c9f2
Packit Service 50c9f2
void ListOfAllMembersHandler::startMember(const QXmlAttributes& attrib)
Packit Service 50c9f2
{
Packit Service 50c9f2
  MemberReference *mr = new MemberReference;
Packit Service 50c9f2
  mr->m_memId = attrib.value("refid");
Packit Service 50c9f2
  mr->m_virtualness = attrib.value("virt");
Packit Service 50c9f2
  mr->m_protection = attrib.value("prot");
Packit Service 50c9f2
  mr->m_ambiguityScope = attrib.value("ambiguityscope");
Packit Service 50c9f2
  m_members.append(new MemberReference);
Packit Service 50c9f2
}
Packit Service 50c9f2
Packit Service 50c9f2
void ListOfAllMembersHandler::startName(const QXmlAttributes&)
Packit Service 50c9f2
{
Packit Service 50c9f2
  m_curString="";
Packit Service 50c9f2
}
Packit Service 50c9f2
Packit Service 50c9f2
void ListOfAllMembersHandler::endName()
Packit Service 50c9f2
{
Packit Service 50c9f2
  ASSERT(m_members.getLast());
Packit Service 50c9f2
  m_members.getLast()->m_name = m_curString;
Packit Service 50c9f2
}
Packit Service 50c9f2
Packit Service 50c9f2
void ListOfAllMembersHandler::startScope(const QXmlAttributes&)
Packit Service 50c9f2
{
Packit Service 50c9f2
  m_curString="";
Packit Service 50c9f2
}
Packit Service 50c9f2
Packit Service 50c9f2
void ListOfAllMembersHandler::endScope()
Packit Service 50c9f2
{
Packit Service 50c9f2
  ASSERT(m_members.getLast());
Packit Service 50c9f2
  m_members.getLast()->m_scope = m_curString;
Packit Service 50c9f2
}
Packit Service 50c9f2
Packit Service 50c9f2
void ListOfAllMembersHandler::startListOfAllMembers(const QXmlAttributes& /*attrib*/)
Packit Service 50c9f2
{
Packit Service 50c9f2
  m_parent->setDelegate(this);
Packit Service 50c9f2
  debug(2,"listofallmembers start\n");
Packit Service 50c9f2
}
Packit Service 50c9f2
Packit Service 50c9f2
void ListOfAllMembersHandler::endListOfAllMembers()
Packit Service 50c9f2
{
Packit Service 50c9f2
  m_parent->setDelegate(0);
Packit Service 50c9f2
  debug(2,"listofallmembers end\n");
Packit Service 50c9f2
}
Packit Service 50c9f2
Packit Service 50c9f2
IMemberReferenceIterator *ListOfAllMembersHandler::members() const
Packit Service 50c9f2
{ 
Packit Service 50c9f2
  return new MemberReferenceIterator(m_members); 
Packit Service 50c9f2
}