/// finds or creates new scheduler for the document currently on AS-stack FunctionCallScheduler *getSchedulerForCurrentUIDocument( void ) { ElementDocument *doc = GetCurrentUIDocument(); SchedulerMap::iterator it = schedulers.find( doc ); FunctionCallScheduler *scheduler; if( it == schedulers.end() ) { doc->AddReference(); scheduler = __new__( FunctionCallScheduler )(); scheduler->init( UI_Main::Get()->getAS() ); schedulers[doc] = scheduler; } else { scheduler = it->second; } return scheduler; }
ElementDocument *getDocument( void ) const { ElementDocument *document = GetCurrentUIDocument(); document->AddReference(); return document; }