]> git.sesse.net Git - vlc/blobdiff - modules/gui/wince/interface.cpp
Add module_Exists until I don't get any error on my build tree!
[vlc] / modules / gui / wince / interface.cpp
index 1ac446b28c3d1c66648081cf5a185dcb7045f217..69b71647cdee4bc6e07ce64ff02c0b87625ff955 100644 (file)
@@ -1,7 +1,7 @@
 /*****************************************************************************
  * interface.cpp: WinCE gui plugin for VLC
  *****************************************************************************
- * Copyright (C) 2003 VideoLAN
+ * Copyright (C) 2003 the VideoLAN team
  * $Id$
  *
  * Authors: Marodon Cedric <cedric_marodon@yahoo.fr>
@@ -27,9 +27,9 @@
  * Preamble
  *****************************************************************************/
 #include <vlc/vlc.h>
-#include <vlc/aout.h>
-#include <vlc/vout.h>
-#include <vlc/intf.h>
+#include <vlc_aout.h>
+#include <vlc_vout.h>
+#include <vlc_interface.h>
 
 #include "wince.h"
 
@@ -37,9 +37,9 @@
 #include <commctrl.h>
 #include <commdlg.h>
 
-#define NUMIMAGES     9   // Number of buttons in the toolbar           
-#define IMAGEWIDTH    17   // Width of the buttons in the toolbar  
-#define IMAGEHEIGHT   16   // Height of the buttons in the toolbar  
+#define NUMIMAGES     9   // Number of buttons in the toolbar
+#define IMAGEWIDTH    17   // Width of the buttons in the toolbar
+#define IMAGEHEIGHT   16   // Height of the buttons in the toolbar
 #define BUTTONWIDTH   0    // Width of the button images in the toolbar
 #define BUTTONHEIGHT  0    // Height of the button images in the toolbar
 #define ID_TOOLBAR    2000 // Identifier of the main tool bar
@@ -75,7 +75,7 @@
 #define HELP_FAST _T("Play faster")
 
 // The TBBUTTON structure contains information the toolbar buttons.
-static TBBUTTON tbButton[] =      
+static TBBUTTON tbButton[] =
 {
   {0, ID_FILE_QUICKOPEN,        TBSTATE_ENABLED, TBSTYLE_BUTTON},
   {1, ID_FILE_OPENNET,       TBSTATE_ENABLED, TBSTYLE_BUTTON},
@@ -93,7 +93,7 @@ static TBBUTTON tbButton[] =
 };
 
 // Toolbar ToolTips
-TCHAR * szToolTips[] = 
+TCHAR * szToolTips[] =
 {
     HELP_SIMPLE, HELP_NET, HELP_STOP, HELP_PLAY, HELP_PLO, HELP_PLP,
     HELP_PLN, HELP_SLOW, HELP_FAST
@@ -102,8 +102,10 @@ TCHAR * szToolTips[] =
 /*****************************************************************************
  * Constructor.
  *****************************************************************************/
-Interface::Interface()
-  : hwndMain(0), hwndCB(0), hwndTB(0), hwndSlider(0), hwndLabel(0),
+Interface::Interface( intf_thread_t *p_intf, CBaseWindow *p_parent,
+                      HINSTANCE h_inst )
+  : CBaseWindow( p_intf, p_parent, h_inst ),
+    hwndMain(0), hwndCB(0), hwndTB(0), hwndSlider(0), hwndLabel(0),
     hwndVol(0), hwndSB(0), timer(0), video(0), b_volume_hold(0)
 {
 }
@@ -114,14 +116,11 @@ Interface::~Interface()
     if( video ) delete video;
 }
 
-BOOL Interface::InitInstance( HINSTANCE hInstance, intf_thread_t *_p_intf )
+BOOL Interface::InitInstance()
 {
     /* Initializations */
-    p_intf = _p_intf;
     i_old_playing_status = PAUSE_S;
 
-    hInst = hInstance; // Store instance handle in our global variable
-
     int i_style = WS_VISIBLE;
 
 #ifndef UNDER_CE
@@ -132,7 +131,7 @@ BOOL Interface::InitInstance( HINSTANCE hInstance, intf_thread_t *_p_intf )
     hwndMain =
         CreateWindow( _T("VLC WinCE"), _T("VLC media player"), i_style,
                       0, MENU_HEIGHT, CW_USEDEFAULT, CW_USEDEFAULT,
-                      NULL, NULL, hInstance, (void *)this );
+                      NULL, NULL, GetInstance(), (void *)this );
 
     if( !hwndMain ) return FALSE;
 
@@ -143,10 +142,10 @@ BOOL Interface::InitInstance( HINSTANCE hInstance, intf_thread_t *_p_intf )
 }
 
 /***********************************************************************
-FUNCTION: 
+FUNCTION:
   CreateMenuBar
 
-PURPOSE: 
+PURPOSE:
   Creates a menu bar.
 ***********************************************************************/
 HWND Interface::CreateMenuBar( HWND hwnd, HINSTANCE hInst )
@@ -242,10 +241,10 @@ HWND Interface::CreateMenuBar( HWND hwnd, HINSTANCE hInst )
 }
 
 /***********************************************************************
-FUNCTION: 
+FUNCTION:
   CreateToolBar
 
-PURPOSE: 
+PURPOSE:
   Registers the TOOLBAR control class and creates a toolbar.
 ***********************************************************************/
 HWND CreateToolBar( HWND hwnd, HINSTANCE hInst )
@@ -270,15 +269,15 @@ HWND CreateToolBar( HWND hwnd, HINSTANCE hInst )
         BUTTONWIDTH, BUTTONHEIGHT, IMAGEWIDTH, IMAGEHEIGHT, sizeof(TBBUTTON) );
 
     if( !hwndTB ) return NULL;
-  
     // Add ToolTips to the toolbar.
-    SendMessage( hwndTB, TB_SETTOOLTIPS, (WPARAM)NUMIMAGES, 
+    SendMessage( hwndTB, TB_SETTOOLTIPS, (WPARAM)NUMIMAGES,
                  (LPARAM)szToolTips );
 
     // Reposition the toolbar.
     GetClientRect( hwnd, &rect );
     GetWindowRect( hwndTB, &rectTB );
-    MoveWindow( hwndTB, rect.left, rect.bottom - rect.top - 2*MENU_HEIGHT, 
+    MoveWindow( hwndTB, rect.left, rect.bottom - rect.top - 2*MENU_HEIGHT,
                 rect.right - rect.left, MENU_HEIGHT, TRUE );
 
     return hwndTB;
@@ -286,10 +285,10 @@ HWND CreateToolBar( HWND hwnd, HINSTANCE hInst )
 
 /***********************************************************************
 
-FUNCTION: 
+FUNCTION:
   CreateSliderBar
 
-PURPOSE: 
+PURPOSE:
   Registers the TRACKBAR_CLASS control class and creates a trackbar.
 
 ***********************************************************************/
@@ -318,8 +317,8 @@ HWND CreateSliderBar( HWND hwnd, HINSTANCE hInst )
 
     // Reposition the trackbar
     GetClientRect( hwnd, &rect );
-    MoveWindow( hwndSlider, rect.left, 
-                rect.bottom - rect.top - 2*(MENU_HEIGHT-1) - SLIDER_HEIGHT, 
+    MoveWindow( hwndSlider, rect.left,
+                rect.bottom - rect.top - 2*(MENU_HEIGHT-1) - SLIDER_HEIGHT,
                 rect.right - rect.left - 40, 30, TRUE );
 
     ShowWindow( hwndSlider, SW_HIDE );
@@ -351,10 +350,10 @@ HWND CreateStaticText( HWND hwnd, HINSTANCE hInst )
 
 /***********************************************************************
 
-FUNCTION: 
+FUNCTION:
   CreateVolTrackBar
 
-PURPOSE: 
+PURPOSE:
   Registers the TRACKBAR_CLASS control class and creates a trackbar.
 
 ***********************************************************************/
@@ -380,12 +379,12 @@ HWND CreateVolTrackBar( HWND hwnd, HINSTANCE hInst )
     SendMessage( hwndVol, TBM_SETRANGEMIN, 1, 0 );
     SendMessage( hwndVol, TBM_SETRANGEMAX, 1, 200 );
     SendMessage( hwndVol, TBM_SETPOS, 1, 100 );
-    SendMessage( hwndVol, TBM_SETTICFREQ, 50, 0 );  
+    SendMessage( hwndVol, TBM_SETTICFREQ, 50, 0 );
 
     // Reposition the trackbar
     GetClientRect( hwnd, &rect );
-    MoveWindow( hwndVol, rect.right - rect.left - 40, 
-                rect.bottom - rect.top - 2*(MENU_HEIGHT-1) - SLIDER_HEIGHT, 
+    MoveWindow( hwndVol, rect.right - rect.left - 40,
+                rect.bottom - rect.top - 2*(MENU_HEIGHT-1) - SLIDER_HEIGHT,
                 40, SLIDER_HEIGHT, TRUE );
 
     ShowWindow( hwndVol, SW_HIDE );
@@ -395,10 +394,10 @@ HWND CreateVolTrackBar( HWND hwnd, HINSTANCE hInst )
 
 /***********************************************************************
 
-FUNCTION: 
+FUNCTION:
   CreateStatusBar
 
-PURPOSE: 
+PURPOSE:
   Registers the StatusBar control class and creates a Statusbar.
 
 ***********************************************************************/
@@ -425,7 +424,7 @@ HWND CreateStatusBar( HWND hwnd, HINSTANCE hInst )
 
     if (!hwndSB ) return NULL;
 
-    // Get the coordinates of the parent window's client area. 
+    // Get the coordinates of the parent window's client area.
     GetClientRect( hwnd, &rect );
 
     // allocate memory for the panes of status bar
@@ -443,10 +442,10 @@ HWND CreateStatusBar( HWND hwnd, HINSTANCE hInst )
 }
 
 /***********************************************************************
-FUNCTION: 
+FUNCTION:
   WndProc
 
-PURPOSE: 
+PURPOSE:
   Processes messages sent to the main window.
 ***********************************************************************/
 LRESULT Interface::WndProc( HWND hwnd, UINT msg, WPARAM wp, LPARAM lp )
@@ -473,8 +472,8 @@ LRESULT Interface::WndProc( HWND hwnd, UINT msg, WPARAM wp, LPARAM lp )
     case WM_COMMAND:
         switch( GET_WM_COMMAND_ID(wp,lp) )
         {
-        case ID_FILE_QUICKOPEN: 
-        case ID_FILE_OPENFILE: 
+        case ID_FILE_QUICKOPEN:
+        case ID_FILE_OPENFILE:
         case ID_FILE_OPENDIR:
         case ID_FILE_OPENNET:
         case ID_VIEW_STREAMINFO:
@@ -491,13 +490,17 @@ LRESULT Interface::WndProc( HWND hwnd, UINT msg, WPARAM wp, LPARAM lp )
         case SlowStream_Event: OnSlowStream(); break;
         case FastStream_Event: OnFastStream(); break;
 
-        case ID_FILE_ABOUT: 
+        case ID_FILE_ABOUT:
         {
             string about = (string)"VLC media player " PACKAGE_VERSION +
                 _("\n(WinCE interface)\n\n") +
-                _("(c) 1996-2005 - the VideoLAN Team\n\n") +
+                _("(c) 1996-2006 - the VideoLAN Team\n\n") +
+                _("Compiled by ") + VLC_CompileBy() + "@" +
+                VLC_CompileHost() + "." + VLC_CompileDomain() + ".\n" +
+                _("Compiler: ") + VLC_Compiler() + ".\n" +
+                _("Based on SVN revision: ") + VLC_Changeset() + ".\n\n" +
                 _("The VideoLAN team <videolan@videolan.org>\n"
-                  "http://www.videolan.org/\n\n");
+                  "http://www.videolan.org/");
 
             MessageBox( hwnd, _FROMMB(about.c_str()),
                         _T("About VLC media player"), MB_OK );
@@ -513,20 +516,20 @@ LRESULT Interface::WndProc( HWND hwnd, UINT msg, WPARAM wp, LPARAM lp )
             // we should test if it is a menu command
         }
         break;
-  
     case WM_TIMER:
         timer->Notify();
         break;
 
-    case WM_CTLCOLORSTATIC: 
+    case WM_CTLCOLORSTATIC:
         if( ( (HWND)lp == hwndSlider ) || ( (HWND)lp == hwndVol ) )
-        { 
-            return( (LRESULT)::GetSysColorBrush(COLOR_3DFACE) ); 
+        {
+            return( (LRESULT)::GetSysColorBrush(COLOR_3DFACE) );
         }
         if( (HWND)lp == hwndLabel )
         {
-            SetBkColor( (HDC)wp, RGB (192, 192, 192) ); 
-            return( (LRESULT)::GetSysColorBrush(COLOR_3DFACE) ); 
+            SetBkColor( (HDC)wp, RGB (192, 192, 192) );
+            return( (LRESULT)::GetSysColorBrush(COLOR_3DFACE) );
         }
         break;
 
@@ -557,7 +560,7 @@ LRESULT Interface::WndProc( HWND hwnd, UINT msg, WPARAM wp, LPARAM lp )
         break;
 
     case WM_SETFOCUS:
-        SHSipPreference( hwnd, SIP_DOWN ); 
+        SHSipPreference( hwnd, SIP_DOWN );
         SHFullScreen( GetForegroundWindow(), SHFS_HIDESIPBUTTON );
     case WM_EXITMENULOOP:
         if( video && video->hWnd )
@@ -726,7 +729,7 @@ void Interface::OnSliderUpdate( int wp )
     vlc_mutex_lock( &p_intf->change_lock );
     input_thread_t *p_input = p_intf->p_sys->p_input;
 
-    int dwPos = SendMessage( hwndSlider, TBM_GETPOS, 0, 0 ); 
+    int dwPos = SendMessage( hwndSlider, TBM_GETPOS, 0, 0 );
 
     if( (int)LOWORD(wp) == SB_THUMBPOSITION ||
         (int)LOWORD(wp) == SB_ENDSCROLL )