26 #include <boost/intrusive_ptr.hpp>
27 #include <boost/scoped_ptr.hpp>
28 #include <boost/function.hpp>
65 #define ENABLE_KEYBOARD_MOUSE_MOVEMENTS 1
73 class movie_definition;
98 virtual bool init(
int argc,
char **argv[]) = 0;
113 virtual void setTimeout(
unsigned int timeout) = 0;
126 int xPosition = 0,
int yPosition = 0) = 0;
131 virtual bool run() = 0;
188 return std::make_pair(0, 0);
370 #ifdef GNASH_FPS_DEBUG
375 void setFpsTimerInterval(
float interval)
378 fps_timer_interval = interval;
380 #endif // def GNASH_FPS_DEBUG
384 std::auto_ptr<movie_root::InfoTree> getMovieInfo()
const;
411 virtual void error(
const std::string& ) {}
423 virtual bool yesno(
const std::string& question);
432 float getFPS()
const {
return (_movieDef) ? _movieDef->get_frame_rate() : 0;
463 std::exit(EXIT_SUCCESS);
475 log_unimpl(
"This GUI does not implement FD watching.");
538 std::map<
int , boost::function<void ()> > _fd_callbacks;
547 boost::int32_t _xoffset;
550 boost::int32_t _yoffset;
554 #ifdef GNASH_FPS_DEBUG
555 unsigned int fps_counter;
557 float fps_rate_min, fps_rate_max;
561 unsigned int fps_counter_total;
563 boost::uint64_t fps_timer, fps_start_timer;
569 float fps_timer_interval;
572 unsigned int frames_dropped;
580 void fpsCounterTick();
582 #endif // def GNASH_FPS_DEBUG
586 boost::intrusive_ptr<movie_definition> _movieDef;
598 bool _showUpdatedRegions;
604 boost::scoped_ptr<ScreenShotter> _screenShotter;
606 #ifdef ENABLE_KEYBOARD_MOUSE_MOVEMENTS
609 bool _keyboardMouseMovements;
610 int _keyboardMouseMovementsStep;
611 #endif // ENABLE_KEYBOARD_MOUSE_MOVEMENTS
616 std::auto_ptr<Gui>
createFBGui(
unsigned long xid,
float scale,
bool loop, RunResources&
r);
618 std::auto_ptr<Gui>
createGTKGui(
unsigned long xid,
float scale,
bool loop, RunResources&
r);
619 std::auto_ptr<Gui>
createKDEGui(
unsigned long xid,
float scale,
bool loop, RunResources&
r);
620 std::auto_ptr<Gui>
createQt4Gui(
unsigned long xid,
float scale,
bool loop, RunResources&
r);
621 std::auto_ptr<Gui>
createSDLGui(
unsigned long xid,
float scale,
bool loop, RunResources&
r);
622 std::auto_ptr<Gui>
createFLTKGui(
unsigned long xid,
float scale,
bool loop, RunResources&
r);
623 std::auto_ptr<Gui>
createAQUAGui(
unsigned long xid,
float scale,
bool loop, RunResources&
r);
624 std::auto_ptr<Gui>
createRISCOSGui(
unsigned long xid,
float scale,
bool loop, RunResources&
r);
625 std::auto_ptr<Gui>
createAOS4Gui(
unsigned long xid,
float scale,
bool loop, RunResources&
r);
626 std::auto_ptr<Gui>
createHaikuGui(
unsigned long xid,
float scale,
bool loop, RunResources&
r);
627 std::auto_ptr<Gui>
createDumpGui(
unsigned long xid,
float scale,
bool loop, RunResources&
r);