]> git.sesse.net Git - vlc/blobdiff - modules/gui/beos/InterfaceWindow.h
modules/gui/beos/InterfaceWindow.h/.cpp
[vlc] / modules / gui / beos / InterfaceWindow.h
index 91d14ce0b46fa37faf43526cecc25b042d493f72..b5c503ae4a52356ddb9ca3fef63a5fee27dbfa7d 100644 (file)
@@ -2,7 +2,7 @@
  * InterfaceWindow.h: BeOS interface window class prototype
  *****************************************************************************
  * Copyright (C) 1999, 2000, 2001 VideoLAN
- * $Id: InterfaceWindow.h,v 1.7 2003/01/08 02:09:15 titer Exp $
+ * $Id: InterfaceWindow.h,v 1.11 2003/02/01 12:01:11 stippi Exp $
  *
  * Authors: Jean-Marc Dressler <polux@via.ecp.fr>
  *          Tony Castley <tcastley@mail.powerup.com.au>
@@ -35,124 +35,130 @@ class MediaControlView;
 class PlayListWindow;
 class BFilePanel;
 class PreferencesWindow;
+class MessagesWindow;
+class VlcWrapper;
 
 class CDMenu : public BMenu
 {
  public:
-                                                       CDMenu( const char* name );
-       virtual                                 ~CDMenu();
+                            CDMenu( const char* name );
+    virtual                 ~CDMenu();
 
-       virtual void                    AttachedToWindow();
+    virtual void            AttachedToWindow();
 
  private:
-       int                                             GetCD( const char* directory );
+    int                     GetCD( const char* directory );
 };
 
 class LanguageMenu : public BMenu
 {
  public:
-                                                       LanguageMenu( const char* name,
-                                                                                 int menu_kind,
-                                                                                 VlcWrapper *p_wrapper );
-       virtual                                 ~LanguageMenu();
+                            LanguageMenu( const char* name,
+                                          int menu_kind,
+                                          VlcWrapper *p_wrapper );
+    virtual                 ~LanguageMenu();
 
-       virtual void                    AttachedToWindow();
+    virtual void            AttachedToWindow();
 
  private:
-                       void                    _GetChannels();
-
-       VlcWrapper *            p_wrapper;
-       int                                             kind;
+    VlcWrapper *            p_wrapper;
+    int                     kind;
 };
 
 class TitleMenu : public BMenu
 {
  public:
-                                                       TitleMenu( const char* name, intf_thread_t  *p_interface );
-       virtual                                 ~TitleMenu();
+                            TitleMenu( const char* name, intf_thread_t  *p_interface );
+    virtual                 ~TitleMenu();
 
-       virtual void                    AttachedToWindow();
-       
-       intf_thread_t  *p_intf;
+    virtual void            AttachedToWindow();
+    
+    intf_thread_t  *p_intf;
 };
 
 class ChapterMenu : public BMenu
 {
  public:
-                                                       ChapterMenu( const char* name, intf_thread_t  *p_interface );
-       virtual                                 ~ChapterMenu();
+                            ChapterMenu( const char* name, intf_thread_t  *p_interface );
+    virtual                 ~ChapterMenu();
 
-       virtual void                    AttachedToWindow();
+    virtual void            AttachedToWindow();
 
-       intf_thread_t  *p_intf;
+    intf_thread_t  *p_intf;
 };
 
 
 class InterfaceWindow : public BWindow
 {
  public:
-                                                       InterfaceWindow( BRect frame,
-                                                                                        const char* name,
-                                                                                        intf_thread_t* p_interface );
-       virtual                                 ~InterfaceWindow();
-
-                                                       // BWindow
-       virtual void                    FrameResized( float width, float height );
-       virtual void                    MessageReceived( BMessage* message );
-       virtual bool                    QuitRequested();
-
-                                                       // InterfaceWindow
-                       void                    updateInterface();
-                       bool                    IsStopped() const;
-           
-       MediaControlView*               p_mediaControl;
-
- private:      
-                       void                    _UpdatePlaylist();
-                       void                    _SetMenusEnabled( bool hasFile,
-                                                                                         bool hasChapters = false,
-                                                                                         bool hasTitles = false );
-                       void                    _UpdateSpeedMenu( int rate );
-                       void                    _InputStreamChanged();
-                       status_t                _LoadSettings( BMessage* message,
-                                                                                  const char* fileName,
-                                                                                  const char* subFolder = NULL );
-                       status_t                _SaveSettings( BMessage* message,
-                                                                                  const char* fileName,
-                                                                                  const char* subFolder = NULL );
+                            InterfaceWindow( BRect frame,
+                                             const char* name,
+                                             intf_thread_t* p_interface );
+    virtual                 ~InterfaceWindow();
+
+                            // BWindow
+    virtual void            FrameResized( float width, float height );
+    virtual void            MessageReceived( BMessage* message );
+    virtual bool            QuitRequested();
+
+                            // InterfaceWindow
+            void            UpdateInterface();
+            bool            IsStopped() const;
+        
+    MediaControlView*        p_mediaControl;
+
+ private:    
+            void            _UpdatePlaylist();
+            void            _SetMenusEnabled( bool hasFile,
+                                              bool hasChapters = false,
+                                              bool hasTitles = false );
+            void            _UpdateSpeedMenu( int rate );
+            void            _InputStreamChanged();
+            void                       _ShowFilePanel( uint32 command,
+                                                                       const char* windowTitle );
                        void                    _RestoreSettings();
                        void                    _StoreSettings();
 
-       intf_thread_t*                  p_intf;
-       es_descriptor_t*                p_spu_es;
-
-       bool                                    fPlaylistIsEmpty;
-       BFilePanel*                             fFilePanel;
-       PlayListWindow*                 fPlaylistWindow;
-       PreferencesWindow*              fPreferencesWindow;
-       BMenuBar*                               fMenuBar;
-       BMenuItem*                              fNextTitleMI;
-       BMenuItem*                              fPrevTitleMI;
-       BMenuItem*                              fNextChapterMI;
-       BMenuItem*                              fPrevChapterMI;
-       BMenuItem*                              fOnTopMI;
-       BMenuItem*                              fSlowerMI;
-       BMenuItem*                              fNormalMI;
-       BMenuItem*                              fFasterMI;
-       BMenuItem*                              fPreferencesMI;
-       BMenu*                                  fAudioMenu;
-       BMenu*                                  fNavigationMenu;
-       BMenu*                                  fTitleMenu;
-       BMenu*                                  fChapterMenu;
-       BMenu*                                  fLanguageMenu;
-       BMenu*                                  fSubtitlesMenu;
-       BMenu*                                  fSpeedMenu;
-       BMenu*                                  fSettingsMenu;
-       bigtime_t                               fLastUpdateTime;
+    intf_thread_t*          p_intf;
+    es_descriptor_t*        p_spu_es;
+
+    bool                    fPlaylistIsEmpty;
+    BFilePanel*             fFilePanel;
+    PlayListWindow*         fPlaylistWindow;
+    PreferencesWindow*      fPreferencesWindow;
+    MessagesWindow*         fMessagesWindow;
+    BMenuBar*               fMenuBar;
+    BMenuItem*              fNextTitleMI;
+    BMenuItem*              fPrevTitleMI;
+    BMenuItem*              fNextChapterMI;
+    BMenuItem*              fPrevChapterMI;
+    BMenuItem*              fOnTopMI;
+    BMenuItem*              fSlowerMI;
+    BMenuItem*              fNormalMI;
+    BMenuItem*              fFasterMI;
+    BMenu*                  fAudioMenu;
+    BMenu*                  fNavigationMenu;
+    BMenu*                  fTitleMenu;
+    BMenu*                  fChapterMenu;
+    BMenu*                  fLanguageMenu;
+    BMenu*                  fSubtitlesMenu;
+    BMenu*                  fSpeedMenu;
+    BMenu*                  fShowMenu;
+    bigtime_t               fLastUpdateTime;
        BMessage*                               fSettings;      // we keep the message arround
                                                                                // for forward compatibility
-       
-       VlcWrapper * p_wrapper;
+    VlcWrapper*                                p_wrapper;
 };
 
-#endif // BEOS_INTERFACE_WINDOW_H
+
+// some global support functions
+status_t load_settings( BMessage* message,
+                                               const char* fileName,
+                                               const char* folder = NULL );
+
+status_t save_settings( BMessage* message,
+                                               const char* fileName,
+                                               const char* folder = NULL );
+
+
+#endif    // BEOS_INTERFACE_WINDOW_H