Mercurial > mplayer.hg
changeset 18913:2dc84d07332c
Initial win32 gui release.
author | vayne |
---|---|
date | Thu, 06 Jul 2006 01:51:31 +0000 |
parents | 7ebb8863726d |
children | d450ec82ae57 |
files | Gui/Makefile configure libvo/vo_directx.c mplayer.c |
diffstat | 4 files changed, 56 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/Gui/Makefile Wed Jul 05 23:42:56 2006 +0000 +++ b/Gui/Makefile Thu Jul 06 01:51:31 2006 +0000 @@ -9,6 +9,16 @@ CFLAGS = $(OPTIMIZE) $(INCDIR) $(DEBUG) +ifeq ($(TARGET_WIN32),yes) +SRCS = win32/dialogs.c \ + win32/gui.c \ + win32/interface.c \ + win32/playlist.c \ + win32/preferences.c \ + win32/skinload.c \ + win32/widgetrender.c \ + win32/wincfg.c +else SRCS = wm/ws.c \ wm/wsxdnd.c \ app.c \ @@ -34,8 +44,8 @@ mplayer/gtk/opts.c \ mplayer/gtk/url.c \ mplayer/gtk/eq.c \ - mplayer/gtk/common.c \ - + mplayer/gtk/common.c +endif OBJS = $(SRCS:.c=.o) .SUFFIXES: .c .o @@ -57,7 +67,8 @@ mplayer/*.o mplayer/*~ \ mplayer/gtk/*.o mplayer/gtk/*~ \ skin/*.o skin/*~ \ - wm/*.o wm/*~ + wm/*.o wm/*~ \ + win32/*.o #dep: depend #
--- a/configure Wed Jul 05 23:42:56 2006 +0000 +++ b/configure Thu Jul 06 01:51:31 2006 +0000 @@ -6942,6 +6942,7 @@ # Required libraries test "$_png" != yes && die "PNG support required for GUI compilation, please install libpng and libpng-dev packages." +if not win32 ; then test "$_x11" != yes && die "X11 support required for GUI compilation" echocheck "XShape extension" @@ -7046,6 +7047,13 @@ _ld_gui='$(GTKLIB) $(GLIBLIB)' fi +else + _ld_win32libs="-lcomdlg32 -lcomctl32 -lshell32 -lkernel32 $_ld_win32libs" + _def_gui='#define HAVE_NEW_GUI 1' + _def_gtk2_gui='#undef HAVE_GTK2_GUI' + _ld_gui='$(GTKLIB) $(GLIBLIB)' +fi + echo "Creating Gui/config.mak" cat > Gui/config.mak << EOF # -------- Generated by configure -----------
--- a/libvo/vo_directx.c Wed Jul 05 23:42:56 2006 +0000 +++ b/libvo/vo_directx.c Thu Jul 06 01:51:31 2006 +0000 @@ -35,6 +35,10 @@ #include "aspect.h" #include "geometry.h" +#ifdef HAVE_NEW_GUI +#include "Gui/interface.h" +#endif + #ifndef WM_XBUTTONDOWN # define WM_XBUTTONDOWN 0x020B # define WM_XBUTTONUP 0x020C @@ -1311,6 +1315,13 @@ vo_dx = 0; vo_dy = 0; +#ifdef HAVE_NEW_GUI + if(use_gui && WinID != -1){ + vo_dwidth = d_image_width; + vo_dheight = d_image_height; + guiGetEvent(guiSetShVideo, 0); + } +#endif /*release all directx objects*/ if (g_cc != NULL)g_cc->lpVtbl->Release(g_cc); g_cc=NULL;
--- a/mplayer.c Wed Jul 05 23:42:56 2006 +0000 +++ b/mplayer.c Thu Jul 06 01:51:31 2006 +0000 @@ -2538,10 +2538,16 @@ tv_param_immediate = 1; #endif +#if defined(WIN32) && defined(HAVE_NEW_GUI) + char *cmdline = GetCommandLine(); + if(!strstr(cmdline, "-slave")) + use_gui=1; +#else if ( argv[0] ) if(!strcmp(argv[0],"gmplayer") || (strrchr(argv[0],'/') && !strcmp(strrchr(argv[0],'/'),"/gmplayer") ) ) use_gui=1; +#endif mconfig = m_config_new(); m_config_register_options(mconfig,mplayer_opts); @@ -2570,6 +2576,21 @@ } } +#if defined(WIN32) && defined(HAVE_NEW_GUI) + void *runningmplayer = FindWindow("MPlayer GUI for Windows", "MPlayer for Windows"); + if(runningmplayer && filename && use_gui){ + COPYDATASTRUCT csData; + char file[MAX_PATH]; + char *filepart = filename; + if(GetFullPathName(filename, MAX_PATH, file, &filepart)){ + csData.dwData = 0; + csData.cbData = strlen(file)*2; + csData.lpData = file; + SendMessage(runningmplayer, WM_COPYDATA, (WPARAM)runningmplayer, (LPARAM)&csData); + } + } +#endif + #ifdef WIN32 if(proc_priority){ int i; @@ -2598,12 +2619,14 @@ play_tree_iter_free(playtree_iter); playtree_iter=NULL; +#ifndef WIN32 //Allow playing movies from network drives. eg. \\Desktop\c\somemovie.avi if (getcwd(cwd, PATH_MAX) != (char *)NULL) { strcat(cwd, "/"); // Prefix relative paths with current working directory play_tree_add_bpf(playtree, cwd); } +#endif /* WIN32 */ // Import initital playtree into GUI. import_initial_playtree_into_gui(playtree, mconfig, enqueue); }