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:
00039 IMPORT_C skElementObjectEnumerator(skElementObject * element,const skString& location);
00045 IMPORT_C skElementObjectEnumerator(skElementObject * element,const skString& location,const skString& tag);
00049 IMPORT_C virtual ~skElementObjectEnumerator();
00062 IMPORT_C bool method(const skString& s,skRValueArray& args,skRValue& r,skExecutableContext& ctxt);
00067 IMPORT_C bool next(skRValue&);
00068 private:
00069 void findNextNode();
00070
00071 skElementObject * m_Object;
00072 skString m_Location;
00073 int m_NodeNum;
00074 skString m_Tag;
00075 };
00076 #endif