1 /*****************************************************************************
2 * InterfaceWindow.h: BeOS interface window class prototype
3 *****************************************************************************
4 * Copyright (C) 1999, 2000, 2001 VideoLAN
5 * $Id: InterfaceWindow.h,v 1.10 2001/06/03 12:47:21 sam Exp $
7 * Authors: Jean-Marc Dressler <polux@via.ecp.fr>
8 * Tony Castley <tcastley@mail.powerup.com.au>
9 * Richard Shepherd <richard@rshepherd.demon.co.uk>
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License as published by
13 * the Free Software Foundation; either version 2 of the License, or
14 * (at your option) any later version.
16 * This program is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU General Public License for more details.
21 * You should have received a copy of the GNU General Public License
22 * along with this program; if not, write to the Free Software
23 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.
24 *****************************************************************************/
29 class CDMenu : public BMenu
32 CDMenu(const char *name);
34 void AttachedToWindow(void);
36 int GetCD(const char *directory);
39 class LanguageMenu : public BMenu
42 LanguageMenu(const char *name, int menu_kind, intf_thread_t *p_interface);
44 void AttachedToWindow(void);
46 intf_thread_t *p_intf;
51 class InterfaceWindow : public BWindow
54 InterfaceWindow( BRect frame, const char *name, intf_thread_t *p_intf );
57 // standard window member
58 virtual bool QuitRequested();
59 virtual void MessageReceived(BMessage *message);
60 void updateInterface();
67 intf_thread_t *p_intf;
70 BFilePanel *file_panel;
71 es_descriptor_t * p_audio_es;
72 es_descriptor_t * p_spu_es;
76 class InterfaceView : public BView
82 virtual void MessageReceived(BMessage *message);
86 class MediaSlider : public BSlider
89 MediaSlider(BRect frame,
94 virtual void DrawThumb(void);
98 class SeekSlider : public MediaSlider
101 SeekSlider(BRect frame,
102 InterfaceWindow *owner,
105 thumb_style thumbType = B_TRIANGLE_THUMB);
109 virtual void MouseDown(BPoint);
110 virtual void MouseUp(BPoint pt);
111 virtual void MouseMoved(BPoint pt, uint32 c, const BMessage *m);
113 InterfaceWindow* fOwner;