X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=modules%2Fgui%2Fbeos%2FVideoWindow.h;h=2e973b2abbc20ad23e50cb9c693e8be2e6b02c07;hb=6ee1e193fd896ab9a4729fde14f009d9ce629815;hp=da7b9c9fea4fe6d974e439dd86277c7811af4783;hpb=3305b049e7f587b23359a1c9047fb5763d19c1dc;p=vlc diff --git a/modules/gui/beos/VideoWindow.h b/modules/gui/beos/VideoWindow.h index da7b9c9fea..2e973b2abb 100644 --- a/modules/gui/beos/VideoWindow.h +++ b/modules/gui/beos/VideoWindow.h @@ -36,20 +36,20 @@ typedef struct colorcombo { - color_space colspace; - const char *name; - uint32_t chroma; - int planes; - int pixel_bytes; + color_space colspace; + const char *name; + uint32_t chroma; + int planes; + int pixel_bytes; } colorcombo; colorcombo colspace[]= { - {B_YCbCr420, "B_YCbCr420", VLC_FOURCC('I','4','2','0'), 3, 2}, - {B_YUV422, "B_YUV422", VLC_FOURCC('Y','4','2','2'), 3, 2}, - {B_YCbCr422, "B_YCbCr422", VLC_FOURCC('Y','U','Y','2'), 3, 2}, - {B_RGB32, "B_RGB32", VLC_FOURCC('R','V','3','2'), 1, 4}, - {B_RGB16, "B_RGB16", VLC_FOURCC('R','V','1','6'), 1, 2} + {B_YCbCr420, "B_YCbCr420", VLC_FOURCC('I','4','2','0'), 3, 2}, + {B_YUV422, "B_YUV422", VLC_FOURCC('Y','4','2','2'), 3, 2}, + {B_YCbCr422, "B_YCbCr422", VLC_FOURCC('Y','U','Y','2'), 3, 2}, + {B_RGB32, "B_RGB32", VLC_FOURCC('R','V','3','2'), 1, 4}, + {B_RGB16, "B_RGB16", VLC_FOURCC('R','V','1','6'), 1, 2} }; #define COLOR_COUNT 5 @@ -58,146 +58,146 @@ colorcombo colspace[]= class VideoSettings { public: - VideoSettings( const VideoSettings& clone ); - virtual ~VideoSettings(); - - static VideoSettings* DefaultSettings(); - - enum - { - SIZE_OTHER = 0, - SIZE_50 = 1, - SIZE_100 = 2, - SIZE_200 = 3, - }; - - void SetVideoSize( uint32_t mode ); - inline uint32_t VideoSize() const - { return fVideoSize; } - enum - { - FLAG_CORRECT_RATIO = 0x0001, - FLAG_SYNC_RETRACE = 0x0002, - FLAG_ON_TOP_ALL = 0x0004, - FLAG_FULL_SCREEN = 0x0008, - }; - - inline void SetFlags( uint32_t flags ) - { fFlags = flags; } - inline void AddFlags( uint32_t flags ) - { fFlags |= flags; } - inline void ClearFlags( uint32_t flags ) - { fFlags &= ~flags; } - inline bool HasFlags( uint32_t flags ) const - { return fFlags & flags; } - inline uint32_t Flags() const - { return fFlags; } + VideoSettings( const VideoSettings& clone ); + virtual ~VideoSettings(); + + static VideoSettings* DefaultSettings(); + + enum + { + SIZE_OTHER = 0, + SIZE_50 = 1, + SIZE_100 = 2, + SIZE_200 = 3, + }; + + void SetVideoSize( uint32_t mode ); + inline uint32_t VideoSize() const + { return fVideoSize; } + enum + { + FLAG_CORRECT_RATIO = 0x0001, + FLAG_SYNC_RETRACE = 0x0002, + FLAG_ON_TOP_ALL = 0x0004, + FLAG_FULL_SCREEN = 0x0008, + }; + + inline void SetFlags( uint32_t flags ) + { fFlags = flags; } + inline void AddFlags( uint32_t flags ) + { fFlags |= flags; } + inline void ClearFlags( uint32_t flags ) + { fFlags &= ~flags; } + inline bool HasFlags( uint32_t flags ) const + { return fFlags & flags; } + inline uint32_t Flags() const + { return fFlags; } private: - VideoSettings(); // reserved for default settings + VideoSettings(); // reserved for default settings - static VideoSettings fDefaultSettings; + static VideoSettings fDefaultSettings; - uint32_t fVideoSize; - uint32_t fFlags; - BMessage* fSettings; + uint32_t fVideoSize; + uint32_t fFlags; + BMessage* fSettings; }; class VLCView : public BView { public: - VLCView( BRect bounds, vout_thread_t *p_vout ); - virtual ~VLCView(); + VLCView( BRect bounds, vout_thread_t *p_vout ); + virtual ~VLCView(); - virtual void AttachedToWindow(); - virtual void MouseDown(BPoint where); - virtual void MouseUp(BPoint where); - virtual void MouseMoved(BPoint where, uint32 transit, - const BMessage* dragMessage); - virtual void Pulse(); - virtual void Draw(BRect updateRect); + virtual void AttachedToWindow(); + virtual void MouseDown(BPoint where); + virtual void MouseUp(BPoint where); + virtual void MouseMoved(BPoint where, uint32 transit, + const BMessage* dragMessage); + virtual void Pulse(); + virtual void Draw(BRect updateRect); private: vout_thread_t *p_vout; - bigtime_t fLastMouseMovedTime; - bool fCursorHidden; - bool fCursorInside; - bool fIgnoreDoubleClick; + bigtime_t fLastMouseMovedTime; + bool fCursorHidden; + bool fCursorInside; + bool fIgnoreDoubleClick; }; class VideoWindow : public BWindow { public: - VideoWindow(int v_width, - int v_height, - BRect frame, - vout_thread_t *p_vout); - virtual ~VideoWindow(); - - // BWindow - virtual void MessageReceived(BMessage* message); - virtual void Zoom(BPoint origin, - float width, float height); - virtual void FrameResized(float width, float height); - virtual void FrameMoved(BPoint origin); - virtual void ScreenChanged(BRect frame, - color_space mode); - virtual void WindowActivated(bool active); - - // VideoWindow - void drawBuffer(int bufferIndex); - - void ToggleInterfaceShowing(); - void SetInterfaceShowing(bool showIt); - - void SetCorrectAspectRatio(bool doIt); - bool CorrectAspectRatio() const; - void ToggleFullScreen(); - void SetFullScreen(bool doIt); - bool IsFullScreen() const; - void SetOnTop(bool doIt); - bool IsOnTop() const; - void SetSyncToRetrace(bool doIt); - bool IsSyncedToRetrace() const; - inline status_t InitCheck() const - { return fInitStatus; } + VideoWindow(int v_width, + int v_height, + BRect frame, + vout_thread_t *p_vout); + virtual ~VideoWindow(); + + // BWindow + virtual void MessageReceived(BMessage* message); + virtual void Zoom(BPoint origin, + float width, float height); + virtual void FrameResized(float width, float height); + virtual void FrameMoved(BPoint origin); + virtual void ScreenChanged(BRect frame, + color_space mode); + virtual void WindowActivated(bool active); + + // VideoWindow + void drawBuffer(int bufferIndex); + + void ToggleInterfaceShowing(); + void SetInterfaceShowing(bool showIt); + + void SetCorrectAspectRatio(bool doIt); + bool CorrectAspectRatio() const; + void ToggleFullScreen(); + void SetFullScreen(bool doIt); + bool IsFullScreen() const; + void SetOnTop(bool doIt); + bool IsOnTop() const; + void SetSyncToRetrace(bool doIt); + bool IsSyncedToRetrace() const; + inline status_t InitCheck() const + { return fInitStatus; } // this is the hook controling direct screen connection int32_t i_width; // aspect corrected bitmap size int32_t i_height; BRect winSize; // current window size - BBitmap *bitmap[3]; + BBitmap *bitmap[3]; // BBitmap *overlaybitmap; - VLCView *view; + VLCView *view; int i_buffer; - volatile bool teardownwindow; + volatile bool teardownwindow; thread_id fDrawThreadID; int mode; int bitmap_count; int colspace_index; private: - status_t _AllocateBuffers(int width, - int height, - int* mode); - void _FreeBuffers(); - void _BlankBitmap(BBitmap* bitmap) const; - void _SetVideoSize(uint32_t mode); - void _SetToSettings(); + status_t _AllocateBuffers(int width, + int height, + int* mode); + void _FreeBuffers(); + void _BlankBitmap(BBitmap* bitmap) const; + void _SetVideoSize(uint32_t mode); + void _SetToSettings(); vout_thread_t *p_vout; - int32_t fTrueWidth; // incomming bitmap size - int32_t fTrueHeight; - window_feel fCachedFeel; - bool fInterfaceShowing; - status_t fInitStatus; - VideoSettings* fSettings; + int32_t fTrueWidth; // incomming bitmap size + int32_t fTrueHeight; + window_feel fCachedFeel; + bool fInterfaceShowing; + status_t fInitStatus; + VideoSettings* fSettings; }; -#endif // BEOS_VIDEO_WINDOW_H +#endif // BEOS_VIDEO_WINDOW_H