* modules/gui/wxwindows/*: fix for popup menu placement.
* dialogs.cpp : wxWindows plugin for vlc
*****************************************************************************
* Copyright (C) 2000-2001 VideoLAN
- * $Id: dialogs.cpp,v 1.2 2003/07/17 18:58:23 gbazin Exp $
+ * $Id: dialogs.cpp,v 1.3 2003/07/18 11:39:39 gbazin Exp $
*
* Authors: Gildas Bazin <gbazin@netcourrier.com>
*
void DialogsProvider::OnPopupMenu( wxCommandEvent& event )
{
- wxPoint mousepos = wxGetMousePosition();
-
-#if 0
- wxMouseEvent event = wxMouseEvent( wxEVT_RIGHT_UP );
- event.m_x = p_main_interface->ScreenToClient(mousepos).x;
- event.m_y = p_main_interface->ScreenToClient(mousepos).y;
-#endif
-
+ wxPoint mousepos = ScreenToClient( wxGetMousePosition() );
::PopupMenu( p_intf, this, mousepos );
}
* interface.cpp : wxWindows plugin for vlc
*****************************************************************************
* Copyright (C) 2000-2001 VideoLAN
- * $Id: interface.cpp,v 1.47 2003/07/17 18:58:23 gbazin Exp $
+ * $Id: interface.cpp,v 1.48 2003/07/18 11:39:39 gbazin Exp $
*
* Authors: Gildas Bazin <gbazin@netcourrier.com>
*
{
if( p_intf->p_sys->pf_show_dialog )
p_intf->p_sys->pf_show_dialog( p_intf, INTF_DIALOG_POPUPMENU, 0 );
- //::PopupMenu( p_intf, this, ScreenToClient(event.GetPosition()) );
}
#endif
void Interface::OnContextMenu(wxMouseEvent& event)
{
if( p_intf->p_sys->pf_show_dialog )
p_intf->p_sys->pf_show_dialog( p_intf, INTF_DIALOG_POPUPMENU, 0 );
- //::PopupMenu( p_intf, this, event.GetPosition() );
}
void Interface::OnExit( wxCommandEvent& WXUNUSED(event) )
* timer.cpp : wxWindows plugin for vlc
*****************************************************************************
* Copyright (C) 2000-2001 VideoLAN
- * $Id: timer.cpp,v 1.27 2003/07/17 18:58:23 gbazin Exp $
+ * $Id: timer.cpp,v 1.28 2003/07/18 11:39:39 gbazin Exp $
*
* Authors: Gildas Bazin <gbazin@netcourrier.com>
*
vlc_mutex_lock( &p_intf->change_lock );
- /* If the "display popup" flag has changed */
- if( p_intf->p_sys->b_popup_change )
- {
-#if 0
- wxPoint mousepos = wxGetMousePosition();
-
- wxMouseEvent event = wxMouseEvent( wxEVT_RIGHT_UP );
- event.m_x = p_main_interface->ScreenToClient(mousepos).x;
- event.m_y = p_main_interface->ScreenToClient(mousepos).y;
-
- p_main_interface->AddPendingEvent(event);
-#endif
- if( p_intf->p_sys->pf_show_dialog )
- p_intf->p_sys->pf_show_dialog( p_intf, INTF_DIALOG_POPUPMENU, 0 );
-
- p_intf->p_sys->b_popup_change = VLC_FALSE;
- }
-
/* Update the input */
if( p_intf->p_sys->p_input == NULL )
{
{
intf_thread_t *p_intf = (intf_thread_t *)param;
- p_intf->p_sys->b_popup_change = VLC_TRUE;
+ if( p_intf->p_sys->pf_show_dialog )
+ p_intf->p_sys->pf_show_dialog( p_intf, INTF_DIALOG_POPUPMENU, 0 );
return VLC_SUCCESS;
}
* wxwindows.cpp : wxWindows plugin for vlc
*****************************************************************************
* Copyright (C) 2000-2001 VideoLAN
- * $Id: wxwindows.cpp,v 1.18 2003/07/17 17:30:40 gbazin Exp $
+ * $Id: wxwindows.cpp,v 1.19 2003/07/18 11:39:39 gbazin Exp $
*
* Authors: Gildas Bazin <gbazin@netcourrier.com>
*
p_intf->p_sys->i_slider_pos = p_intf->p_sys->i_slider_oldpos = 0;
p_intf->p_sys->p_popup_menu = NULL;
- p_intf->p_sys->b_popup_change = VLC_FALSE;
p_intf->pf_show_dialog = NULL;
* wxwindows.h: private wxWindows interface description
*****************************************************************************
* Copyright (C) 1999, 2000 VideoLAN
- * $Id: wxwindows.h,v 1.44 2003/07/17 18:58:23 gbazin Exp $
+ * $Id: wxwindows.h,v 1.45 2003/07/18 11:39:39 gbazin Exp $
*
* Authors: Gildas Bazin <gbazin@netcourrier.com>
*
/* Popup menu */
wxMenu *p_popup_menu;
- vlc_bool_t b_popup_change;
};
#endif /* !defined(MODULE_NAME_IS_skins) */
* events.c: Windows DirectX video output events handler
*****************************************************************************
* Copyright (C) 2001 VideoLAN
- * $Id: events.c,v 1.17 2003/05/26 19:26:53 gbazin Exp $
+ * $Id: events.c,v 1.18 2003/07/18 11:39:39 gbazin Exp $
*
* Authors: Gildas Bazin <gbazin@netcourrier.com>
*
}
else
{
- /* exit application */
- p_event->p_vout->p_vlc->b_die = VLC_TRUE;
+ /* close video window */
+ PostMessage( msg.hwnd, WM_CLOSE, 0, 0 );
}
break;
/* the user wants to close the window */
case WM_CLOSE:
- msg_Dbg( p_vout, "WinProc WM_CLOSE" );
- /* exit application */
- p_vout->p_vlc->b_die = VLC_TRUE;
+ {
+ playlist_t * p_playlist =
+ (playlist_t *)vlc_object_find( p_vout, VLC_OBJECT_PLAYLIST,
+ FIND_ANYWHERE );
+ if( p_playlist == NULL )
+ {
+ return;
+ }
+
+ playlist_Stop( p_playlist );
+ vlc_object_release( p_playlist );
return 0;
+ }
/* the window has been closed so shut down everything now */
case WM_DESTROY:
return DefWindowProc(hwnd, message, wParam, lParam);
}
-