00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef ELEMENTOBJECTENUMERATOR_H
00022 #define ELEMENTOBJECTENUMERATOR_H
00023
00024 #include "skExecutable.h"
00025 #include "skExecutableIterator.h"
00026 #include "skElement.h"
00027
00028 class CLASSEXPORT skElementObject;
00029
00033 class CLASSEXPORT skElementObjectEnumerator : public skExecutable, public skExecutableIterator{
00034 public:
00040 skElementObjectEnumerator(skElement * element,bool add_if_not_present,const skString& location);
00047 skElementObjectEnumerator(skElement * element,bool add_if_not_present,const skString& location,const skString& tag);
00057 bool method(const skString& s,skRValueArray& args,skRValue& r,skExecutableContext& ctxt);
00061 bool next(skRValue&);
00062 private:
00063 void findNextNode();
00064
00065 skElement * m_Element;
00066 skString m_Location;
00067 bool m_AddIfNotPresent;
00068 int m_NodeNum;
00069 skString m_Tag;
00070 };
00071 #endif