00001 #ifndef RENDERGROUPVIEWAS3_H
00002 #define RENDERGROUPVIEWAS3_H
00003
00004 #ifdef RT_AS3
00005
00006 #include "Types.h"
00007 #include "RendergroupAbstractView.h"
00008 #include "MouseInterface.h"
00009
00010 namespace RenderTools{
00011
00012 class RendergroupAS3View;
00013 typedef shared_ptr< RendergroupAS3View > RendergroupAS3ViewPtr;
00014
00015 class RendergroupAS3View : public RendergroupAbstractView, public MouseInterface {
00016 public:
00017
00018 RendergroupAS3View( void );
00019 virtual ~RendergroupAS3View( void );
00020
00021 static PropertyPtr create( const XMLNodePtr & xml = XMLNodePtr() ){
00022 RendergroupAS3ViewPtr p( new RendergroupAS3View() );
00023 p->createProperties();
00024 p->setProperties( xml, false );
00025 return( dynamic_pointer_cast< AbstractProperty, RendergroupAS3View >( p ) );
00026 }
00027
00028 virtual void createProperties( void );
00029 static RendergroupAS3ViewPtr getInstance( void );
00030
00031 protected:
00032
00033 public:
00034 static AS3_Val initializeFunc( void * me, AS3_Val args );
00035 static AS3_Val updateFunc( void *, AS3_Val args );
00036 static AS3_Val timerFunc( void *, AS3_Val args );
00037 static AS3_Val mouseFunc( void *, AS3_Val args );
00038 static AS3_Val motionFunc( void *, AS3_Val args );
00039
00040 static AS3_Val s_libData;
00041 public:
00042 static RendergroupAS3ViewPtr s_instance;
00043 };
00044
00045 };
00046
00047 #endif //RT_AS3
00048
00049 #endif
00050