]> git.sesse.net Git - vlc/blob - plugins/beos/VideoWindow.h
Added names to headers
[vlc] / plugins / beos / VideoWindow.h
1 /*****************************************************************************
2  * VideoWindow.h: BeOS video window class prototype
3  *****************************************************************************
4  * Copyright (C) 1999, 2000, 2001 VideoLAN
5  *
6  * Authors: Jean-Marc Dressler <polux@via.ecp.fr>
7  *          Tony Castley <tcastley@mail.powerup.com.au>
8  *          Richard Shepherd <richard@rshepherd.demon.co.uk>
9  *
10  * This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation; either version 2 of the License, or
13  * (at your option) any later version.
14  * 
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program; if not, write to the Free Software
22  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
23  *****************************************************************************/
24 #include <Slider.h>
25 #include <Accelerant.h>
26 #include <Bitmap.h>
27
28 class VLCView : public BView
29 {
30 public:
31         VLCView( BRect bounds);
32         ~VLCView();
33         
34         virtual void MouseDown(BPoint point);
35 };
36
37
38 class VideoWindow : public BWindow
39 {
40 public:
41     // standard constructor and destructor
42     VideoWindow( BRect frame, const char *name,
43                  struct vout_thread_s *p_video_output); 
44     ~VideoWindow();
45
46     // standard window member
47     virtual bool    QuitRequested();
48     virtual void    FrameResized(float width, float height);
49     virtual void    MessageReceived(BMessage *message);
50     virtual void        Zoom(BPoint origin, float width, float height);
51
52     // this is the hook controling direct screen connection
53     int32                   i_bytes_per_pixel;
54     int32                   i_screen_depth;
55     struct vout_thread_s   *p_vout;
56      
57     int32           fRowBytes;
58
59     uint32          fNumClipRects;
60
61     int                         i_buffer_index;
62     bool            fDirty;
63     thread_id       fDrawThreadID;
64     BBitmap                     *bitmap[2];
65     VLCView                     *view;
66     bool                        teardownwindow;
67     bool                        is_zoomed;
68     bool                        fUsingOverlay;
69
70 private:
71         display_mode old_mode;
72         BRect rect;
73
74 };
75