00001
00002
00003
00004 #ifndef Impala_Visualization_VideoPlayerWithButtons_h
00005 #define Impala_Visualization_VideoPlayerWithButtons_h
00006
00007 #ifndef Impala_Visualization_VideoPlayer_h
00008 #include "Visualization/VideoPlayer.h"
00009 #endif
00010
00011 #ifndef Impala_Visualization_VideoPlayerControl_h
00012 #include "Visualization/VideoPlayerControl.h"
00013 #endif
00014
00015 namespace Impala {
00016 namespace Visualization {
00017
00018 class VideoPlayerWithButtons : public OglGui::Window
00019 {
00020 public:
00021 typedef OglGui::Window Window;
00022
00023 VideoPlayerWithButtons(int x, int y, int w, int h, int margin=2) :
00024 Window(x, y, w, h)
00025 {
00026 Init(w, h, margin);
00027 }
00028
00029 VideoPlayerWithButtons(Window* parent, int w, int h, int margin=2) :
00030 Window(parent, w, h)
00031 {
00032 Init(w, h, margin);
00033 }
00034
00035 VideoPlayerWithButtons(Window* parent, int x, int y, int w, int h,
00036 int margin=2) :
00037 Window(parent, x, y, w, h)
00038 {
00039 Init(w, h, margin);
00040 }
00041
00042 VideoPlayer* Player() { return mPlayer; }
00043 VideoPlayerControl* PlayerControl() { return mPlayerControl; }
00044
00045 private:
00046 void Init(int w, int h, int m)
00047 {
00048 mPlayer = new VideoPlayer(this,m,m+32,w-2*m,h-32-2*m);
00049 mPlayerControl = new VideoPlayerControl(this,m,m,w-2*m,32,mPlayer);
00050 viewSys.ClearTags(mPlayer->OglView(), showBorderTag);
00051 SetBorderType(BEV_ETCHED);
00052 ScaleChildren();
00053 SetAllowChildScaling(false);
00054 }
00055
00056 VideoPlayer* mPlayer;
00057 VideoPlayerControl* mPlayerControl;
00058 };
00059
00060 }
00061 }
00062 #endif