1
0
mirror of https://github.com/mpv-player/mpv synced 2025-03-25 04:38:01 +00:00

add XShape support for gui's submenu

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@6222 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
pontscho 2002-05-28 14:12:33 +00:00
parent 555ec7acbe
commit c10381ca79
3 changed files with 20 additions and 13 deletions
Gui

View File

@ -80,6 +80,7 @@ void mplShowMenu( int mx,int my )
wsMoveWindow( &appMPlayer.menuWindow,False,x,y );
wsMoveTopWindow( wsDisplay,appMPlayer.menuWindow.WindowID );
wsSetLayer( wsDisplay,appMPlayer.menuWindow.WindowID,1 );
mplMenuRender=1;
wsVisibleWindow( &appMPlayer.menuWindow,wsShowWindow );
wsPostRedisplay( &appMPlayer.menuWindow );
@ -132,6 +133,8 @@ void mplMenuInit( void )
appMPlayer.menuBase.x,appMPlayer.menuBase.y,appMPlayer.menuBase.width,appMPlayer.menuBase.height,
wsNoBorder,wsShowMouseCursor|wsHandleMouseButton|wsHandleMouseMove,wsOverredirect|wsHideFrame|wsMaxSize|wsMinSize|wsHideWindow,"MPlayer menu" );
wsSetShape( &appMPlayer.menuWindow,appMPlayer.menuBase.Mask.Image );
#ifdef DEBUG
mp_msg( MSGT_GPLAYER,MSGL_DBG2,"[menu.h] menu: 0x%x\n",(int)appMPlayer.menuWindow.WindowID );
#endif

View File

@ -182,6 +182,7 @@ void ChangeSkin( char * name )
{ mp_msg( MSGT_GPLAYER,MSGL_STATUS,MSGTR_NEMDB ); return; }
wsResizeWindow( &appMPlayer.menuWindow,appMPlayer.menuBase.width,appMPlayer.menuBase.height );
wsResizeImage( &appMPlayer.menuWindow,appMPlayer.menuBase.width,appMPlayer.menuBase.height );
wsSetShape( &appMPlayer.menuWindow,appMPlayer.menuBase.Mask.Image );
wsVisibleWindow( &appMPlayer.menuWindow,wsHideWindow );
}

View File

@ -160,19 +160,6 @@ int __base( char * in )
}
mp_dbg( MSGT_GPLAYER,MSGL_DBG2,"[skin] %d,%d %dx%d\n",defList->sub.x,defList->sub.y,defList->sub.width,defList->sub.height );
}
/*
if ( !strcmp( winList,"eq" ) )
{
defList->eq.x=x;
defList->eq.y=y;
defList->eq.type=itBase;
strcpy( tmp,path ); strcat( tmp,fname );
if ( skinBPRead( tmp,&defList->eq.Bitmap ) ) return 1;
defList->eq.width=defList->eq.Bitmap.Width;
defList->eq.height=defList->eq.Bitmap.Height;
mp_dbg( MSGT_GPLAYER,MSGL_DBG2,"[skin] width: %d height: %d\n",defList->eq.width,defList->eq.height );
}
*/
if ( !strcmp( winList,"menu" ) )
{
defList->menuBase.type=itBase;
@ -180,6 +167,22 @@ int __base( char * in )
if ( skinBPRead( tmp,&defList->menuBase.Bitmap ) ) return 1;
defList->menuBase.width=defList->menuBase.Bitmap.Width;
defList->menuBase.height=defList->menuBase.Bitmap.Height;
#ifdef HAVE_XSHAPE
Convert32to1( &defList->menuBase.Bitmap,&defList->menuBase.Mask,0x00ff00ff );
#if 0
{
if ( defList->menuBase.Mask.Image != NULL )
{
txSample d;
Convert1to32( &defList->menuBase.Mask,&d );
tgaWriteTexture( "debug.tga",&d );
}
}
#endif
mp_dbg( MSGT_GPLAYER,MSGL_DBG2,"[skin] mask: %dx%d\n",defList->menuBase.Mask.Width,defList->menuBase.Mask.Height );
#else
defList->menuBase.Mask.Image=NULL;
#endif
mp_dbg( MSGT_GPLAYER,MSGL_DBG2,"[skin] width: %d height: %d\n",defList->menuBase.width,defList->menuBase.height );
}
return 0;