1/*
2 * Copyright (C) 2006 Marcus Overhagen <marcus@overhagen.de>. All rights reserved.
3 *
4 * Distributed under the terms of the MIT License.
5 */
6#ifndef __VIDEO_VIEW_H
7#define __VIDEO_VIEW_H
8
9
10#include <View.h>
11
12
13class BMediaAddOn;
14class VideoNode;
15
16
17class VideoView : public BView
18{
19public:
20					VideoView(BRect frame, const char *name, uint32 resizeMask, uint32 flags, VideoNode *node);
21					~VideoView();
22
23	void			RemoveVideoDisplay();
24	void			RemoveOverlay();
25
26	VideoNode *		Node();
27
28	bool			IsOverlaySupported();
29
30	void			OverlayLockAcquire();
31	void			OverlayLockRelease();
32
33	void			OverlayScreenshotPrepare();
34	void			OverlayScreenshotCleanup();
35
36	void			DrawFrame();
37
38private:
39	void			AttachedToWindow();
40	void			MessageReceived(BMessage *msg);
41	void			Draw(BRect updateRect);
42
43private:
44	VideoNode *		fVideoNode;
45	bool			fOverlayActive;
46	rgb_color		fOverlayKeyColor;
47};
48
49#endif
50