#include "../../../share/vlc16x16.xpm"
#endif
+static int Interact ( intf_thread_t *, user_interaction_t *, vlc_bool_t );
+
/*****************************************************************************
* Local class declarations.
*****************************************************************************/
b_extra = VLC_FALSE;
// b_undock = VLC_FALSE;
+ /* Allow user interaction */
+ p_intf->p_sys->p_main_interface = this;
+ p_intf->pf_interact = ::Interact;
extra_window = NULL;
}
#if wxUSE_DRAG_AND_DROP
+
+/*****************************************************************************
+ * Interaction
+ *****************************************************************************/
+int Interface::Interact( user_interaction_t *p_interact, vlc_bool_t b_block )
+{
+ if( p_interact->i_type == INTERACT_FATAL )
+ {
+ fprintf( stderr, "Showing message -%s-\n", p_interact->psz_description);
+ wxFrame *p_message = new wxFrame( this, -1,
+ wxU( p_interact->psz_description ));
+ p_message->Show();
+ }
+ return VLC_SUCCESS;
+}
+
/*****************************************************************************
* Definition of DragAndDrop class.
*****************************************************************************/
SetIcon( wxIcon( vlc16x16_xpm ), tooltip );
}
#endif
+
+
+/**
+ * Interaction entry point
+ */
+int Interact( intf_thread_t *p_intf, user_interaction_t *p_interact,
+ vlc_bool_t b_block )
+{
+ fprintf( stderr,"Asking for interaction\n" );
+ return p_intf->p_sys->p_main_interface->Interact( p_interact, b_block );
+}
+
TEXTWIDTH, false ) ),
wxDefaultPosition, wxDefaultSize );
- address_txtctrl = new wxTextCtrl( this, -1, wxU(""), wxDefaultPosition,
- wxSize(200,25));
+ address_txtctrl = new wxTextCtrl( this, -1, wxT("") , wxDefaultPosition,
+ wxSize(200,25)) ;
address_sizer->Add( address_text, 0, wxALL, 5 );
address_sizer->Add( address_txtctrl, 0, wxALL, 5 );
address_sizer->Layout();
}
}
p_parent->SetStream( methods_array[i_method].psz_access ,
- (char *)address_txtctrl->GetValue().mb_str() );
+ address_txtctrl->GetValue().mb_str() );
/* Set the action for the muxer page */
((wizEncapPage*)GetNext())->SetAction( p_parent->GetAction() );
static void ShowDialog ( intf_thread_t *, int, int, intf_dialog_args_t * );
+
#if (wxCHECK_VERSION(2,5,0))
void *wxClassInfo_sm_classTable_BUGGY = 0;
#endif
p_intf->p_sys->pf_show_dialog = ShowDialog;
+
/* OK, initialization is over */
vlc_thread_ready( p_intf );
#include <wx/wizard.h>
#include <wx/taskbar.h>
#include "vlc_keys.h"
+#include "vlc_interaction.h"
#if (!wxCHECK_VERSION(2,5,0))
typedef long wxTreeItemIdValue;
class VideoWindow;
class WindowSettings;
+namespace wxvlc { class Interface;};
+
/*****************************************************************************
* intf_sys_t: description and status of wxwindows interface
*****************************************************************************/
int i_first_hotkey_event;
int i_hotkeys;
+ /* Main interface */
+ wxvlc::Interface *p_main_interface;
+
/* Embedded vout */
VideoWindow *p_video_window;
wxBoxSizer *p_video_sizer;
wxTimer m_controls_timer;
wxTimer m_slider_timer;
+ /* Interaction */
+ int Interact( user_interaction_t *, vlc_bool_t );
+
private:
void SetupHotkeys();
void CreateOurMenuBar();